From 6f2d7dc1d1feb62dffcb652e34a487f1a31928f7 Mon Sep 17 00:00:00 2001 From: James Lee <egypt@metasploit.com> Date: Tue, 28 Feb 2012 20:50:42 -0700 Subject: [PATCH] Add the usleep back in MM convinced me. --- c/meterpreter/source/common/arch/posix/scheduler.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/c/meterpreter/source/common/arch/posix/scheduler.c b/c/meterpreter/source/common/arch/posix/scheduler.c index f590793d..12e26dec 100644 --- a/c/meterpreter/source/common/arch/posix/scheduler.c +++ b/c/meterpreter/source/common/arch/posix/scheduler.c @@ -243,6 +243,10 @@ scheduler_run(THREAD *thread) // &scheduler_cond, LIST_EMPTY(&WEHead), polltable == NULL); pthread_cond_wait(&scheduler_cond, &scheduler_mutex); + + // pthread_cond_wait still chews CPU in some cases, usleep to yield + // processor so we don't just spin. + usleep(1000); } LIST_FOREACH(current, &WEHead, link) {