[libvirt] [PATCH 2/3] scsi-disk: Add device_id property
Peter Krempa
pkrempa at redhat.com
Mon Jan 28 09:08:46 UTC 2019
On Mon, Jan 28, 2019 at 09:50:41 +0100, Peter Krempa wrote:
> On Fri, Jan 25, 2019 at 18:46:52 +0100, Kevin Wolf wrote:
> > The new device_id property specifies which value to use for the vendor
> > specific designator in the Device Identification VPD page.
> >
> > In particular, this is necessary for libvirt to maintain guest ABI
> > compatibility when no serial number is given and a VM is switched from
> > -drive (where the BlockBackend name is used) to -blockdev (where the
> > vendor specific designator is left out by default).
> >
> > Signed-off-by: Kevin Wolf <kwolf at redhat.com>
> > ---
> > hw/scsi/scsi-disk.c | 24 ++++++++++++++++--------
> > 1 file changed, 16 insertions(+), 8 deletions(-)
>
> [...]
>
> > @@ -2904,7 +2910,9 @@ static const TypeInfo scsi_disk_base_info = {
> > DEFINE_PROP_STRING("ver", SCSIDiskState, version), \
> > DEFINE_PROP_STRING("serial", SCSIDiskState, serial), \
> > DEFINE_PROP_STRING("vendor", SCSIDiskState, vendor), \
> > - DEFINE_PROP_STRING("product", SCSIDiskState, product)
> > + DEFINE_PROP_STRING("product", SCSIDiskState, product), \
> > + DEFINE_PROP_STRING("device_id", SCSIDiskState, device_id)
>
> This adds the property only to 'scsi-disk', whereas libvirt will use
> 'scsi-cd' or 'scsi-hd' depending on the media type if the 'scsi-cd'
> device is detected. The following logic decides:
>
> https://libvirt.org/git/?p=libvirt.git;a=blob;f=src/qemu/qemu_command.c;h=3e46f3ced3c1e6a4865e98e2d0cdce3214c4a5d2;hb=HEAD#l1978
>
> This brings multiple questions:
I've found:
commit b443ae67130d32ad06b06fc9aa6d04d05ccd93ce
Author: Markus Armbruster <armbru at redhat.com>
Date: Mon May 16 15:04:53 2011 +0200
scsi: Split qdev "scsi-disk" into "scsi-hd" and "scsi-cd"
Which seems to put scsi-hd and scsi-cd as the thing to use.
Libvirt's code obviously did not adapt after that and we still keep to
probe scsi-disk instead of the split up devices, whereas we will never
use scsi-disk.
Also some of our tests seem to look as if scsi-disk was used which
confused me.
Since the new property is present also for scsi-hd and scsi-cd we really
need to adapt our code to that.
Btw, this also means that qemu can deprecate scsi-disk.
Sorry for the noise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20190128/40e16d15/attachment-0001.sig>
More information about the libvir-list
mailing list