diff options
| author | Daniel P. Berrange <berrange@redhat.com> | 2012-07-20 11:45:04 +0100 |
|---|---|---|
| committer | Daniel P. Berrange <berrange@redhat.com> | 2012-07-20 13:39:20 +0100 |
| commit | 7b5a46b29fe994e9dc973bd7e5b60dee9f803f91 (patch) | |
| tree | 5b1f9c93bea44e4b8ad0af9a765d0bd7aaafcfd1 /nova/virt | |
| parent | 7292473944762c42c0d04e16599822ab55d9b726 (diff) | |
Don't set device='cdrom' for all disks in libvirt driver
When the root disk image was tagged as being an ISO image,
the libvirt driver would mistakenly set device='cdrom' for
all disks, instead of just the first image
Change-Id: Idf29df5c460f8ebefd2e462a53d72280d5af4c5e
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Diffstat (limited to 'nova/virt')
| -rw-r--r-- | nova/virt/libvirt/driver.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py index bb460c8ea..d41a18304 100644 --- a/nova/virt/libvirt/driver.py +++ b/nova/virt/libvirt/driver.py @@ -1654,10 +1654,10 @@ class LibvirtDriver(driver.ComputeDriver): else: root_device_type = 'disk' - def disk_info(name): + def disk_info(name, device_type="disk"): image = self.image_backend.image(instance['name'], name) - return image.libvirt_info(root_device_type, + return image.libvirt_info(device_type, self.disk_cachemode) if FLAGS.libvirt_type == "uml": @@ -1668,7 +1668,7 @@ class LibvirtDriver(driver.ComputeDriver): ephemeral_disk_bus = "virtio" if rescue: - diskrescue = disk_info('disk.rescue') + diskrescue = disk_info('disk.rescue', root_device_type) diskrescue.target_dev = self.default_root_device diskrescue.target_bus = ephemeral_disk_bus guest.add_device(diskrescue) @@ -1682,7 +1682,7 @@ class LibvirtDriver(driver.ComputeDriver): block_device_info) if not ebs_root: - diskos = disk_info('disk') + diskos = disk_info('disk', root_device_type) diskos.target_dev = root_device if root_device_type == "cdrom": diskos.target_bus = "ide" |
