From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:42326) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TQdXu-0002ZW-Sy for qemu-devel@nongnu.org; Tue, 23 Oct 2012 08:25:23 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TQdXo-0007cO-Sx for qemu-devel@nongnu.org; Tue, 23 Oct 2012 08:25:22 -0400 Received: from mx1.redhat.com ([209.132.183.28]:24933) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TQdXo-0007c3-JN for qemu-devel@nongnu.org; Tue, 23 Oct 2012 08:25:16 -0400 Message-ID: <508686C8.3060609@redhat.com> Date: Tue, 23 Oct 2012 14:00:08 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: <1350897839-29593-1-git-send-email-pingfank@linux.vnet.ibm.com> <1350897839-29593-9-git-send-email-pingfank@linux.vnet.ibm.com> <5085122F.1040106@siemens.com> <508683FB.5050401@redhat.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [patch v4 08/16] QemuThread: make QemuThread as tls to store extra info List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: Liu Ping Fan , Jan Kiszka , Marcelo Tosatti , "qemu-devel@nongnu.org" , Avi Kivity , Anthony Liguori , Stefan Hajnoczi Il 23/10/2012 13:50, Peter Maydell ha scritto: > On 23 October 2012 12:48, Paolo Bonzini wrote: >> Il 22/10/2012 19:13, Peter Maydell ha scritto: >>>>> Can't we enhance qemu-tls.h to work via pthread_setspecific in case >>>>> __thread is not working and use that abstraction (DECLARE/DEFINE_TLS) >>>>> directly? >>> Agreed. (There were prototype patches floating around for Win32 >>> at least). The only reason qemu-tls.h has the dummy not-actually-tls >>> code for non-linux is that IIRC we wanted to get the linux bits >>> in quickly before a release and we never got round to going back >>> and doing it properly for the other targets. >> >> Which will be "never" for OpenBSD. It just doesn't have enough support. >> >> Thread-wise OpenBSD is 100% crap, and we should stop supporting it IMHO >> until they finish their "new" thread library that's been in the works >> for 10 years or so. FreeBSD is totally ok. > > It doesn't support any kind of TLS? Wow. It does support pthread_get/setspecific, but it didn't support something else so the qemu-tls.h variant that used pthread_get/setspecific didn't work either. And it doesn't support sigaltstack in threads, so it's the only platform where the gthread-based coroutines are used. Those are buggy because the coroutines tend to get random signal masks. Paolo