From: Stefan Weil Date: Fri, 28 Aug 2009 12:39:31 +0000 (+0200) Subject: Don't compile aio code if CONFIG_LINUX_AIO is undefined X-Git-Tag: v0.12.0-rc0~1384 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e44bd6fc15757193d044188213e439ca942dd581;p=thirdparty%2Fqemu.git Don't compile aio code if CONFIG_LINUX_AIO is undefined This patch fixes linker errors when building QEMU without Linux AIO support. It is based on suggestions from malc and Kevin Wolf. Signed-off-by: Stefan Weil Signed-off-by: Anthony Liguori --- diff --git a/block/raw-posix.c b/block/raw-posix.c index 8a7dc1570cc..2125d67a5f7 100644 --- a/block/raw-posix.c +++ b/block/raw-posix.c @@ -115,7 +115,9 @@ typedef struct BDRVRawState { int fd_got_error; int fd_media_changed; #endif +#ifdef CONFIG_LINUX_AIO int use_aio; +#endif uint8_t* aligned_buf; } BDRVRawState; @@ -183,7 +185,9 @@ static int raw_open_common(BlockDriverState *bs, const char *filename, if (!s->aio_ctx) { goto out_free_buf; } +#ifdef CONFIG_LINUX_AIO s->use_aio = 0; +#endif } return 0; @@ -542,9 +546,11 @@ static BlockDriverAIOCB *raw_aio_submit(BlockDriverState *bs, if (s->aligned_buf) { if (!qiov_is_aligned(qiov)) { type |= QEMU_AIO_MISALIGNED; +#ifdef CONFIG_LINUX_AIO } else if (s->use_aio) { return laio_submit(bs, s->aio_ctx, s->fd, sector_num, qiov, - nb_sectors, cb, opaque, type); + nb_sectors, cb, opaque, type); +#endif } }