]> git.proxmox.com Git - mirror_qemu.git/commit
xen-block: support feature-large-sector-size
authorPaul Durrant <paul.durrant@citrix.com>
Tue, 9 Apr 2019 16:40:38 +0000 (17:40 +0100)
committerAnthony PERARD <anthony.perard@citrix.com>
Mon, 24 Jun 2019 09:42:29 +0000 (10:42 +0100)
commit5feeb718d7914c3c921cc811a5844488a5644ea6
tree89a3be3e12f0bcaec1f1a1b009ecf9e1937ed7ee
parent474f3938d79ab36b9231c9ad3b5a9314c2aeacde
xen-block: support feature-large-sector-size

A recent Xen commit [1] clarified the semantics of sector based quantities
used in the blkif protocol such that it is now safe to create a xen-block
device with a logical_block_size != 512, as long as the device only
connects to a frontend advertizing 'feature-large-block-size'.

This patch modifies xen-block accordingly. It also uses a stack variable
for the BlockBackend in xen_block_realize() to avoid repeated dereferencing
of the BlockConf pointer, and changes the parameters of
xen_block_dataplane_create() so that the BlockBackend pointer and sector
size are passed expicitly rather than implicitly via the BlockConf.

These modifications have been tested against a recent Windows PV XENVBD
driver [2] using a xen-disk device with a 4kB logical block size.

[1] http://xenbits.xen.org/gitweb/?p=xen.git;a=commit;h=67e1c050e36b2c9900cca83618e56189effbad98
[2] https://winpvdrvbuild.xenproject.org:8080/job/XENVBD-master/126

Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
Message-Id: <20190409164038.25484-1-paul.durrant@citrix.com>
[Edited error message]
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
hw/block/dataplane/xen-block.c
hw/block/dataplane/xen-block.h
hw/block/xen-block.c