[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] Re: [PATCHv2 7/8] Change pci bus get_dev_path callback to p
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] Re: [PATCHv2 7/8] Change pci bus get_dev_path callback to print only slot and func |
Date: |
Mon, 8 Nov 2010 19:26:42 +0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Sun, Oct 31, 2010 at 01:40:08PM +0200, Gleb Natapov wrote:
> Domain should be determined form parent bus and bus number is configured
> by guest and should not be used in qemu internally.
>
> Signed-off-by: Gleb Natapov <address@hidden>
> ---
> hw/pci.c | 11 ++++++-----
> 1 files changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/hw/pci.c b/hw/pci.c
> index 92aaa85..1c5706f 100644
> --- a/hw/pci.c
> +++ b/hw/pci.c
> @@ -2138,12 +2138,13 @@ static void pcibus_dev_print(Monitor *mon,
> DeviceState *dev, int indent)
> static char *pcibus_get_dev_path(DeviceState *dev)
> {
> PCIDevice *d = (PCIDevice *)dev;
> - char path[16];
> -
> - snprintf(path, sizeof(path), "%04x:%02x:%02x.%x",
> - pci_find_domain(d->bus), d->config[PCI_SECONDARY_BUS],
> - PCI_SLOT(d->devfn), PCI_FUNC(d->devfn));
> + char path[50];
> + int off;
>
> + off = snprintf(path, sizeof(path), "address@hidden",
> qdev_driver_name(dev),
> + PCI_SLOT(d->devfn));
> + if (PCI_FUNC(d->devfn))
> + snprintf(path + off, sizeof(path) + off, ",%x", PCI_FUNC(d->devfn));
> return strdup(path);
> }
If we want to be backwards compatible at least for a single domain,
we need to call PCI root in that case "0000:00". Can this work?
I think that keeping a single way to address devices is good.
--
MST