qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v7 00/13] curl: fix curl read


From: Fam Zheng
Subject: Re: [Qemu-devel] [PATCH v7 00/13] curl: fix curl read
Date: Fri, 7 Jun 2013 09:54:42 +0800
User-agent: Mutt/1.5.21 (2010-09-15)

On Thu, 06/06 12:01, Richard W.M. Jones wrote:
> On Thu, Jun 06, 2013 at 02:25:46PM +0800, Fam Zheng wrote:
> > v7:
> >   13: Added:
> >       curl: change timeout to 30 seconds
> 
> I tested this against:
> 
> (1) HTTP to Apache server over slow but local wifi.
> 
> (2) HTTP to a remote ISO (on another continent).
> 
> Test (1) is fine.
> 
> Test (2) gives plenty of I/O errors.  I guess that 30 seconds isn't
> sufficient here.
> 
> I should note that current upstream qemu *works* in both cases.
> Although the timeout in current qemu is much shorter (5 seconds), for
> some reason this does not affect the test.
> 
> I'm also confused about what problem this patch series is trying to
> fix, since upstream qemu works fine for me with the latest curl.
> 

The weird thing is it doesn't work for me, I'm sure something is wrong
with current upstream, although not totally broken.

  $./qemu-io http://localhost/vm/arch.raw -c 'read -v 0 512'
  (stuck here forever, no output)

Attach with gdb:

    (gdb) bt
    #0  aio_dispatch (ctx=0xaa1af230) at aio-posix.c:128
    #1  0x00007f6fa96a18f7 in aio_poll (ctx=0x7f6faa1afa00,
        blocking=true) at aio-posix.c:190
    #2  0x00007f6fa96ecabc in qemu_aio_wait ()
        at main-loop.c:484
    #3  0x00007f6fa96a7530 in bdrv_rwv_co (bs=0x7f6faa1b9540,
        sector_num=0, qiov=0x7fffacf403b0, is_write=false)
            at block.c:2216
    #4  0x00007f6fa96a75ca in bdrv_rw_co (bs=0x7f6faa1b9540,
        sector_num=0, buf=0x7fffacf406f0 "", nb_sectors=4,
            is_write=false) at block.c:2235
    #5  0x00007f6fa96a7629 in bdrv_read (bs=0x7f6faa1b9540,
        sector_num=0, buf=0x7fffacf406f0 "", nb_sectors=4)
            at block.c:2242
    #6  0x00007f6fa96a78f5 in bdrv_pread (bs=0x7f6faa1b9540,
        offset=0, buf=0x7fffacf406f0, count1=2048)
            at block.c:2304
    #7  0x00007f6fa96a36f4 in find_image_format (
        bs=0x7f6faa1b9540,
            filename=0x7fffacf4441d "http://localhost/vm/arch.raw";,
            pdrv=0x7fffacf40f28) at block.c:542
    #8  0x00007f6fa96a4a8a in bdrv_open (bs=0x7f6faa1b5b00,
        filename=0x7fffacf4441d "http://localhost/vm/arch.raw";,
        options=0x7f6faa1b7500, flags=24578, drv=0x0)
            at block.c:1055
    #9  0x00007f6fa970e803 in openfile (
        name=0x7fffacf4441d "http://localhost/vm/arch.raw";,
            flags=16386, growable=0) at qemu-io.c:1812
    #10 0x00007f6fa970ef5b in main (argc=4,
        argv=0x7fffacf43308) at qemu-io.c:2055

The BlockDriverState looks normal, just that libcurl not making any
progress (no callback, no timeout)


-- 
Fam



reply via email to

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