Bug 865335 - [RFE] disks should have a persistent serial ID
Summary: [RFE] disks should have a persistent serial ID
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-nova
Version: 17.0 (Wallaby)
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: ---
: ---
Assignee: Matthew Booth
QA Contact: Joe H. Rahme
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-10-11 09:07 UTC by Yaniv Kaul
Modified: 2019-12-06 10:37 UTC (History)
13 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-12-06 10:37:11 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 242602 0 'None' MERGED Add uuid column to BlockDeviceMapping 2020-09-22 15:42:56 UTC
OpenStack gerrit 242603 0 'None' MERGED Make BlockDeviceMapping object support uuid 2020-09-22 15:42:56 UTC
OpenStack gerrit 524126 0 'None' MERGED Remove unused global variables 2020-09-22 15:42:55 UTC
OpenStack gerrit 524167 0 'None' MERGED DriverBlockDevice: make subclasses inherit _proxy_as_attr 2020-09-22 15:42:56 UTC
OpenStack gerrit 525599 0 'None' MERGED Add an online migration for BDM.uuid 2020-09-22 15:42:55 UTC
OpenStack gerrit 526346 0 'None' MERGED Give volume DriverBlockDevice classes a common prefix 2020-09-22 15:42:55 UTC
OpenStack gerrit 526347 0 'None' ABANDONED Add DriverLocalImageBlockDevice 2020-09-22 15:42:59 UTC
OpenStack gerrit 527916 0 'None' ABANDONED Use real block_device_info data in libvirt tests 2020-09-22 15:42:56 UTC
OpenStack gerrit 528362 0 'None' MERGED Expose driver_block_device fields consistently 2020-09-22 15:42:55 UTC
OpenStack gerrit 528363 0 'None' ABANDONED Pass DriverBlockDevice to driver.attach_volume 2020-09-22 15:42:59 UTC
OpenStack gerrit 529028 0 'None' MERGED Rename block_device_info_get_root 2020-09-22 15:42:58 UTC
OpenStack gerrit 529029 0 'None' ABANDONED Add local_root to block_device_info 2020-09-22 15:42:55 UTC
OpenStack gerrit 529037 0 'None' MERGED Expose BDM uuid to drivers 2020-09-22 15:42:58 UTC
OpenStack gerrit 529328 0 'None' MERGED Fix libvirt volume tests passing invalid disk_info 2020-09-22 15:42:54 UTC
OpenStack gerrit 529329 0 'None' MERGED Pass disk_info dict to libvirt_info 2020-09-22 15:42:54 UTC
OpenStack gerrit 529380 0 'None' ABANDONED Local disk serial numbers for the libvirt driver 2020-09-22 15:42:54 UTC
OpenStack gerrit 530774 0 'None' MERGED Add test for assignment of uuid to a deleted BDM 2020-09-22 15:42:54 UTC
OpenStack gerrit 530786 0 'None' ABANDONED Expose volume host type and path independent of libvirt config 2020-09-22 15:42:54 UTC
OpenStack gerrit 530787 0 'None' ABANDONED Don't generate fake disk_info in swap_volume 2020-09-22 15:42:55 UTC

Description Yaniv Kaul 2012-10-11 09:07:38 UTC
Description of problem:
I'm not sure if downstream QEMU, without mentioning a serial ID for disk, sets a persistent one. Some programs use it (example: one of the Windows activation checks is if a disk was changed - and this is done by checking its ID. Another example - I suspect it's required for WHQL signing of block drivers).
We should add,serial=ca-b642-ebc2348af830 (for example) to the -drive parameter of QEMU

Version-Release number of selected component (if applicable):
Essex

How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 3 Daniel Berrangé 2012-12-17 17:27:14 UTC
Disks that are attached backed by Cinder volumes do get a 'serial' property set, but the regular OS disks do not. Should be pretty trivial to address this.

Comment 6 Solly Ross 2013-06-10 17:37:43 UTC
@danpb: can you confirm that this is still the case?  From what I can tell, on the latest version of the nova code, it would appear that everything gets assigned a serial property (there seem to be several explicit checks which say that if 'serial' is not in the connection info, use the volume id as the serial).  Is this still incorrect behavior?

Comment 8 Daniel Berrangé 2013-09-16 17:55:06 UTC
It is still broken. Only the disks which are based on cinder volumes have a serial attribute set. Nothing in imagebackend.py is ever setting a serial attribute.  Even the cinder based serial attribute is really broken, because it is used a UUID string which gets truncated by QEMU, since the max serial field length is shorter than a UUID string.

We really need to re-think what we use for serial attributes with cinder volumes, and also make non-volume based disks have a serial attribute. A consistent naming scheme across both would be desirable

Comment 23 Scott Lewis 2018-06-04 14:20:08 UTC
This item has had a change in release flag, and has been removed from tracking in OSP14.GA

Comment 24 Matthew Booth 2018-08-22 16:32:45 UTC
Spec resubmitted: https://review.openstack.org/595247

Comment 29 Stephen Finucane 2019-12-06 10:37:11 UTC
This has been open for a long time and we've made a couple of attempts at resolving this upstream. There's no longer a strong customer request attached to this so I'm going to close this. We can open a new RFE if this becomes a priority again in the future.


Note You need to log in before you can comment on or make changes to this bug.