qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Weird iscsi/fd-event issue since recent merge of event


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] Weird iscsi/fd-event issue since recent merge of event system changes
Date: Mon, 21 May 2012 14:20:55 +0100

On Mon, May 21, 2012 at 12:00 PM, ronnie sahlberg
<address@hidden> wrote:
> Yes, I use IDE since I boot from this LUN.
>
>
> I just managed to track it down to the IDE changes.
>
> It looks like basically this change triggered it :
>
> commit bef0fd5958120542f126f2dedbfce65d8839a94d
> Author: Stefan Hajnoczi <address@hidden>
> Date:   Thu Mar 29 10:31:30 2012 +0100
>    ide: convert ide_sector_read() to asynchronous I/O
>
>
> Stefan, any ideas?   Ill continue trying to understand the IDE code
> tomorrow and maybe I make some progress.

It sounds like aio for iSCSI is broken.  IDE submits bdrv_aio_readv()
requests which iSCSI handles.  QEMU main loop should find that the
iSCSI socket file descriptor becomes readable when the SCSI response
arrives.  We can then report I/O completion back to the guest.

However, it appears that completions are not triggering.  My guess is
that once the OS is fully booted you don't see the problem because
other events are pumping the main loop besides a 55ms timer.
Therefore this problem probably applies across the board but it's most
noticable when the BIOS/bootloader/early OS is executing.

Have you added debugging into block/iscsi.c or libiscsi to watch when
read handlers get called?  Using tcpdump or strace might also be
useful to figure out when the reply becomes available and why we
aren't registering a read handler function with the QEMU main loop.

Stefan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]