Specify the default cdrom type "scsi" for AARCH64.

In AARCH64,ide is not the proper type for cdrom device just like
in x86_64.So change this to scsi in case of qemu error. Also add
a test for this.

Close-Bug: #1585893

Change-Id: Ia1cfde9f96fa54de0b352a7e6e903898b1eb7476
Signed-off-by: Kevin Zhao <kevin.zhao@linaro.org>
This commit is contained in:
Kevin Zhao
2016-05-31 02:54:40 +00:00
parent f9a9158db5
commit 36998c05d5
2 changed files with 4 additions and 2 deletions

View File

@@ -712,7 +712,9 @@ class LibvirtBlockInfoTest(test.NoDBTestCase):
(arch.S390, 'disk', 'virtio'), (arch.S390, 'disk', 'virtio'),
(arch.S390, 'cdrom', 'scsi'), (arch.S390, 'cdrom', 'scsi'),
(arch.S390X, 'disk', 'virtio'), (arch.S390X, 'disk', 'virtio'),
(arch.S390X, 'cdrom', 'scsi') (arch.S390X, 'cdrom', 'scsi'),
(arch.AARCH64, 'disk', 'virtio'),
(arch.AARCH64, 'cdrom', 'scsi')
) )
image_meta = objects.ImageMeta.from_dict(self.test_image_meta) image_meta = objects.ImageMeta.from_dict(self.test_image_meta)
for guestarch, dev, res in expected: for guestarch, dev, res in expected:

View File

@@ -262,7 +262,7 @@ def get_disk_bus_for_device_type(instance,
if device_type == "cdrom": if device_type == "cdrom":
guestarch = libvirt_utils.get_arch(image_meta) guestarch = libvirt_utils.get_arch(image_meta)
if guestarch in (arch.PPC, arch.PPC64, arch.PPCLE, arch.PPC64LE, if guestarch in (arch.PPC, arch.PPC64, arch.PPCLE, arch.PPC64LE,
arch.S390, arch.S390X): arch.S390, arch.S390X, arch.AARCH64):
return "scsi" return "scsi"
else: else:
return "ide" return "ide"