On Fri, May 24, 2013 at 01:36:55PM +0800, Fam Zheng wrote: > Changes from v5: > 05: Rename bs to s for BDRVCURLState. > 06: Use int64_t for offsets. > Fix printf format string. > Move introducing of use_count to 07. > 07: Drop explicit cast. > Use int64_t for offsets. > Use_count moved here. > 08: Remove duplicated. > Move s->url = NULL to separate patch. > 09: Fix while(0); > 12: Added: > curl: set s->url to NULL after free.
This patch is definitely not working. The guest sees loads of disk errors like this: [ 30.880265] sd 2:0:0:0: [sda] [ 30.880265] Add. Sense: I/O process terminated [ 30.880265] sd 2:0:0:0: [sda] CDB: [ 30.880265] Read(10): 28 00 00 bf b0 87 00 00 01 00 [ 32.030702] sd 2:0:0:0: [sda] [ 32.031663] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE [ 32.031663] sd 2:0:0:0: [sda] [ 32.031663] Sense Key : Aborted Command [current] [ 32.031663] sd 2:0:0:0: [sda] [ 32.031663] Add. Sense: I/O process terminated [ 32.031663] sd 2:0:0:0: [sda] CDB: [ 32.031663] Read(10): 28 00 00 00 08 46 00 00 01 00 [ 32.031663] blk_update_request: 32 callbacks suppressed [ 32.031663] end_request: I/O error, dev sda, sector 2118 [ 32.031663] quiet_error: 46 callbacks suppressed [ 32.031663] Buffer I/O error on device sda1, logical block 2055 [ 32.031663] sd 2:0:0:0: [sda] [ 32.031663] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE [ 32.031663] sd 2:0:0:0: [sda] [ 32.031663] Sense Key : Aborted Command [current] [ 32.031663] sd 2:0:0:0: [sda] [ 32.031663] Add. Sense: I/O process terminated [ 32.031663] sd 2:0:0:0: [sda] CDB: [ 32.031663] Read(10): 28 00 00 00 08 45 00 00 01 00 [ 32.031663] end_request: I/O error, dev sda, sector 2117 [ 32.031663] Buffer I/O error on device sda1, logical block 2054 [ 32.031663] sd 2:0:0:0: [sda] (qemu doesn't crash) Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming blog: http://rwmj.wordpress.com Fedora now supports 80 OCaml packages (the OPEN alternative to F#)