From patchwork Fri Jan 18 15:43:35 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [for-1.4] block/raw-posix: Make hdev_aio_discard() available outside Linux Date: Fri, 18 Jan 2013 05:43:35 -0000 From: =?utf-8?q?Andreas_F=C3=A4rber_=3Candreas=2Efaerber=40web=2Ede=3E?= X-Patchwork-Id: 213645 Message-Id: <1358523815-24212-1-git-send-email-andreas.faerber@web.de> To: qemu-devel@nongnu.org Cc: Kevin Wolf , Paolo Bonzini , =?UTF-8?q?Andreas=20F=C3=A4rber?= , Stefan Hajnoczi Fixes the build on OpenBSD among others. Suggested-by: Kevin Wolf Signed-off-by: Andreas Färber Cc: Paolo Bonzini --- block/raw-posix.c | 26 +++++++++++++------------- 1 Datei geändert, 13 Zeilen hinzugefügt(+), 13 Zeilen entfernt(-) diff --git a/block/raw-posix.c b/block/raw-posix.c index 679fcc5..657af95 100644 --- a/block/raw-posix.c +++ b/block/raw-posix.c @@ -1371,19 +1371,6 @@ static BlockDriverAIOCB *hdev_aio_ioctl(BlockDriverState *bs, return thread_pool_submit_aio(aio_worker, acb, cb, opaque); } -static coroutine_fn BlockDriverAIOCB *hdev_aio_discard(BlockDriverState *bs, - int64_t sector_num, int nb_sectors, - BlockDriverCompletionFunc *cb, void *opaque) -{ - BDRVRawState *s = bs->opaque; - - if (fd_open(bs) < 0) { - return NULL; - } - return paio_submit(bs, s->fd, sector_num, NULL, nb_sectors, - cb, opaque, QEMU_AIO_DISCARD|QEMU_AIO_BLKDEV); -} - #elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) static int fd_open(BlockDriverState *bs) { @@ -1403,6 +1390,19 @@ static int fd_open(BlockDriverState *bs) #endif /* !linux && !FreeBSD */ +static coroutine_fn BlockDriverAIOCB *hdev_aio_discard(BlockDriverState *bs, + int64_t sector_num, int nb_sectors, + BlockDriverCompletionFunc *cb, void *opaque) +{ + BDRVRawState *s = bs->opaque; + + if (fd_open(bs) < 0) { + return NULL; + } + return paio_submit(bs, s->fd, sector_num, NULL, nb_sectors, + cb, opaque, QEMU_AIO_DISCARD|QEMU_AIO_BLKDEV); +} + static int hdev_create(const char *filename, QEMUOptionParameter *options) { int fd;