From d836f8d35dc418e24c3b11e2ea67d361b867b650 Mon Sep 17 00:00:00 2001 From: Pavel Hrdina Date: Wed, 29 May 2013 14:12:10 +0200 Subject: [PATCH] scsi-generic: check the return value of bdrv_aio_ioctl in execute_command This fixes the bug introduced by this commit ad54ae80c73f. The bdrv_aio_ioctl() still could return null and we should return an error in that case. Cc: qemu-stable@nongnu.org Signed-off-by: Pavel Hrdina Signed-off-by: Paolo Bonzini --- hw/scsi/scsi-generic.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hw/scsi/scsi-generic.c b/hw/scsi/scsi-generic.c index 19bd36cd54..8f195bec00 100644 --- a/hw/scsi/scsi-generic.c +++ b/hw/scsi/scsi-generic.c @@ -174,6 +174,9 @@ static int execute_command(BlockDriverState *bdrv, r->io_header.flags |= SG_FLAG_DIRECT_IO; r->req.aiocb = bdrv_aio_ioctl(bdrv, SG_IO, &r->io_header, complete, r); + if (r->req.aiocb == NULL) { + return -EIO; + } return 0; }