pci: don't use bus number in migration, stub out

Using bus numbers in migration is clearly wrong as
they are guest assigned. Not really sure what the
right thing to do is, for now stick 0 in there so things
keep working for non-nested setups, add a TODO.

We also probably have to mark nested bridges as non-migrateable
until this is fixed?

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Alex Williamson <alex.williamson@redhat.com>
This commit is contained in:
Michael S. Tsirkin 2010-12-14 14:24:53 +02:00
parent cdfe17df88
commit af0669f0ed
1 changed files with 4 additions and 1 deletions

View File

@ -2014,7 +2014,10 @@ static char *pcibus_get_dev_path(DeviceState *dev)
char path[16];
snprintf(path, sizeof(path), "%04x:%02x:%02x.%x",
pci_find_domain(d->bus), d->config[PCI_SECONDARY_BUS],
pci_find_domain(d->bus),
0 /* TODO: need a persistent path for nested buses.
* Note: pci_bus_num(d->bus) is not right as it's guest
* assigned. */,
PCI_SLOT(d->devfn), PCI_FUNC(d->devfn));
return strdup(path);