aboutsummaryrefslogtreecommitdiffstats
path: root/executor/executor.cc
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2016-01-13 20:44:05 +0100
committerDmitry Vyukov <dvyukov@google.com>2016-01-13 20:44:05 +0100
commitd399ab9dc9ddf7417f2f91c70e6298348312fbab (patch)
tree17d592c379152d1642e1ed7e453abc1adaebd668 /executor/executor.cc
parent9e2ea41475b040a3d76578fffe20b98855b05417 (diff)
executor: don't create all threads when spot a root syscall
Diffstat (limited to 'executor/executor.cc')
-rw-r--r--executor/executor.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/executor/executor.cc b/executor/executor.cc
index 255712f5f..ab5c20d25 100644
--- a/executor/executor.cc
+++ b/executor/executor.cc
@@ -371,7 +371,7 @@ thread_t* schedule_call(int n, int call_index, int call_num, uint64_t num_args,
int i;
for (i = 0; i < kMaxThreads; i++) {
thread_t* th = &threads[i];
- if (!th->created)
+ if (!th->created && (!flag_drop_privs || root == th->root))
thread_create(th, i, false);
if (__atomic_load_n(&th->done, __ATOMIC_ACQUIRE)) {
if (!th->handled)