From: Yu Zhao Date: Sun, 4 Jan 2009 08:03:45 +0000 (+0800) Subject: Fix inconsistent bus centric view between the sysfs and proc methods X-Git-Tag: v3.1.0~6 X-Git-Url: http://mj.ucw.cz/gitweb/?a=commitdiff_plain;h=caeac5c38e34c5282a0646a697acaa1fea22ddb7;p=pciutils.git Fix inconsistent bus centric view between the sysfs and proc methods The vendor and device IDs may be different when using sysfs and proc methods with bus centric view enabled. The sysfs method reads the IDs from the configuration space rather than uses the values from sysfs entries. But the proc method always uses values from the proc files. This fix makes the proc method use the values from the configuration space too for bus centric view. Signed-off-by: Yu Zhao --- diff --git a/lib/proc.c b/lib/proc.c index bf877c4..e9ca24d 100644 --- a/lib/proc.c +++ b/lib/proc.c @@ -97,10 +97,10 @@ proc_scan(struct pci_access *a) d->func = PCI_FUNC(dfn & 0xff); d->vendor_id = vend >> 16U; d->device_id = vend & 0xffff; - known = PCI_FILL_IDENT; + known = 0; if (!a->buscentric) { - known |= PCI_FILL_IRQ | PCI_FILL_BASES; + known |= PCI_FILL_IDENT | PCI_FILL_IRQ | PCI_FILL_BASES; if (cnt >= 10) known |= PCI_FILL_ROM_BASE; if (cnt >= 17)