There is a proposal to introduce virtio-blk fua write support to the virtio spec [1], and a matching kernel RFC [2]. This series implements the proposal by adding VIRTIO_BLK_{F,T}_OUT_FUA uapi definitions and corresponding virtio-blk, vhost-user-blk, and vduse-blk support.
[1] https://lore.kernel.org/virtio-comment/20250507152602.3993258-1-afa...@redhat.com/ [2] https://lore.kernel.org/linux-block/20250508001951.421467-1-afa...@redhat.com/ v2: - Include missing hw/block/virtio-blk.c changes actually implementing VIRTIO_BLK_T_OUT_FUA support. Alberto Faria (4): include: Add tentative virtio-blk FUA write definitions virtio-blk: Add VIRTIO_BLK_T_OUT_FUA command support vhost-user-blk: Add VIRTIO_BLK_T_OUT_FUA command support vduse-blk: Add VIRTIO_BLK_T_OUT_FUA command support block/export/vduse-blk.c | 3 +- block/export/vhost-user-blk-server.c | 1 + block/export/virtio-blk-handler.c | 7 ++- contrib/vhost-user-blk/vhost-user-blk.c | 16 ++++-- hw/block/vhost-user-blk.c | 3 ++ hw/block/virtio-blk.c | 41 +++++++-------- hw/core/machine.c | 5 +- hw/virtio/virtio-qmp.c | 2 + include/hw/virtio/virtio-blk.h | 1 + include/standard-headers/linux/virtio_blk.h | 4 ++ tests/qtest/vhost-user-blk-test.c | 56 +++++++++++++++++++++ tests/qtest/virtio-blk-test.c | 56 +++++++++++++++++++++ 12 files changed, 168 insertions(+), 27 deletions(-) -- 2.49.0