[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-block] [PATCH V4 2/6] block: add blk_abort_aio_request
From: |
Peter Lieven |
Subject: |
[Qemu-block] [PATCH V4 2/6] block: add blk_abort_aio_request |
Date: |
Thu, 12 Nov 2015 17:30:42 +0100 |
Signed-off-by: Peter Lieven <address@hidden>
---
block/block-backend.c | 17 +++++++++--------
include/sysemu/block-backend.h | 3 +++
2 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/block/block-backend.c b/block/block-backend.c
index 6f9309f..701234e 100644
--- a/block/block-backend.c
+++ b/block/block-backend.c
@@ -641,8 +641,9 @@ static void error_callback_bh(void *opaque)
qemu_aio_unref(acb);
}
-static BlockAIOCB *abort_aio_request(BlockBackend *blk, BlockCompletionFunc
*cb,
- void *opaque, int ret)
+BlockAIOCB *blk_abort_aio_request(BlockBackend *blk,
+ BlockCompletionFunc *cb,
+ void *opaque, int ret)
{
struct BlockBackendAIOCB *acb;
QEMUBH *bh;
@@ -664,7 +665,7 @@ BlockAIOCB *blk_aio_write_zeroes(BlockBackend *blk, int64_t
sector_num,
{
int ret = blk_check_request(blk, sector_num, nb_sectors);
if (ret < 0) {
- return abort_aio_request(blk, cb, opaque, ret);
+ return blk_abort_aio_request(blk, cb, opaque, ret);
}
return bdrv_aio_write_zeroes(blk->bs, sector_num, nb_sectors, flags,
@@ -724,7 +725,7 @@ BlockAIOCB *blk_aio_readv(BlockBackend *blk, int64_t
sector_num,
{
int ret = blk_check_request(blk, sector_num, nb_sectors);
if (ret < 0) {
- return abort_aio_request(blk, cb, opaque, ret);
+ return blk_abort_aio_request(blk, cb, opaque, ret);
}
return bdrv_aio_readv(blk->bs, sector_num, iov, nb_sectors, cb, opaque);
@@ -736,7 +737,7 @@ BlockAIOCB *blk_aio_writev(BlockBackend *blk, int64_t
sector_num,
{
int ret = blk_check_request(blk, sector_num, nb_sectors);
if (ret < 0) {
- return abort_aio_request(blk, cb, opaque, ret);
+ return blk_abort_aio_request(blk, cb, opaque, ret);
}
return bdrv_aio_writev(blk->bs, sector_num, iov, nb_sectors, cb, opaque);
@@ -746,7 +747,7 @@ BlockAIOCB *blk_aio_flush(BlockBackend *blk,
BlockCompletionFunc *cb, void *opaque)
{
if (!blk_is_available(blk)) {
- return abort_aio_request(blk, cb, opaque, -ENOMEDIUM);
+ return blk_abort_aio_request(blk, cb, opaque, -ENOMEDIUM);
}
return bdrv_aio_flush(blk->bs, cb, opaque);
@@ -758,7 +759,7 @@ BlockAIOCB *blk_aio_discard(BlockBackend *blk,
{
int ret = blk_check_request(blk, sector_num, nb_sectors);
if (ret < 0) {
- return abort_aio_request(blk, cb, opaque, ret);
+ return blk_abort_aio_request(blk, cb, opaque, ret);
}
return bdrv_aio_discard(blk->bs, sector_num, nb_sectors, cb, opaque);
@@ -801,7 +802,7 @@ BlockAIOCB *blk_aio_ioctl(BlockBackend *blk, unsigned long
int req, void *buf,
BlockCompletionFunc *cb, void *opaque)
{
if (!blk_is_available(blk)) {
- return abort_aio_request(blk, cb, opaque, -ENOMEDIUM);
+ return blk_abort_aio_request(blk, cb, opaque, -ENOMEDIUM);
}
return bdrv_aio_ioctl(blk->bs, req, buf, cb, opaque);
diff --git a/include/sysemu/block-backend.h b/include/sysemu/block-backend.h
index f4a68e2..fb068ea4 100644
--- a/include/sysemu/block-backend.h
+++ b/include/sysemu/block-backend.h
@@ -184,5 +184,8 @@ int blk_save_vmstate(BlockBackend *blk, const uint8_t *buf,
int blk_load_vmstate(BlockBackend *blk, uint8_t *buf, int64_t pos, int size);
int blk_probe_blocksizes(BlockBackend *blk, BlockSizes *bsz);
int blk_probe_geometry(BlockBackend *blk, HDGeometry *geo);
+BlockAIOCB *blk_abort_aio_request(BlockBackend *blk,
+ BlockCompletionFunc *cb,
+ void *opaque, int ret);
#endif
--
1.9.1
- [Qemu-block] [PATCH V4 0/6] ide: avoid main-loop hang on CDROM/NFS failure, Peter Lieven, 2015/11/12
- [Qemu-block] [PATCH V4 3/6] ide: add support for IDEBufferedRequest, Peter Lieven, 2015/11/12
- [Qemu-block] [PATCH V4 4/6] ide: orphan all buffered requests on DMA cancel, Peter Lieven, 2015/11/12
- [Qemu-block] [PATCH V4 2/6] block: add blk_abort_aio_request,
Peter Lieven <=
- [Qemu-block] [PATCH V4 6/6] ide: enable buffered requests for PIO read requests, Peter Lieven, 2015/11/12
- [Qemu-block] [PATCH V4 5/6] ide: enable buffered requests for ATAPI devices, Peter Lieven, 2015/11/12
- Re: [Qemu-block] [Qemu-devel] [PATCH V4 0/6] ide: avoid main-loop hang on CDROM/NFS failure, Mark Cave-Ayland, 2015/11/13
- Re: [Qemu-block] [Qemu-devel] [PATCH V4 0/6] ide: avoid main-loop hang on CDROM/NFS failure, John Snow, 2015/11/13