From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Kdqdc-0002p5-5I for qemu-devel@nongnu.org; Thu, 11 Sep 2008 14:11:28 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Kdqda-0002oE-K7 for qemu-devel@nongnu.org; Thu, 11 Sep 2008 14:11:27 -0400 Received: from [199.232.76.173] (port=48144 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Kdqda-0002o3-Gq for qemu-devel@nongnu.org; Thu, 11 Sep 2008 14:11:26 -0400 Received: from yw-out-1718.google.com ([74.125.46.155]:48258) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Kdqda-0001SQ-Qv for qemu-devel@nongnu.org; Thu, 11 Sep 2008 14:11:26 -0400 Received: by yw-out-1718.google.com with SMTP id 6so165000ywa.82 for ; Thu, 11 Sep 2008 11:11:25 -0700 (PDT) Message-ID: <48C95F19.10701@codemonkey.ws> Date: Thu, 11 Sep 2008 13:10:33 -0500 From: Anthony Liguori MIME-Version: 1.0 Subject: Re: [Qemu-devel] [5187] Use signalfd() to work around signal/select race References: <1221149035.4145.57.camel@frecb07144> In-Reply-To: <1221149035.4145.57.camel@frecb07144> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Laurent Vivier Cc: qemu-devel@nongnu.org Laurent Vivier wrote: > Le mercredi 10 septembre 2008 à 15:45 +0000, Anthony Liguori a écrit : > >> Revision: 5187 >> http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=5187 >> Author: aliguori >> Date: 2008-09-10 15:45:19 +0000 (Wed, 10 Sep 2008) >> >> Log Message: >> ----------- >> Use signalfd() to work around signal/select race >> > > This commit breaks qemu-nbd: > > # ./qemu-nbd --port 1024 --persistent ../disk.qcow2 > generates "Bus error" when I connect the client: > # ./x86_64-softmmu/qemu-system-x86_64 -hda ../etch64.qcow2 -hdb > nbd:localhost:1024 > > * gdb output: > > Program received signal SIGBUS, Bus error. > [Switching to Thread 0x7f3accdf76e0 (LWP 13146)] > qemu_aio_wait () at block-raw-posix.c:541 > 541 FD_SET(aio_sig_fd, &rdfds); > (gdb) bt > #0 qemu_aio_wait () at block-raw-posix.c:541 > #1 0x0000000000406245 in bdrv_read_em (bs=0x0, > sector_num=140736764918416, > buf=0x8000000000000000
, > nb_sectors=0) at block.c:1289 > #2 0x000000000040437a in nbd_trip (bs=0x622010, csock=8, > size=6442450944, > dev_offset=0, offset=0x7fffd4e13c78, readonly=false, > data=0x7f3acccd5200 "�H\220м", data_size=1048576) at nbd.c:573 > #3 0x0000000000402d11 in main (argc=1, argv=0x1) at qemu-nbd.c:444 > Should be fixed now. But the following is broken: qemu-system-x86_64 -hda nbd:localhost:1024 That was broken before the signalfd stuff. My guest hangs after loading grub. You're command line probably suggests you knew that. Do you know why this is? Regards, Anthony Liguori > Laurent >