From: Julian Seward Date: Wed, 4 Sep 2013 07:31:10 +0000 (+0000) Subject: PRE(workq_ops): handle KI_WQOPS_QUEUE_REQTHREADS without complaining. X-Git-Tag: svn/VALGRIND_3_9_0~161 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1e4c2d926b83e2578724957e4157e9008d0ad24a;p=thirdparty%2Fvalgrind.git PRE(workq_ops): handle KI_WQOPS_QUEUE_REQTHREADS without complaining. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13530 --- diff --git a/coregrind/m_syswrap/syswrap-darwin.c b/coregrind/m_syswrap/syswrap-darwin.c index 4f0ce67954..cbe9fbdd05 100644 --- a/coregrind/m_syswrap/syswrap-darwin.c +++ b/coregrind/m_syswrap/syswrap-darwin.c @@ -1517,8 +1517,13 @@ PRE(workq_ops) // GrP fixme may block? break; case VKI_WQOPS_QUEUE_NEWSPISUPP: - break; // JRS don't think we need to do anything here - + // JRS don't think we need to do anything here -- this just checks + // whether some newer functionality is supported + break; + case VKI_WQOPS_QUEUE_REQTHREADS: + // JRS uh, looks like it queues up a bunch of threads, or some such? + *flags |= SfMayBlock; // the kernel sources take a spinlock, so play safe + break; case VKI_WQOPS_THREAD_RETURN: { // The interesting case. The kernel will do one of two things: // 1. Return normally. We continue; libc proceeds to stop the thread. @@ -1535,7 +1540,6 @@ PRE(workq_ops) *flags |= SfMayBlock; // GrP fixme true? break; } - default: VG_(printf)("UNKNOWN workq_ops option %ld\n", ARG1); break;