diff options
| author | John Snow <jsnow@redhat.com> | 2014-10-01 14:19:27 -0400 |
|---|---|---|
| committer | Stefan Hajnoczi <stefanha@redhat.com> | 2014-10-03 10:30:33 +0100 |
| commit | d8f94e1bb275ab6a14a15220fd6afd0d04324aeb (patch) | |
| tree | b24bbaf0487f1288af282314c817c53ff3a06bed /hw/sparc64/sun4u.c | |
| parent | 1602651833c081e32366c9e534ad72e4287840c5 (diff) | |
| download | focaccia-qemu-d8f94e1bb275ab6a14a15220fd6afd0d04324aeb.tar.gz focaccia-qemu-d8f94e1bb275ab6a14a15220fd6afd0d04324aeb.zip | |
ide: Update ide_drive_get to be HBA agnostic
Instead of duplicating the logic for the if_ide (bus,unit) mappings, rely on the blockdev layer for managing those mappings for us, and use the drive_get_by_index call instead. This allows ide_drive_get to work for AHCI HBAs as well, and can be used in the Q35 initialization. Lastly, change the nature of the argument to ide_drive_get so that represents the number of total drives we can support, and not the total number of buses. This will prevent array overflows if the units-per-default-bus property ever needs to be adjusted for compatibility reasons. Signed-off-by: John Snow <jsnow@redhat.com> Reviewed-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Message-id: 1412187569-23452-5-git-send-email-jsnow@redhat.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'hw/sparc64/sun4u.c')
| -rw-r--r-- | hw/sparc64/sun4u.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c index 9c77e18244..871a0ea246 100644 --- a/hw/sparc64/sun4u.c +++ b/hw/sparc64/sun4u.c @@ -864,7 +864,7 @@ static void sun4uv_init(MemoryRegion *address_space_mem, for(i = 0; i < nb_nics; i++) pci_nic_init_nofail(&nd_table[i], pci_bus, "ne2k_pci", NULL); - ide_drive_get(hd, MAX_IDE_BUS); + ide_drive_get(hd, ARRAY_SIZE(hd)); pci_cmd646_ide_init(pci_bus, hd, 1); |