[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 0/2] virtio: revert virtio_queue_set_notificatio
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCH 0/2] virtio: revert virtio_queue_set_notification() nesting |
Date: |
Mon, 16 Jan 2017 10:46:13 +0000 |
User-agent: |
Mutt/1.7.1 (2016-10-04) |
On Fri, Jan 13, 2017 at 09:15:49AM -0600, Doug Goldstein wrote:
> On 1/13/17 6:02 AM, Stefan Hajnoczi wrote:
> > On Thu, Jan 12, 2017 at 10:57:53AM -0600, Doug Goldstein wrote:
> >> On 1/12/17 5:46 AM, Stefan Hajnoczi wrote:
> >>> The virtio_queue_set_notification() nesting introduced for AioContext
> >>> polling
> >>> raised an assertion with virtio-net (even in non-polling mode).
> >>> Converting
> >>> virtio-net and virtio-crypto to use virtio_queue_set_notification() in a
> >>> nesting fashion would be invasive and isn't worth it.
> >>>
> >>> Patch 1 contains the revert to resolve the bug that Doug noticed.
> >>>
> >>> Patch 2 is a less efficient but safe alternative.
> >>>
> >>> Stefan Hajnoczi (2):
> >>> Revert "virtio: turn vq->notification into a nested counter"
> >>> virtio: disable notifications again after poll succeeded
> >>>
> >>> hw/virtio/virtio.c | 21 +++++++++------------
> >>> 1 file changed, 9 insertions(+), 12 deletions(-)
> >>>
> >>
> >> So I just gave this series a whirl and it fixes the assert but causes
> >> another issue for me. While iPXE is getting a DHCP address the screen
> >> immediately flashes over to the UEFI shell. Its like a timeout is
> >> getting hit and just dropping me to the shell.
> >
> > Sounds like an separate problem.
> >
> > Stefan
> >
>
> Is there any debug output that I can provide to help troubleshoot it?
> I've built 23425cc and UEFI via OVMF is able to get an IP address via
> DHCP inside of iPXE. I've also taken master and only applied the first
> patch in this series (the revert) and it too works. Its only when I add
> the 2nd patch into the mix or don't revert out the "virtio: turn
> vq->notification into a nested counter" patch that it fails.
The code in Patch 2 should not be executed in your QEMU configuration,
so I wonder how Patch 2 can cause the DHCP failure.
Please verify as follows:
$ gdb --args path/to/qemu-system-x86_64 ...
(gdb) handle SIGUSR1 noprint nostop pass
(gdb) handle SIGPIPE noprint nostop pass
(gdb) b virtio_queue_host_notifier_aio_poll_begin
(gdb) r
I predict the breakpoint will not be hit.
Stefan
signature.asc
Description: PGP signature
Re: [Qemu-devel] [PATCH 0/2] virtio: revert virtio_queue_set_notification() nesting, Richard Henderson, 2017/01/13
Re: [Qemu-devel] [PATCH 0/2] virtio: revert virtio_queue_set_notification() nesting, Laszlo Ersek, 2017/01/16