5
0
mirror of git://git.proxmox.com/git/qemu-server.git synced 2025-03-10 12:58:25 +03:00

vm_devices_list : list devices behind pci bridge

This fix hotplug for devices behind bridges, like nic6->24 for example

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
This commit is contained in:
Alexandre Derumier 2015-02-10 17:23:09 +01:00 committed by Dietmar Maurer
parent 4de1bb2523
commit 200644a7f9

View File

@ -3208,8 +3208,18 @@ sub vm_devices_list {
my $devices = {};
foreach my $pcibus (@$res) {
foreach my $device (@{$pcibus->{devices}}) {
next if !$device->{'qdev_id'};
$devices->{$device->{'qdev_id'}} = 1;
if ($device->{'pci_bridge'}) {
$devices->{$device->{'qdev_id'}} = 1;
foreach my $bridge_device (@{$device->{'pci_bridge'}->{devices}}) {
next if !$bridge_device->{'qdev_id'};
$devices->{$bridge_device->{'qdev_id'}} = 1;
$devices->{$device->{'qdev_id'}}++;
}
} else {
next if !$device->{'qdev_id'};
$devices->{$device->{'qdev_id'}} = 1;
}
}
}