From 7624ddd6d82230be5d9df0f74b1b98b761eed677 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Fri, 14 Dec 2018 12:13:14 +0100 Subject: executor: move setrlimit from setup_control_pipes to bsd os_init This broke fuchsia build. We need setrlimit only for bsd. --- executor/executor.cc | 6 ------ executor/executor_bsd.h | 5 +++++ 2 files changed, 5 insertions(+), 6 deletions(-) (limited to 'executor') diff --git a/executor/executor.cc b/executor/executor.cc index d6e7b75b3..6569326d3 100644 --- a/executor/executor.cc +++ b/executor/executor.cc @@ -12,7 +12,6 @@ #include #include #include -#include #include #include @@ -423,11 +422,6 @@ int main(int argc, char** argv) void setup_control_pipes() { - // Makes sure the file descriptor limit is sufficient. - struct rlimit rlim; - rlim.rlim_cur = rlim.rlim_max = kMaxFd; - setrlimit(RLIMIT_NOFILE, &rlim); - if (dup2(0, kInPipeFd) < 0) fail("dup2(0, kInPipeFd) failed"); if (dup2(1, kOutPipeFd) < 0) diff --git a/executor/executor_bsd.h b/executor/executor_bsd.h index 8f364ca13..b6cf9a3ea 100644 --- a/executor/executor_bsd.h +++ b/executor/executor_bsd.h @@ -21,6 +21,11 @@ static void os_init(int argc, char** argv, void* data, size_t data_size) if (mmap(data, data_size, prot, MAP_ANON | MAP_PRIVATE | MAP_FIXED, -1, 0) != data) fail("mmap of data segment failed"); + + // Makes sure the file descriptor limit is sufficient to map control pipes. + struct rlimit rlim; + rlim.rlim_cur = rlim.rlim_max = kMaxFd; + setrlimit(RLIMIT_NOFILE, &rlim); } static long execute_syscall(const call_t* c, long a[kMaxArgs]) -- cgit mrf-deployment