summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2013-01-10 15:28:35 +0100
committerMichael Roth <mdroth@linux.vnet.ibm.com>2013-01-15 23:05:45 -0600
commit204dd38c2da72687848d1a6fd2a81a8eaac6bf78 (patch)
tree32937ff0154efacc3a6d79913f7cdb90b1e41c3f
parent86bab459489a192486ec0f49e0ef5114ff6554d2 (diff)
downloadqemu-204dd38c2da72687848d1a6fd2a81a8eaac6bf78.tar.gz
raw-posix: fix bdrv_aio_ioctl
When the raw-posix aio=thread code was moved from posix-aio-compat.c to block/raw-posix.c, there was an unintended change to the ioctl code. The code used to return the ioctl command, which posix_aio_read() would later morph into a zero. This hack is not necessary anymore, and in fact breaks scsi-generic (which expects a zero return code). Remove it. Cc: qemu-stable@nongnu.org Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com> (cherry picked from commit b608c8dc02c78ee95455a0989bdf1b41c768b2ef) Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
-rw-r--r--block/raw-posix.c10
1 files changed, 1 insertions, 9 deletions
diff --git a/block/raw-posix.c b/block/raw-posix.c
index 550c81f22b..5c6c564b51 100644
--- a/block/raw-posix.c
+++ b/block/raw-posix.c
@@ -456,15 +456,7 @@ static ssize_t handle_aiocb_ioctl(RawPosixAIOData *aiocb)
return -errno;
}
- /*
- * This looks weird, but the aio code only considers a request
- * successful if it has written the full number of bytes.
- *
- * Now we overload aio_nbytes as aio_ioctl_cmd for the ioctl command,
- * so in fact we return the ioctl command here to make posix_aio_read()
- * happy..
- */
- return aiocb->aio_nbytes;
+ return 0;
}
static ssize_t handle_aiocb_flush(RawPosixAIOData *aiocb)