[{"id":1763345,"web_url":"http://patchwork.ozlabs.org/comment/1763345/","msgid":"<9daeb0c9-b1b3-66d4-2b0c-77affb449efd@gmx.com>","list_archive_url":null,"date":"2017-09-05T12:57:18","subject":"Re: [Qemu-devel] [Qemu-trivial] [PATCH] util/qemu-thread-posix.c:\n\tReplace OS ifdefs with CONFIG_HAVE_SEM_TIMEDWAIT","submitter":{"id":11273,"url":"http://patchwork.ozlabs.org/api/people/11273/","name":"Kamil Rytarowski","email":"n54@gmx.com"},"content":"On 05.09.2017 14:19, Peter Maydell wrote:\n> In qemu-thread-posix.c we have two implementations of the\n> various qemu_sem_* functions, one of which uses native POSIX\n> sem_* and the other of which emulates them with pthread conditions.\n> This is necessary because not all our host OSes support\n> sem_timedwait().\n> \n> Instead of a hard-coded list of OSes which don't implement\n> sem_timedwait(), which gets out of date, make configure\n> test for the presence of the function and set a new\n> CONFIG_HAVE_SEM_TIMEDWAIT appropriately.\n> \n> In particular, newer NetBSDs have sem_timedwait(), so this\n> commit will switch them over to using it. OSX still does\n> not have an implementation.\n> \n\nThe NetBSD part looks fine. It builds fine on NetBSD/amd64 8.99.2. All\ntests pass (with disabled PaX MPROTECT).\n\n> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>\n\nReviewed-by: Kamil Rytarowski <n54@gmx.com>\n\n> ---\n> It would be nice to gradually reduce the number of places\n> we do per-OS ifdeffery in favour of checking for the specific\n> feature we care about in each case...\n> Tested on Linux, NetBSD, OSX.\n> \n>  configure                   | 15 +++++++++++++++\n>  include/qemu/thread-posix.h |  2 +-\n>  util/qemu-thread-posix.c    | 10 +++++-----\n>  3 files changed, 21 insertions(+), 6 deletions(-)\n> \n> diff --git a/configure b/configure\n> index fb7e34a..aa8d4d9 100755\n> --- a/configure\n> +++ b/configure\n> @@ -4448,6 +4448,18 @@ if compile_prog \"\" \"\" ; then\n>  fi\n>  \n>  ##########################################\n> +# check if we have sem_timedwait\n> +\n> +sem_timedwait=no\n> +cat > $TMPC << EOF\n> +#include <semaphore.h>\n> +int main(void) { return sem_timedwait(0, 0); }\n> +EOF\n> +if compile_prog \"\" \"\" ; then\n> +    sem_timedwait=yes\n> +fi\n> +\n> +##########################################\n>  # check if trace backend exists\n>  \n>  $python \"$source_path/scripts/tracetool.py\" \"--backends=$trace_backends\" --check-backends  > /dev/null 2> /dev/null\n> @@ -5680,6 +5692,9 @@ fi\n>  if test \"$inotify1\" = \"yes\" ; then\n>    echo \"CONFIG_INOTIFY1=y\" >> $config_host_mak\n>  fi\n> +if test \"$sem_timedwait\" = \"yes\" ; then\n> +  echo \"CONFIG_SEM_TIMEDWAIT=y\" >> $config_host_mak\n> +fi\n>  if test \"$byteswap_h\" = \"yes\" ; then\n>    echo \"CONFIG_BYTESWAP_H=y\" >> $config_host_mak\n>  fi\n> diff --git a/include/qemu/thread-posix.h b/include/qemu/thread-posix.h\n> index e5e3a0f..f4296d3 100644\n> --- a/include/qemu/thread-posix.h\n> +++ b/include/qemu/thread-posix.h\n> @@ -21,7 +21,7 @@ struct QemuCond {\n>  };\n>  \n>  struct QemuSemaphore {\n> -#if defined(__APPLE__) || defined(__NetBSD__)\n> +#ifndef CONFIG_SEM_TIMEDWAIT\n>      pthread_mutex_t lock;\n>      pthread_cond_t cond;\n>      unsigned int count;\n> diff --git a/util/qemu-thread-posix.c b/util/qemu-thread-posix.c\n> index 4e95d27..7306475 100644\n> --- a/util/qemu-thread-posix.c\n> +++ b/util/qemu-thread-posix.c\n> @@ -168,7 +168,7 @@ void qemu_sem_init(QemuSemaphore *sem, int init)\n>  {\n>      int rc;\n>  \n> -#if defined(__APPLE__) || defined(__NetBSD__)\n> +#ifndef CONFIG_SEM_TIMEDWAIT\n>      rc = pthread_mutex_init(&sem->lock, NULL);\n>      if (rc != 0) {\n>          error_exit(rc, __func__);\n> @@ -196,7 +196,7 @@ void qemu_sem_destroy(QemuSemaphore *sem)\n>  \n>      assert(sem->initialized);\n>      sem->initialized = false;\n> -#if defined(__APPLE__) || defined(__NetBSD__)\n> +#ifndef CONFIG_SEM_TIMEDWAIT\n>      rc = pthread_cond_destroy(&sem->cond);\n>      if (rc < 0) {\n>          error_exit(rc, __func__);\n> @@ -218,7 +218,7 @@ void qemu_sem_post(QemuSemaphore *sem)\n>      int rc;\n>  \n>      assert(sem->initialized);\n> -#if defined(__APPLE__) || defined(__NetBSD__)\n> +#ifndef CONFIG_SEM_TIMEDWAIT\n>      pthread_mutex_lock(&sem->lock);\n>      if (sem->count == UINT_MAX) {\n>          rc = EINVAL;\n> @@ -256,7 +256,7 @@ int qemu_sem_timedwait(QemuSemaphore *sem, int ms)\n>      struct timespec ts;\n>  \n>      assert(sem->initialized);\n> -#if defined(__APPLE__) || defined(__NetBSD__)\n> +#ifndef CONFIG_SEM_TIMEDWAIT\n>      rc = 0;\n>      compute_abs_deadline(&ts, ms);\n>      pthread_mutex_lock(&sem->lock);\n> @@ -304,7 +304,7 @@ void qemu_sem_wait(QemuSemaphore *sem)\n>      int rc;\n>  \n>      assert(sem->initialized);\n> -#if defined(__APPLE__) || defined(__NetBSD__)\n> +#ifndef CONFIG_SEM_TIMEDWAIT\n>      pthread_mutex_lock(&sem->lock);\n>      while (sem->count == 0) {\n>          rc = pthread_cond_wait(&sem->cond, &sem->lock);\n>","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=208.118.235.17; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","Received":["from lists.gnu.org (lists.gnu.org [208.118.235.17])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xmn8X03fJz9sPk\n\tfor <incoming@patchwork.ozlabs.org>;\n\tTue,  5 Sep 2017 23:08:28 +1000 (AEST)","from localhost ([::1]:58831 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dpDab-0003YW-BI\n\tfor incoming@patchwork.ozlabs.org; Tue, 05 Sep 2017 09:08:25 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:40999)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from <n54@gmx.com>)\n\tid 1dpDZv-0003Qk-NO\n\tfor qemu-devel@nongnu.org; Tue, 05 Sep 2017 09:07:53 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <n54@gmx.com>) id 1dpDZq-00040x-PU\n\tfor qemu-devel@nongnu.org; Tue, 05 Sep 2017 09:07:43 -0400","from mout.gmx.net ([212.227.15.15]:60419)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16)\n\t(Exim 4.71) (envelope-from <n54@gmx.com>)\n\tid 1dpDZd-0003tu-3A; Tue, 05 Sep 2017 09:07:25 -0400","from [192.168.1.4] ([185.58.161.191]) by mail.gmx.com (mrgmx001\n\t[212.227.17.184]) with ESMTPSA (Nemesis) id 0MOw4N-1dsGVx1kMJ-006NgH; \n\tTue, 05 Sep 2017 15:07:22 +0200"],"To":"Peter Maydell <peter.maydell@linaro.org>, qemu-devel@nongnu.org,\n\tqemu-trivial@nongnu.org","References":"<1504613972-15847-1-git-send-email-peter.maydell@linaro.org>","From":"Kamil Rytarowski <n54@gmx.com>","Message-ID":"<9daeb0c9-b1b3-66d4-2b0c-77affb449efd@gmx.com>","Date":"Tue, 5 Sep 2017 14:57:18 +0200","User-Agent":"Mozilla/5.0 (X11; NetBSD amd64; rv:52.0) Gecko/20100101\n\tThunderbird/52.1.0","MIME-Version":"1.0","In-Reply-To":"<1504613972-15847-1-git-send-email-peter.maydell@linaro.org>","Content-Type":"multipart/signed; micalg=pgp-sha256;\n\tprotocol=\"application/pgp-signature\";\n\tboundary=\"iTaeI2rF1bX5llqKJ40IrkEEUW83P4TL0\"","X-Provags-ID":"V03:K0:zmWdR9866NfBPPGvkimyb96wV0yBuiAnhwyJAA/rTryN/mUR7hE\n\t8bbbK2fB59nA51aa+brJZ5zEGfePAntYdkWvpNpht9NR4h/g8R6myJj2VA4n0qZbAoohdad\n\tArwHvRhtvvf18wreAjAoLkRYNQPSbOVmXFJY+0Ko7gbUFN8Un29fX/dOLsPWoSa5fTUqKYp\n\tPQ1ZcHfR0YDIb2ocx6uJQ==","X-UI-Out-Filterresults":"notjunk:1; V01:K0:JBarAnTt99I=:y++Ams5lIZm+9FZ8Z2QaW3\n\tIxET2R9Frvl1hLk3Cgrqw+5yICuUan5kY19ERSsBpD7ZT/athXEa3zMBJ5knG5KSADqektzhc\n\t2RaXWfx21J9OML+QH1OWxP9FPF7LyywV4ObJES7DVLWCArcnfDxr5zhLPlGtcCZlJXVIPjACu\n\tPkdeGo0+elIGaHs8xsuKN+4AoDZKyHELt8xhBxBxYjDTCciN3bdk4W8p4JXXw0GxOI4DjZGt1\n\tOWhyHKfkfU6Nz46lzgpbjB3fvLQTYnWtROvAXo64+AWtt0m3DiDZzNUoS2BdWHLZTjJjiLC1A\n\tdQBcMWi0IJ67pZYI/FlcOF2iYNsJziES3vt5VmCBwP2UdUcDAmclHwaiz7UiGx+YIERow4QWr\n\tMvg5wC82IZov9Bu0uXVedMxj9Bw3Gc8R+P6E0bvdT6GPTOxWy8sOr9pc7a/0rUJTo7IxjOGOG\n\tNGKXFhOdkM8S9I9ifn3UoeV80vKWhM8URIPF1Qsy9BxcHG28pLKWbx9ISLcRl8pBbKkeY17kk\n\td2krJVe78RgEsqPUYhqGMwuPJI6+4NM+FGaTEwZQUsGT/QyR9s7uC6B3WzHiRSg3jxLqt9ooC\n\tleKzvcnuNm1RHhTXxUh0C5UNAIThO/tWmUu6RO2690HI/vCwXyRz9ngz4Tqs7Y/5b14ZsTYR3\n\tX0ytW9V7Noad2KmxVJr9+gniIFQ0HW3hoNOuzzM5LNBNKHnnw9GfNYylhkZGdvv7g+hdLc06T\n\tGXz4G5zgqef5923wNJEDQ/bI8CT8PDlc0yzETKWX5IEBRSfcch5Vpdche3X+gBlv94Qj44vfm\n\tDwkR+IfyCyBNYMgbU0fgG1KFy//tQ==","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"212.227.15.15","X-Content-Filtered-By":"Mailman/MimeDel 2.1.21","Subject":"Re: [Qemu-devel] [Qemu-trivial] [PATCH] util/qemu-thread-posix.c:\n\tReplace OS ifdefs with CONFIG_HAVE_SEM_TIMEDWAIT","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"patches@linaro.org","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1763389,"web_url":"http://patchwork.ozlabs.org/comment/1763389/","msgid":"<f1f3dc26-8499-02ba-9dfc-a2e96e766b79@redhat.com>","list_archive_url":null,"date":"2017-09-05T14:11:53","subject":"Re: [Qemu-devel] [PATCH] util/qemu-thread-posix.c: Replace OS\n\tifdefs with CONFIG_HAVE_SEM_TIMEDWAIT","submitter":{"id":6591,"url":"http://patchwork.ozlabs.org/api/people/6591/","name":"Eric Blake","email":"eblake@redhat.com"},"content":"On 09/05/2017 07:19 AM, Peter Maydell wrote:\n> In qemu-thread-posix.c we have two implementations of the\n> various qemu_sem_* functions, one of which uses native POSIX\n> sem_* and the other of which emulates them with pthread conditions.\n> This is necessary because not all our host OSes support\n> sem_timedwait().\n> \n> Instead of a hard-coded list of OSes which don't implement\n> sem_timedwait(), which gets out of date, make configure\n> test for the presence of the function and set a new\n> CONFIG_HAVE_SEM_TIMEDWAIT appropriately.\n> \n> In particular, newer NetBSDs have sem_timedwait(), so this\n> commit will switch them over to using it. OSX still does\n> not have an implementation.\n> \n> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>\n> ---\n> It would be nice to gradually reduce the number of places\n> we do per-OS ifdeffery in favour of checking for the specific\n> feature we care about in each case...\n\nYes, that's always been autoconf's philosophy: feature tests trump\nplatform tests every time, because platforms can add features over time,\nand because an ifdef on a single feature test is easier to read than a\nlist of platform names.\n\n> Tested on Linux, NetBSD, OSX.\n> \n\nReviewed-by: Eric Blake <eblake@redhat.com>","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ext-mx06.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com","ext-mx06.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=eblake@redhat.com"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xmpZV5Xyyz9t2R\n\tfor <incoming@patchwork.ozlabs.org>;\n\tWed,  6 Sep 2017 00:12:33 +1000 (AEST)","from localhost ([::1]:59232 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dpEac-0005Xd-Tw\n\tfor incoming@patchwork.ozlabs.org; Tue, 05 Sep 2017 10:12:30 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:42740)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <eblake@redhat.com>) id 1dpEaE-0005X2-La\n\tfor qemu-devel@nongnu.org; Tue, 05 Sep 2017 10:12:14 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <eblake@redhat.com>) id 1dpEa5-00034x-6U\n\tfor qemu-devel@nongnu.org; Tue, 05 Sep 2017 10:12:06 -0400","from mx1.redhat.com ([209.132.183.28]:52516)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <eblake@redhat.com>)\n\tid 1dpEa4-00033e-TF; Tue, 05 Sep 2017 10:11:57 -0400","from smtp.corp.redhat.com\n\t(int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id A311644BF4;\n\tTue,  5 Sep 2017 14:11:55 +0000 (UTC)","from [10.10.120.228] (ovpn-120-228.rdu2.redhat.com [10.10.120.228])\n\tby smtp.corp.redhat.com (Postfix) with ESMTP id B569D675C0;\n\tTue,  5 Sep 2017 14:11:54 +0000 (UTC)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mx1.redhat.com A311644BF4","To":"Peter Maydell <peter.maydell@linaro.org>, qemu-devel@nongnu.org,\n\tqemu-trivial@nongnu.org","References":"<1504613972-15847-1-git-send-email-peter.maydell@linaro.org>","From":"Eric Blake <eblake@redhat.com>","Openpgp":"url=http://people.redhat.com/eblake/eblake.gpg","Organization":"Red Hat, Inc.","Message-ID":"<f1f3dc26-8499-02ba-9dfc-a2e96e766b79@redhat.com>","Date":"Tue, 5 Sep 2017 09:11:53 -0500","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.3.0","MIME-Version":"1.0","In-Reply-To":"<1504613972-15847-1-git-send-email-peter.maydell@linaro.org>","Content-Type":"multipart/signed; micalg=pgp-sha256;\n\tprotocol=\"application/pgp-signature\";\n\tboundary=\"bJOmNbG3DJNkxbMDHbKugOLHhIM41Gw89\"","X-Scanned-By":"MIMEDefang 2.79 on 10.5.11.12","X-Greylist":"Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.30]);\n\tTue, 05 Sep 2017 14:11:55 +0000 (UTC)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"209.132.183.28","X-Content-Filtered-By":"Mailman/MimeDel 2.1.21","Subject":"Re: [Qemu-devel] [PATCH] util/qemu-thread-posix.c: Replace OS\n\tifdefs with CONFIG_HAVE_SEM_TIMEDWAIT","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"patches@linaro.org","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}},{"id":1768402,"web_url":"http://patchwork.ozlabs.org/comment/1768402/","msgid":"<e44bc9c8-abc8-44d4-54ef-6083aa833fd9@msgid.tls.msk.ru>","list_archive_url":null,"date":"2017-09-14T07:53:03","subject":"Re: [Qemu-devel] [PATCH] util/qemu-thread-posix.c: Replace OS\n\tifdefs with CONFIG_HAVE_SEM_TIMEDWAIT","submitter":{"id":183,"url":"http://patchwork.ozlabs.org/api/people/183/","name":"Michael Tokarev","email":"mjt@tls.msk.ru"},"content":"05.09.2017 15:19, Peter Maydell wrote:\n> In qemu-thread-posix.c we have two implementations of the\n> various qemu_sem_* functions, one of which uses native POSIX\n> sem_* and the other of which emulates them with pthread conditions.\n> This is necessary because not all our host OSes support\n> sem_timedwait().\n..\n\nApplied to -trivial, thanks!\n\n/mjt","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xtB4m1jFGz9s72\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 14 Sep 2017 18:08:56 +1000 (AEST)","from localhost ([::1]:46275 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dsPCg-0006yD-65\n\tfor incoming@patchwork.ozlabs.org; Thu, 14 Sep 2017 04:08:54 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:53281)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <mjt@tls.msk.ru>) id 1dsOxR-0008VG-QT\n\tfor qemu-devel@nongnu.org; Thu, 14 Sep 2017 03:53:10 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <mjt@tls.msk.ru>) id 1dsOxM-0001Sm-Fx\n\tfor qemu-devel@nongnu.org; Thu, 14 Sep 2017 03:53:09 -0400","from isrv.corpit.ru ([86.62.121.231]:54495)\n\tby eggs.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <mjt@tls.msk.ru>)\n\tid 1dsOxM-0001RM-88; Thu, 14 Sep 2017 03:53:04 -0400","from tsrv.corpit.ru (tsrv.tls.msk.ru [192.168.177.2])\n\tby isrv.corpit.ru (Postfix) with ESMTP id 7D09E412D3;\n\tThu, 14 Sep 2017 10:53:03 +0300 (MSK)","from [192.168.177.99] (mjt.vpn.tls.msk.ru [192.168.177.99])\n\tby tsrv.corpit.ru (Postfix) with ESMTP id 5B9915B9;\n\tThu, 14 Sep 2017 10:53:01 +0300 (MSK)"],"To":"Peter Maydell <peter.maydell@linaro.org>, qemu-devel@nongnu.org,\n\tqemu-trivial@nongnu.org","References":"<1504613972-15847-1-git-send-email-peter.maydell@linaro.org>","From":"Michael Tokarev <mjt@tls.msk.ru>","Message-ID":"<e44bc9c8-abc8-44d4-54ef-6083aa833fd9@msgid.tls.msk.ru>","Date":"Thu, 14 Sep 2017 10:53:03 +0300","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101\n\tThunderbird/52.2.1","MIME-Version":"1.0","In-Reply-To":"<1504613972-15847-1-git-send-email-peter.maydell@linaro.org>","Content-Type":"text/plain; charset=utf-8","Content-Language":"en-US","Content-Transfer-Encoding":"7bit","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"86.62.121.231","Subject":"Re: [Qemu-devel] [PATCH] util/qemu-thread-posix.c: Replace OS\n\tifdefs with CONFIG_HAVE_SEM_TIMEDWAIT","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"patches@linaro.org","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"}}]