Message ID | 1444652845-20642-3-git-send-email-pl@kamp.de |
---|---|
State | New |
Headers | show |
On Mon, Oct 12, 2015 at 02:27:23PM +0200, Peter Lieven wrote: > Signed-off-by: Peter Lieven <pl@kamp.de> > --- > hw/ide/atapi.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c > index 2271ea2..e0cf066 100644 > --- a/hw/ide/atapi.c > +++ b/hw/ide/atapi.c > @@ -429,6 +429,10 @@ static void ide_atapi_cmd_read_dma_cb(void *opaque, int ret) > s->bus->dma->aiocb = blk_aio_readv(s->blk, (int64_t)s->lba << 2, > &s->bus->dma->qiov, n * 4, > ide_atapi_cmd_read_dma_cb, s); > + if (s->bus->dma->aiocb == NULL) { > + ide_atapi_io_error(s, -EIO); > + goto eot; > + } Where does blk_aio_readv() return NULL?
Am 22.10.2015 um 18:20 schrieb Stefan Hajnoczi: > On Mon, Oct 12, 2015 at 02:27:23PM +0200, Peter Lieven wrote: >> Signed-off-by: Peter Lieven <pl@kamp.de> >> --- >> hw/ide/atapi.c | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c >> index 2271ea2..e0cf066 100644 >> --- a/hw/ide/atapi.c >> +++ b/hw/ide/atapi.c >> @@ -429,6 +429,10 @@ static void ide_atapi_cmd_read_dma_cb(void *opaque, int ret) >> s->bus->dma->aiocb = blk_aio_readv(s->blk, (int64_t)s->lba << 2, >> &s->bus->dma->qiov, n * 4, >> ide_atapi_cmd_read_dma_cb, s); >> + if (s->bus->dma->aiocb == NULL) { >> + ide_atapi_io_error(s, -EIO); >> + goto eot; >> + } > Where does blk_aio_readv() return NULL? Never. My fault. Peter
diff --git a/hw/ide/atapi.c b/hw/ide/atapi.c index 2271ea2..e0cf066 100644 --- a/hw/ide/atapi.c +++ b/hw/ide/atapi.c @@ -429,6 +429,10 @@ static void ide_atapi_cmd_read_dma_cb(void *opaque, int ret) s->bus->dma->aiocb = blk_aio_readv(s->blk, (int64_t)s->lba << 2, &s->bus->dma->qiov, n * 4, ide_atapi_cmd_read_dma_cb, s); + if (s->bus->dma->aiocb == NULL) { + ide_atapi_io_error(s, -EIO); + goto eot; + } return; eot:
Signed-off-by: Peter Lieven <pl@kamp.de> --- hw/ide/atapi.c | 4 ++++ 1 file changed, 4 insertions(+)