lmkd: mlock all memory
Use mlockall(MCL_FUTURE) to lock all lmkd pages in memory. This avoids lmkd thrashing when the system is low on memory. As a side effect, it will also keep the .text sections of liblog, libm, libc, and libprocessgroup in memory at all times. Bug: 16236289 Change-Id: Idd70557efa4b1e14bc86f14220672a30f6c956e3
This commit is contained in:
parent
fbde2c9830
commit
c405900f87
2
lmkd.c
2
lmkd.c
|
|
@ -26,6 +26,7 @@
|
||||||
#include <sys/cdefs.h>
|
#include <sys/cdefs.h>
|
||||||
#include <sys/epoll.h>
|
#include <sys/epoll.h>
|
||||||
#include <sys/eventfd.h>
|
#include <sys/eventfd.h>
|
||||||
|
#include <sys/mman.h>
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
|
@ -747,6 +748,7 @@ static void mainloop(void) {
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(int argc __unused, char **argv __unused) {
|
int main(int argc __unused, char **argv __unused) {
|
||||||
|
mlockall(MCL_FUTURE);
|
||||||
if (!init())
|
if (!init())
|
||||||
mainloop();
|
mainloop();
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue