From fcf1b2bcce9fd9d1997745d35c6ac36ddd2448a9 Mon Sep 17 00:00:00 2001 From: Nick Kralevich Date: Sat, 15 Dec 2018 11:59:30 -0800 Subject: use epoll_create1 epoll_create leaks file descriptors. Use epoll_create1(EPOLL_CLOEXEC) instead. Bug: 120983106 Test: compiles and boots Change-Id: I59cebb997de9d8b99804cc45a962751976d07ce6 --- libs/binder/tests/binderLibTest.cpp | 2 +- libs/vr/libbufferhubqueue/include/private/dvr/epoll_file_descriptor.h | 2 +- libs/vr/libvrflinger/epoll_event_dispatcher.cpp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to 'libs') diff --git a/libs/binder/tests/binderLibTest.cpp b/libs/binder/tests/binderLibTest.cpp index 73c2eba1d5..2dd86ba7e1 100644 --- a/libs/binder/tests/binderLibTest.cpp +++ b/libs/binder/tests/binderLibTest.cpp @@ -1295,7 +1295,7 @@ int run_server(int index, int readypipefd, bool usePoll) } IPCThreadState::self()->flushCommands(); // flush BC_ENTER_LOOPER - epoll_fd = epoll_create1(0); + epoll_fd = epoll_create1(EPOLL_CLOEXEC); if (epoll_fd == -1) { return 1; } diff --git a/libs/vr/libbufferhubqueue/include/private/dvr/epoll_file_descriptor.h b/libs/vr/libbufferhubqueue/include/private/dvr/epoll_file_descriptor.h index 6e303a5e5a..2f14f7cd91 100644 --- a/libs/vr/libbufferhubqueue/include/private/dvr/epoll_file_descriptor.h +++ b/libs/vr/libbufferhubqueue/include/private/dvr/epoll_file_descriptor.h @@ -28,7 +28,7 @@ class EpollFileDescriptor { return -EALREADY; } - fd_.reset(epoll_create(64)); + fd_.reset(epoll_create1(EPOLL_CLOEXEC)); if (fd_.get() < 0) return -errno; diff --git a/libs/vr/libvrflinger/epoll_event_dispatcher.cpp b/libs/vr/libvrflinger/epoll_event_dispatcher.cpp index 962c7459fd..1cf5f17f62 100644 --- a/libs/vr/libvrflinger/epoll_event_dispatcher.cpp +++ b/libs/vr/libvrflinger/epoll_event_dispatcher.cpp @@ -11,7 +11,7 @@ namespace android { namespace dvr { EpollEventDispatcher::EpollEventDispatcher() { - epoll_fd_.Reset(epoll_create(64)); + epoll_fd_.Reset(epoll_create1(EPOLL_CLOEXEC)); if (!epoll_fd_) { ALOGE("Failed to create epoll fd: %s", strerror(errno)); return; -- cgit v1.2.3-59-g8ed1b