Patchwork linux aio: some comments

login
register
mail settings
Submitter Frediano Ziglio
Date Aug. 30, 2011, 7:46 a.m.
Message ID <1314690371-9138-1-git-send-email-freddy77@gmail.com>
Download mbox | patch
Permalink /patch/112187/
State New
Headers show

Comments

Frediano Ziglio - Aug. 30, 2011, 7:46 a.m.
Add some notes about Linux AIO explaining why we don't use AIO in
some situations.

Signed-off-by: Frediano Ziglio <freddy77@gmail.com>
---
 block/raw-posix.c |    4 ++++
 linux-aio.c       |    1 +
 2 files changed, 5 insertions(+), 0 deletions(-)
Kevin Wolf - Aug. 30, 2011, 7:58 a.m.
Am 30.08.2011 09:46, schrieb Frediano Ziglio:
> Add some notes about Linux AIO explaining why we don't use AIO in
> some situations.
> 
> Signed-off-by: Frediano Ziglio <freddy77@gmail.com>

Thanks, applied to the block branch.

Kevin

Patch

diff --git a/block/raw-posix.c b/block/raw-posix.c
index c5c9944..bcf50b2 100644
--- a/block/raw-posix.c
+++ b/block/raw-posix.c
@@ -236,6 +236,10 @@  static int raw_open_common(BlockDriverState *bs, const char *filename,
     }
 
 #ifdef CONFIG_LINUX_AIO
+    /*
+     * Currently Linux do AIO only for files opened with O_DIRECT
+     * specified so check NOCACHE flag too
+     */
     if ((bdrv_flags & (BDRV_O_NOCACHE|BDRV_O_NATIVE_AIO)) ==
                       (BDRV_O_NOCACHE|BDRV_O_NATIVE_AIO)) {
 
diff --git a/linux-aio.c b/linux-aio.c
index 5fd3932..5265a02 100644
--- a/linux-aio.c
+++ b/linux-aio.c
@@ -181,6 +181,7 @@  BlockDriverAIOCB *laio_submit(BlockDriverState *bs, void *aio_ctx, int fd,
     case QEMU_AIO_READ:
         io_prep_preadv(iocbs, fd, qiov->iov, qiov->niov, offset);
 	break;
+    /* Currently Linux kernel does not support other operations */
     default:
         fprintf(stderr, "%s: invalid AIO request type 0x%x.\n",
                         __func__, type);