* Re: [PATCH] lspci: Skip scanning empty slot in sysfs_fill_slots [not found] <526F4EB4.4090101@linux.vnet.ibm.com> @ 2013-10-29 12:09 ` Martin Mares 2013-10-30 3:05 ` Zheng Huai Cheng 0 siblings, 1 reply; 3+ messages in thread From: Martin Mares @ 2013-10-29 12:09 UTC (permalink / raw) To: Zheng Huai Cheng; +Cc: linux-pci Hello! > When slot is empty, lspci will report "pcilib: sysfs_fill_slots: > Couldn't parse entry address 0000:01",this is because address entry will > only contain domain and bus number when the slot is empty. > > [root@uselp6 ~]# cat /sys/bus/pci/slots/U5802.001.RCHB059-P1-C7/address > 0000:01 Is this behavior intentional? It does not make much sense to me. Have a nice fortnight -- Martin `MJ' Mares <mj@ucw.cz> http://mj.ucw.cz/ Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth This line is umop apisdn. ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] lspci: Skip scanning empty slot in sysfs_fill_slots 2013-10-29 12:09 ` [PATCH] lspci: Skip scanning empty slot in sysfs_fill_slots Martin Mares @ 2013-10-30 3:05 ` Zheng Huai Cheng 2013-11-10 11:41 ` Martin Mares 0 siblings, 1 reply; 3+ messages in thread From: Zheng Huai Cheng @ 2013-10-30 3:05 UTC (permalink / raw) To: Martin Mares; +Cc: linux-pci On Tue, 2013-10-29 at 13:09 +0100, Martin Mares wrote: > Hello! > > > When slot is empty, lspci will report "pcilib: sysfs_fill_slots: > > Couldn't parse entry address 0000:01",this is because address entry will > > only contain domain and bus number when the slot is empty. > > > > [root@uselp6 ~]# cat /sys/bus/pci/slots/U5802.001.RCHB059-P1-C7/address > > 0000:01 > Is this behavior intentional? It does not make much sense to me. > > Have a nice fortnight although I am not a expert in PCI, seems this related to PCI hotplug. And I also found a description in kernel source code " Placeholder slots: In most cases, @pci_bus, @slot_nr will be sufficient to uniquely identify a slot. There is one notable exception - pSeries (rpaphp), where the @slot_nr cannot be determined until a device is actually inserted into the slot. In this scenario, the caller may pass -1 for @slot_nr.The following semantics are imposed when the caller passes @slot_nr == -1. First, we no longer check for an existing %struct pci_slot, as there may be many slots with @slot_nr of -1. The other change in semantics is user-visible, which is the 'address' parameter presented in sysfs will consist solely of a dddd:bb tuple, where dddd is the PCI domain of the %struct pci_bus and bb is the bus number. In other words, the devfn of the 'placeholder' slot will not be displayed. " so when slots are empty in some cases, "address" solely contain dddd:bb tuple. But lspci will originally assume address in dddd:dd:dd tuple. so we should skip dddd:bb case in sysfs_fill_slots ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] lspci: Skip scanning empty slot in sysfs_fill_slots 2013-10-30 3:05 ` Zheng Huai Cheng @ 2013-11-10 11:41 ` Martin Mares 0 siblings, 0 replies; 3+ messages in thread From: Martin Mares @ 2013-11-10 11:41 UTC (permalink / raw) To: Zheng Huai Cheng; +Cc: linux-pci Hello! > although I am not a expert in PCI, seems this related to PCI hotplug. > And I also found a description in kernel source code > > " > Placeholder slots: [...] Thanks for the explanation. I have just applied a fix similar to yours. Have a nice fortnight -- Martin `MJ' Mares <mj@ucw.cz> http://mj.ucw.cz/ Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth A LISP programmer knows value of everything, but cost of nothing. ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-11-10 11:41 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <526F4EB4.4090101@linux.vnet.ibm.com> 2013-10-29 12:09 ` [PATCH] lspci: Skip scanning empty slot in sysfs_fill_slots Martin Mares 2013-10-30 3:05 ` Zheng Huai Cheng 2013-11-10 11:41 ` Martin Mares
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).