]> rtime.felk.cvut.cz Git - lisovros/qemu_apohw.git/commitdiff
scsi: fix drive hotplug.
authorGerd Hoffmann <kraxel@redhat.com>
Thu, 10 Dec 2009 10:11:07 +0000 (11:11 +0100)
committerAnthony Liguori <aliguori@us.ibm.com>
Sat, 12 Dec 2009 14:17:30 +0000 (08:17 -0600)
This patch fills the DriveInfo->unit after hotplugging a scsi disk.
It makes a difference when auto-assigning a scsi id, where unit was
left filled with '-1' instead of the actual scsi id.

With this patch applied the the drive naming logic in drive_init() works
as good as it did in previous releases.  Which means it works fine with
a single scsi bus.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
(cherry picked from commit 11f4d7f483d9ca3a8979abd605cf1468b3e96aa2)

hw/pci-hotplug.c

index 7e5c51dfe76b16190632c9fb2e3dbad91c1f9ee9..9e8e6ed425d9d7f0e24feac86699e2d14df159fe 100644 (file)
@@ -93,6 +93,7 @@ static int scsi_hot_add(DeviceState *adapter, DriveInfo *dinfo, int printinfo)
      */
     dinfo->unit = qemu_opt_get_number(dinfo->opts, "unit", -1);
     scsidev = scsi_bus_legacy_add_drive(scsibus, dinfo, dinfo->unit);
+    dinfo->unit = scsidev->id;
 
     if (printinfo)
         qemu_error("OK bus %d, unit %d\n", scsibus->busnr, scsidev->id);