Re: [Qemu-block] [PATCH 1/4] ide/atapi: make PIO read requests async

2015-10-23 Thread Peter Lieven
Am 22.10.2015 um 18:17 schrieb Stefan Hajnoczi: > On Mon, Oct 12, 2015 at 02:27:22PM +0200, Peter Lieven wrote: >> @@ -129,9 +134,71 @@ static int cd_read_sector(IDEState *s, int lba, uint8_t >> *buf, int sector_size) >> ret = -EIO; >> break; >> } >> + >> +if (!ret) { >>

Re: [Qemu-block] [PATCH 1/4] ide/atapi: make PIO read requests async

2015-10-22 Thread Stefan Hajnoczi
On Mon, Oct 12, 2015 at 02:27:22PM +0200, Peter Lieven wrote: > @@ -129,9 +134,71 @@ static int cd_read_sector(IDEState *s, int lba, uint8_t > *buf, int sector_size) > ret = -EIO; > break; > } > + > +if (!ret) { > +s->lba++; This function probably shouldn't take

[Qemu-block] [PATCH 1/4] ide/atapi: make PIO read requests async

2015-10-12 Thread Peter Lieven
PIO read requests on the ATAPI interface used to be sync blk requests. This has two significant drawbacks. First the main loop hangs util an I/O request is completed and secondly if the I/O request does not complete (e.g. due to an unresponsive storage) Qemu hangs completely. Signed-off-by: Peter