qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Laurent Vivier <Laurent.Vivier@bull.net>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [5187] Use signalfd() to work around signal/select race
Date: Thu, 11 Sep 2008 22:23:15 +0200	[thread overview]
Message-ID: <1221164595.4124.16.camel@frecb07144> (raw)
In-Reply-To: <48C95F19.10701@codemonkey.ws>

Le jeudi 11 septembre 2008 à 13:10 -0500, Anthony Liguori a écrit :
> 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 <Address 0x8000000000000000 out of bounds>, 
> >     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:

Yes

> 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?

It doesn't hang: it's just incredibly slow. Try "-socket /tmp/foo"
instead of "-port 1024" (you can add "--verbose" to see it is alive...)
or move the qemu-nbd to another server (with gigabit it's nice).

Laurent
-- 
----------------- Laurent.Vivier@bull.net  ------------------
  "La perfection est atteinte non quand il ne reste rien à
ajouter mais quand il ne reste rien à enlever." Saint Exupéry

      reply	other threads:[~2008-09-11 20:23 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-10 15:45 [Qemu-devel] [5187] Use signalfd() to work around signal/select race Anthony Liguori
2008-09-10 16:55 ` Blue Swirl
     [not found]   ` <4246B478-DB41-4AF6-962A-2B2ECD1B371C@hotmail.com>
2008-09-10 17:19     ` C.W. Betts
2008-09-10 18:18   ` Anthony Liguori
2008-09-11 16:03 ` Laurent Vivier
2008-09-11 16:28   ` Anthony Liguori
2008-09-11 18:10   ` Anthony Liguori
2008-09-11 20:23     ` Laurent Vivier [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1221164595.4124.16.camel@frecb07144 \
    --to=laurent.vivier@bull.net \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).