On 27/07/2015 11:49, Jason Wang wrote:
> Hi all:
>
> This series tries to set feature correctly for virtio-blk when virtio
> 1.0 is supported. Two isssues were addressed according to the spec:
>
> - scsi passthrough was not support in 1.0. This is done through: 1)
> let get_features() can fail 2) fail the get_features() when both
> scsi and virtio 1.0 is enabled.
> - any layout must be set for transitional device. This is done by set
> any layout when 1.0 is supported.
>
> Changes from V3:
> - rebase on top of Michael's any_layout fixes
With my fixup to the error message,
Acked-by: Paolo Bonzini
Paolo
> Changes from V2:
> - Keep scsi=on by default since virtio 1.0 is disabled by default
> - Advertise VIRTIO_BLK_F_SCSI unconditionally if virtio 1.0 is
> disabled
>
> Changes from V1:
> - Split virtio-net changes out of the series
> - Enable VIRTIO_BLK_F_SCSI only when scsi is set
> - Disable scsi by default and compat it for legacy machine types
> - Let get_features() can fail and fail the initialization of
> virito-blk when both 1.0 and scsi were supported.
>
> Jason Wang (3):
> virtio: get_features() can fail
> virtio-blk: fail get_features when both scsi and 1.0 were set
> virtio-blk: only clear VIRTIO_F_ANY_LAYOUT for legacy device
>
> hw/9pfs/virtio-9p-device.c | 3 ++-
> hw/block/virtio-blk.c | 15 ---
> hw/char/virtio-serial-bus.c | 3 ++-
> hw/display/virtio-gpu.c | 3 ++-
> hw/input/virtio-input.c | 3 ++-
> hw/net/virtio-net.c | 3 ++-
> hw/scsi/vhost-scsi.c| 3 ++-
> hw/scsi/virtio-scsi.c | 3 ++-
> hw/virtio/virtio-balloon.c | 3 ++-
> hw/virtio/virtio-bus.c | 3 ++-
> hw/virtio/virtio-rng.c | 2 +-
> include/hw/virtio/virtio.h | 4 +++-
> 12 files changed, 34 insertions(+), 14 deletions(-)
>