Skip to content

block: byte-based AIO read/write

Eric Blake qemu-devel 2 versions – Applied

Status from this message: Thanks, applied to the block-next branch.

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest6 patches 5 repliesApplied
  2. v16 patches 10 repliesSuperseded

Patches in v2 Applied

#Subject and filesSizeRepliesApplied
1/6block: Support byte-based aio callbacksblock/io.c include/block/block_int.h+35 -90 replies
2/6file-win32: Switch to byte-based callbacksblock/file-win32.c block/win32-aio.c include/block/raw-aio.h+32 -221 reply
3/6null: Switch to byte-based read/writeblock/null.c+30 -290 replies
4/6rbd: Switch to byte-based callbacksblock/rbd.c+24 -203 replies
5/6vxhs: Switch to byte-based callbacksblock/vxhs.c+22 -210 replies
6/6block: Drop last of the sector-based aio callbacksblock/io.c include/block/block_int.h+37 -550 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.

Read the v2 thread

Cover letter [Qemu-devel] [PATCH v2 0/6] block: byte-based AIO read/write

While we would prefer that block drivers use coroutines instead of aio callbacks, it is a fairly easy exercise to prove that all existing drivers with aio callbacks are merely scaling from bytes into sectors and back to bytes. So, even though I am not set up to completely run (or even compile-test) this full series, it seems pretty straightforward to change the signature to quit playing games with pointless scaling.

Incorporate Kevin's review on v1, which amounted to pretty much rewriting the series to be saner (the block layer now defaults to alignment of 1, so drivers that still need 512 for keeping the patch conservative have to override that; and improve the code in io.c to put byte-based access before sector-based fallbacks).

001/6:[0023] [FC] 'block: Support byte-based aio callbacks' 002/6:[0011] [FC] 'file-win32: Switch to byte-based callbacks' 003/6:[0007] [FC] 'null: Switch to byte-based read/write' 004/6:[0008] [FC] 'rbd: Switch to byte-based callbacks' 005/6:[0007] [FC] 'vxhs: Switch to byte-based callbacks' 006/6:[0093] [FC] 'block: Drop last of the sector-based aio callbacks'

Eric Blake (6):
block: Support byte-based aio callbacks
file-win32: Switch to byte-based callbacks
null: Switch to byte-based read/write
rbd: Switch to byte-based callbacks
vxhs: Switch to byte-based callbacks
block: Drop last of the sector-based aio callbacks

 include/block/block_int.h |  8 +++---
 include/block/raw-aio.h   |  2 +-
 block/io.c                | 64 ++++++++++++++++++++++++++---------------------
 block/file-win32.c        | 47 +++++++++++++++++++++-------------
 block/null.c              | 59 ++++++++++++++++++++++---------------------
 block/rbd.c               | 44 +++++++++++++++++---------------
 block/vxhs.c              | 43 +++++++++++++++----------------
 block/win32-aio.c         |  5 ++--
 8 files changed, 148 insertions(+), 124 deletions(-)
Signature · 1 line
2.14.3