diff mbox

[PATCHv2,7/8] Change pci bus get_dev_path callback to print only slot and func

Message ID 1288525209-3303-8-git-send-email-gleb@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Gleb Natapov Oct. 31, 2010, 11:40 a.m. UTC
None
diff mbox

Patch

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), "%s@%x", 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);
 }