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 <weil@mail.berlios.de>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Stefan Weil 2009-08-28 14:39:31 +02:00 committed by Anthony Liguori
parent f827497194
commit e44bd6fc15
1 changed files with 7 additions and 1 deletions

View File

@ -115,7 +115,9 @@ typedef struct BDRVRawState {
int fd_got_error; int fd_got_error;
int fd_media_changed; int fd_media_changed;
#endif #endif
#ifdef CONFIG_LINUX_AIO
int use_aio; int use_aio;
#endif
uint8_t* aligned_buf; uint8_t* aligned_buf;
} BDRVRawState; } BDRVRawState;
@ -183,7 +185,9 @@ static int raw_open_common(BlockDriverState *bs, const char *filename,
if (!s->aio_ctx) { if (!s->aio_ctx) {
goto out_free_buf; goto out_free_buf;
} }
#ifdef CONFIG_LINUX_AIO
s->use_aio = 0; s->use_aio = 0;
#endif
} }
return 0; return 0;
@ -542,9 +546,11 @@ static BlockDriverAIOCB *raw_aio_submit(BlockDriverState *bs,
if (s->aligned_buf) { if (s->aligned_buf) {
if (!qiov_is_aligned(qiov)) { if (!qiov_is_aligned(qiov)) {
type |= QEMU_AIO_MISALIGNED; type |= QEMU_AIO_MISALIGNED;
#ifdef CONFIG_LINUX_AIO
} else if (s->use_aio) { } else if (s->use_aio) {
return laio_submit(bs, s->aio_ctx, s->fd, sector_num, qiov, return laio_submit(bs, s->aio_ctx, s->fd, sector_num, qiov,
nb_sectors, cb, opaque, type); nb_sectors, cb, opaque, type);
#endif
} }
} }