From 148d8dd2f2ba2a6c27f5971b75a60da927ad9e3a Mon Sep 17 00:00:00 2001 From: Nick Kralevich Date: Fri, 18 Dec 2015 20:52:37 -0800 Subject: [PATCH] more O_CLOEXEC Change-Id: I330aef8d6f1fc35d6649995ef312954b84dff555 --- lmkd.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lmkd.c b/lmkd.c index 50bf6a4..aa3db8a 100644 --- a/lmkd.c +++ b/lmkd.c @@ -230,7 +230,7 @@ static int pid_remove(int pid) { } static void writefilestring(char *path, char *s) { - int fd = open(path, O_WRONLY); + int fd = open(path, O_WRONLY | O_CLOEXEC); int len = strlen(s); int ret; @@ -487,7 +487,7 @@ static int zoneinfo_parse(struct sysmeminfo *mip) { memset(mip, 0, sizeof(struct sysmeminfo)); - fd = open(ZONEINFO_PATH, O_RDONLY); + fd = open(ZONEINFO_PATH, O_RDONLY | O_CLOEXEC); if (fd == -1) { ALOGE("%s open: errno=%d", ZONEINFO_PATH, errno); return -1; @@ -518,7 +518,7 @@ static int proc_get_size(int pid) { ssize_t ret; snprintf(path, PATH_MAX, "/proc/%d/statm", pid); - fd = open(path, O_RDONLY); + fd = open(path, O_RDONLY | O_CLOEXEC); if (fd == -1) return -1; @@ -541,7 +541,7 @@ static char *proc_get_name(int pid) { ssize_t ret; snprintf(path, PATH_MAX, "/proc/%d/cmdline", pid); - fd = open(path, O_RDONLY); + fd = open(path, O_RDONLY | O_CLOEXEC); if (fd == -1) return NULL; ret = read_all(fd, line, sizeof(line) - 1); @@ -686,19 +686,19 @@ static int init_mp(char *levelstr, void *event_handler) struct epoll_event epev; int ret; - mpfd = open(MEMCG_SYSFS_PATH "memory.pressure_level", O_RDONLY); + mpfd = open(MEMCG_SYSFS_PATH "memory.pressure_level", O_RDONLY | O_CLOEXEC); if (mpfd < 0) { ALOGI("No kernel memory.pressure_level support (errno=%d)", errno); goto err_open_mpfd; } - evctlfd = open(MEMCG_SYSFS_PATH "cgroup.event_control", O_WRONLY); + evctlfd = open(MEMCG_SYSFS_PATH "cgroup.event_control", O_WRONLY | O_CLOEXEC); if (evctlfd < 0) { ALOGI("No kernel memory cgroup event control (errno=%d)", errno); goto err_open_evctlfd; } - evfd = eventfd(0, EFD_NONBLOCK); + evfd = eventfd(0, EFD_NONBLOCK | EFD_CLOEXEC); if (evfd < 0) { ALOGE("eventfd failed for level %s; errno=%d", levelstr, errno); goto err_eventfd;