[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [qemu-upstream-unstable] raw-posix: fix bdrv_aio_ioctl

commit 204dd38c2da72687848d1a6fd2a81a8eaac6bf78
Author:     Paolo Bonzini <pbonzini@xxxxxxxxxx>
AuthorDate: Thu Jan 10 15:28:35 2013 +0100
Commit:     Michael Roth <mdroth@xxxxxxxxxxxxxxxxxx>
CommitDate: Tue Jan 15 23:05:45 2013 -0600

    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@xxxxxxxxxx
    Signed-off-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>
    Signed-off-by: Kevin Wolf <kwolf@xxxxxxxxxx>
    (cherry picked from commit b608c8dc02c78ee95455a0989bdf1b41c768b2ef)
    Signed-off-by: Michael Roth <mdroth@xxxxxxxxxxxxxxxxxx>
 block/raw-posix.c |   10 +---------
 1 files changed, 1 insertions(+), 9 deletions(-)

diff --git a/block/raw-posix.c b/block/raw-posix.c
index 550c81f..5c6c564 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)
generated by git-patchbot for /home/xen/git/qemu-upstream-unstable.git

Xen-changelog mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.