]> git.proxmox.com Git - mirror_qemu.git/commit - block/crypto.c
block: Allow BDRV_REQ_FUA through blk_pwrite()
authorEric Blake <eblake@redhat.com>
Fri, 6 May 2016 16:26:27 +0000 (10:26 -0600)
committerKevin Wolf <kwolf@redhat.com>
Thu, 12 May 2016 13:22:08 +0000 (15:22 +0200)
commit8341f00dc207b80a1b2e7c7784890c9b0446d062
treee2ff324dc93b8b03a5dff95e6fd576116591aad3
parent0e01b76e7cc43068f6b8cc05297f61539ccd5279
block: Allow BDRV_REQ_FUA through blk_pwrite()

We have several block drivers that understand BDRV_REQ_FUA,
and emulate it in the block layer for the rest by a full flush.
But without a way to actually request BDRV_REQ_FUA during a
pass-through blk_pwrite(), FUA-aware block drivers like NBD are
forced to repeat the emulation logic of a full flush regardless
of whether the backend they are writing to could do it more
efficiently.

This patch just wires up a flags argument; followup patches
will actually make use of it in the NBD driver and in qemu-io.

Signed-off-by: Eric Blake <eblake@redhat.com>
Acked-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
15 files changed:
block/block-backend.c
block/crypto.c
block/parallels.c
block/qcow.c
block/qcow2.c
block/qed.c
block/sheepdog.c
block/vdi.c
block/vhdx.c
block/vmdk.c
block/vpc.c
hw/nvram/spapr_nvram.c
include/sysemu/block-backend.h
nbd/server.c
qemu-io-cmds.c