Bug 865335 - RFE: disks should have a persistent serial ID
RFE: disks should have a persistent serial ID
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-nova (Show other bugs)
1.0 (Essex)
Unspecified Unspecified
low Severity low
: Upstream M2
: 13.0 (Queens)
Assigned To: Matthew Booth
Omri Hochman
: CodeChange, FutureFeature, Triaged
Depends On:
  Show dependency treegraph
Reported: 2012-10-11 05:07 EDT by Yaniv Kaul
Modified: 2017-10-13 08:47 EDT (History)
10 users (show)

See Also:
Fixed In Version:
Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Yaniv Kaul 2012-10-11 05:07:38 EDT
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):

How reproducible:

Steps to Reproduce:
Actual results:

Expected results:

Additional info:
Comment 3 Daniel Berrange 2012-12-17 12:27:14 EST
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 13:37:43 EDT
@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 Berrange 2013-09-16 13:55:06 EDT
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

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