On Mon, Jul 13, 2015 at 01:46:48PM +0800, Jason Wang wrote:
> VIRTIO_BLK_F_SCSI was no longer supported in 1.0. So disable it.
>
> Cc: Stefan Hajnoczi <[email protected]>
> Cc: Kevin Wolf <[email protected]>
> Cc: [email protected]
> Signed-off-by: Jason Wang <[email protected]>
Interesting, I noticed we have a field scsi - see
commit 1ba1f2e319afdcb485963cd3f426fdffd1b725f2
Author: Paolo Bonzini <[email protected]>
Date: Fri Dec 23 15:39:03 2011 +0100
virtio-blk: refuse SG_IO requests with scsi=off
but it doesn't seem to be propagated to guest features in
any way.
Maybe we should fix that, making that flag AutoOnOff?
Then, if user explicitly requested scsi=on with a modern
interface then we can error out cleanly.
Given scsi flag is currently ignored, I think
this can be a patch on top.
> ---
> hw/block/virtio-blk.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/hw/block/virtio-blk.c b/hw/block/virtio-blk.c
> index 6aefda4..f30ad25 100644
> --- a/hw/block/virtio-blk.c
> +++ b/hw/block/virtio-blk.c
> @@ -730,7 +730,8 @@ static uint64_t virtio_blk_get_features(VirtIODevice
> *vdev, uint64_t features)
> virtio_add_feature(&features, VIRTIO_BLK_F_GEOMETRY);
> virtio_add_feature(&features, VIRTIO_BLK_F_TOPOLOGY);
> virtio_add_feature(&features, VIRTIO_BLK_F_BLK_SIZE);
> - virtio_add_feature(&features, VIRTIO_BLK_F_SCSI);
> + if (!__virtio_has_feature(features, VIRTIO_F_VERSION_1))
> + virtio_add_feature(&features, VIRTIO_BLK_F_SCSI);
>
> if (s->conf.config_wce) {
> virtio_add_feature(&features, VIRTIO_BLK_F_CONFIG_WCE);
> --
> 2.1.4