On Fri, Dec 13, 2019 at 04:07:06PM +0100, Peter Krempa wrote:
On Fri, Dec 13, 2019 at 15:56:08 +0100, Paolo Bonzini wrote:
> On 13/12/19 15:46, Stefan Hajnoczi wrote:
> > The Linux virtio_blk.ko guest driver is removing legacy SCSI passthrough
> > support. Deprecate this feature in QEMU too.
> >
> > Signed-off-by: Stefan Hajnoczi <stefanha(a)redhat.com>
> > ---
> > qemu-deprecated.texi | 11 +++++++++++
> > 1 file changed, 11 insertions(+)
> >
> > diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi
> > index 4b4b7425ac..ef94d497da 100644
> > --- a/qemu-deprecated.texi
> > +++ b/qemu-deprecated.texi
> > @@ -285,6 +285,17 @@ spec you can use the ``-cpu rv64gcsu,priv_spec=v1.9.1``
command line argument.
> >
> > @section Device options
> >
> > +@subsection Emulated device options
> > +
> > +@subsubsection -device virtio-blk,scsi=on|off (since 5.0.0)
> > +
> > +The virtio-blk SCSI passthrough feature is a legacy VIRTIO feature. VIRTIO
1.0
> > +and later do not support it because the virtio-scsi device was introduced for
> > +full SCSI support. Use virtio-scsi instead when SCSI passthrough is
required.
> > +
> > +Note this also applies to ``-device virtio-blk-pci,scsi=on|off'',
which is an
> > +alias.
> > +
> > @subsection Block device options
> >
> > @subsubsection "backing": "" (since 2.12.0)
> >
>
> Reviewed-by: Paolo Bonzini <pbonzini(a)redhat.com>
Libvirt still allows and exposes this configuration:
<disk type='block' device='lun'>
<driver name='qemu' type='qcow2'/>
<source dev='/dev/sdfake2'/>
<target dev='vdb' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x05' function='0x0'/>
</disk>
which results into the following command line:
-drive file=/dev/sdfake2,format=qcow2,if=none,id=drive-virtio-disk1 \
-device virtio-blk-pci,scsi=on,bus=pci.0,addr=0x5,drive=drive-virtio-disk1,\
id=virtio-disk1
In this case I don't see any possibility how to fix it since it requires
change of controller.
I don't think it really matters. QEMU is deprecating it with no
seemless direct replacement, so I don't think libvirt needs to
be concerned. The feature simply becomes unsupported.
At the very most we need to check if it exists before using it,
but even that's just a nice to have which results in a slightly
prettier error message.
Regards,
Daniel
--
|:
https://berrange.com -o-
https://www.flickr.com/photos/dberrange :|
|:
https://libvirt.org -o-
https://fstop138.berrange.com :|
|:
https://entangle-photo.org -o-
https://www.instagram.com/dberrange :|