aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlberto Faria <afaria@redhat.com>2022-07-05 17:15:21 +0100
committerHanna Reitz <hreitz@redhat.com>2022-07-12 12:14:56 +0200
commit50db162df068e1951aebf5c28d254ded883e9468 (patch)
tree25b375549aec9ac5571429a778a2ac4ef84669b3
parent1c95dc914a0218e58dc8d857b736b966a721d96d (diff)
downloadqemu-50db162df068e1951aebf5c28d254ded883e9468.zip
qemu-50db162df068e1951aebf5c28d254ded883e9468.tar.gz
qemu-50db162df068e1951aebf5c28d254ded883e9468.tar.bz2
block: Implement blk_pdiscard() using generated_co_wrapper
Signed-off-by: Alberto Faria <afaria@redhat.com> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Hanna Reitz <hreitz@redhat.com> Message-Id: <20220705161527.1054072-14-afaria@redhat.com> Signed-off-by: Hanna Reitz <hreitz@redhat.com>
-rw-r--r--block/block-backend.c12
-rw-r--r--block/coroutines.h3
-rw-r--r--include/sysemu/block-backend-io.h3
3 files changed, 2 insertions, 16 deletions
diff --git a/block/block-backend.c b/block/block-backend.c
index 85661d1..71585c0 100644
--- a/block/block-backend.c
+++ b/block/block-backend.c
@@ -1711,18 +1711,6 @@ int coroutine_fn blk_co_pdiscard(BlockBackend *blk, int64_t offset,
return ret;
}
-int blk_pdiscard(BlockBackend *blk, int64_t offset, int64_t bytes)
-{
- int ret;
- IO_OR_GS_CODE();
-
- blk_inc_in_flight(blk);
- ret = blk_do_pdiscard(blk, offset, bytes);
- blk_dec_in_flight(blk);
-
- return ret;
-}
-
/* To be called between exactly one pair of blk_inc/dec_in_flight() */
int coroutine_fn blk_co_do_flush(BlockBackend *blk)
{
diff --git a/block/coroutines.h b/block/coroutines.h
index 94fd283..2693eca 100644
--- a/block/coroutines.h
+++ b/block/coroutines.h
@@ -110,9 +110,6 @@ nbd_do_establish_connection(BlockDriverState *bs, bool blocking, Error **errp);
int generated_co_wrapper
blk_do_ioctl(BlockBackend *blk, unsigned long int req, void *buf);
-int generated_co_wrapper
-blk_do_pdiscard(BlockBackend *blk, int64_t offset, int64_t bytes);
-
int generated_co_wrapper blk_do_flush(BlockBackend *blk);
#endif /* BLOCK_COROUTINES_H */
diff --git a/include/sysemu/block-backend-io.h b/include/sysemu/block-backend-io.h
index 346ca47..5a12a1f 100644
--- a/include/sysemu/block-backend-io.h
+++ b/include/sysemu/block-backend-io.h
@@ -159,6 +159,8 @@ static inline int coroutine_fn blk_co_pwrite(BlockBackend *blk, int64_t offset,
return blk_co_pwritev(blk, offset, bytes, &qiov, flags);
}
+int generated_co_wrapper blk_pdiscard(BlockBackend *blk, int64_t offset,
+ int64_t bytes);
int coroutine_fn blk_co_pdiscard(BlockBackend *blk, int64_t offset,
int64_t bytes);
@@ -172,7 +174,6 @@ int generated_co_wrapper blk_pwrite_compressed(BlockBackend *blk,
const void *buf);
int coroutine_fn blk_co_pwrite_compressed(BlockBackend *blk, int64_t offset,
int64_t bytes, const void *buf);
-int blk_pdiscard(BlockBackend *blk, int64_t offset, int64_t bytes);
int generated_co_wrapper blk_pwrite_zeroes(BlockBackend *blk, int64_t offset,
int64_t bytes,
BdrvRequestFlags flags);