|
Revision tags: v3.14.0, v3.13.0, v3.12.0, v3.11.1, v3.11.0 |
|
| #
61829219 |
| 18-Jun-2023 |
Martin Mares <[email protected]> |
Update license comments and added SPDX license identifiers
Previously, the only information about the specific version of GPL was present in the README and individual source files mentioned only GPL
Update license comments and added SPDX license identifiers
Previously, the only information about the specific version of GPL was present in the README and individual source files mentioned only GPL alone.
Let us update all copyright comments to explicitly say "GPL v2+" and also include the machine readable SPDX license identifier.
show more ...
|
|
Revision tags: v3.10.0 |
|
| #
6662052f |
| 22-Apr-2023 |
Pali Rohár <[email protected]> |
ls-tree: Print PCI domains in ascending order
|
| #
7eb87449 |
| 22-Apr-2023 |
Pali Rohár <[email protected]> |
ls-tree: Fix parsing devices on multidomain PCI system
Represent each domain as domain bridge under the &host_bridge and put root bus of each domain under the domain bridge.
With this change lspci
ls-tree: Fix parsing devices on multidomain PCI system
Represent each domain as domain bridge under the &host_bridge and put root bus of each domain under the domain bridge.
With this change lspci in tree view does not show zero bus on domain 0 in the output if this bus does not exist at all. Root bus in PCIe hierarchy does not have to be zero and on Freescale PowerPC systems it is common.
Also with this change are separate domain showed in the output separately.
show more ...
|
| #
5b0411aa |
| 17-Apr-2023 |
Pali Rohár <[email protected]> |
ls-tree: Rename struct bridge member next to prev
It refers to the previous value in linked-list, not to the next.
|
| #
c3c2e3cb |
| 17-Apr-2023 |
Pali Rohár <[email protected]> |
ls-tree: Do not read Primary Bus Number for PCI Bridges from PCI config space
For PCIe devices of PCI Bridge type is Primary Bus Number not used and the default value is 0. PCIe devices capture thei
ls-tree: Do not read Primary Bus Number for PCI Bridges from PCI config space
For PCIe devices of PCI Bridge type is Primary Bus Number not used and the default value is 0. PCIe devices capture their Bus and Device numbers automatically from PCIe TLP packets.
Instead of Primary Bus Number use Device Number because zero value confuse tree building algorithm. Existing code already expects that Device Number of PCI Bridge is already set to Primary Bus Number.
show more ...
|
| #
f0aa3a46 |
| 11-Apr-2023 |
Pali Rohár <[email protected]> |
lspci: Fix bridge filter support in tree view
Correctly show whole subtree of PCI-to-PCI bridge in tree view when filter (-s or -d option) was specified for PCI-to-PCI bridge device itself.
|
|
Revision tags: v3.9.0 |
|
| #
82dfc667 |
| 29-Oct-2022 |
Pali Rohár <[email protected]> |
lspci: Fix filter support (-s/-d) for subtrees in tree mode (-t)
|
|
Revision tags: v3.8.0 |
|
| #
7eb8b947 |
| 27-Feb-2022 |
Pali Rohár <[email protected]> |
lspci: Fix handling of truncated lines for msvcrt.dll
msvcrt.dll's vsnprintf() implementation does not fill terminating null byte when overflow occurs and buffer size is returned.
|
| #
832b07a8 |
| 28-Dec-2021 |
Pali Rohár <[email protected]> |
lspci: Do not access config space when it is emulated
Emulated config space contains only few information so it could look like some valid config space. libpci compose emulated config space either f
lspci: Do not access config space when it is emulated
Emulated config space contains only few information so it could look like some valid config space. libpci compose emulated config space either from struct pci_dev or put some fake information (when struct pci_dev does not have them).
To prevent showing to user fake/bogus information about PCI devices, show only information which are directly stored in struct pci_dev when emulated config space is used.
Do it via setting lspci's header type to invalid value (byte)-1, so lspci code will handle device as unknown without trying to interpret values config space. This header type is set only in lspci, not in libpci, so other libpci applications would see valid config space.
lspci users are probably not interested in fake information provided by libpci just for purpose to export syntactically valid config space. Information stored in struct pci_dev are the correct one (or rather what OS things that is correct).
show more ...
|
| #
fd9c6a29 |
| 31-Dec-2021 |
Pali Rohár <[email protected]> |
lspci: Do not show -[00]- bus in tree output
Secondary or subordinate bus cannot be zero. Zero value could indicate either invalid secondary bus value or the fact that secondary bus value was not fi
lspci: Do not show -[00]- bus in tree output
Secondary or subordinate bus cannot be zero. Zero value could indicate either invalid secondary bus value or the fact that secondary bus value was not filled or indicates non-compliant PCI-to-PCI bridge. This change makes tree output better readable when bus numbers are not known or not provided.
show more ...
|
| #
67954c8b |
| 28-Dec-2021 |
Pali Rohár <[email protected]> |
lspci: Build tree based on PCI_FILL_PARENT information
Topology reported by system (libpci provider) may be different from topology built based on primary/secondary/subordinate numbers from PCI brid
lspci: Build tree based on PCI_FILL_PARENT information
Topology reported by system (libpci provider) may be different from topology built based on primary/secondary/subordinate numbers from PCI bridges by lspci.
This happens for example when some non-compliant PCI-to-PCI bridge with Type 0 header (e.g. Marvell one) is available in the system.
So add additional edges reported by libpci when building tree in lspci.
show more ...
|
| #
d1b22bb0 |
| 28-Dec-2021 |
Martin Mares <[email protected]> |
ls-tree: Fix handling of truncated lines
|
| #
b1cff3a4 |
| 26-Dec-2021 |
Pali Rohár <[email protected]> |
lspci: Print buses of multibus PCI domain in ascending order
Currently PCI domains are printed in ascending order. Devices on each PCI bus are also printed in ascending order. PCI buses behind PCI-t
lspci: Print buses of multibus PCI domain in ascending order
Currently PCI domains are printed in ascending order. Devices on each PCI bus are also printed in ascending order. PCI buses behind PCI-to-PCI bridges are also printed in ascending order.
But buses of PCI domain are currently printed in descending order because function new_bus() puts newly created bus at the beginning of linked list.
In most cases PCI domain contains only one (top level) bus, so in most cases it is not visible this inconsistency.
Multibus PCI domains (where PCI domain contains more independent top level PCI buses) are available on ARM devices.
This change fixes print order of multibus PCI domains, so also top level PCI buses are printed in ascending order, like PCI buses behind PCI-to-PCI bridges.
show more ...
|
|
Revision tags: v3.7.0, v3.6.4, v3.6.3 |
|
| #
76d47191 |
| 22-Jan-2020 |
Martin Mares <[email protected]> |
Fixed buffer overflows in ls-tree.c
As reported in GitHub issue #24, tree dumping mode can smash the stack if the hierarchy of buses is too deep.
Increased line buffer size to 1024 and switched to
Fixed buffer overflows in ls-tree.c
As reported in GitHub issue #24, tree dumping mode can smash the stack if the hierarchy of buses is too deep.
Increased line buffer size to 1024 and switched to use of snprintf everywhere, so that in the worst case, the line is truncated.
As snprintf can be problematic on obscure platforms, I wrapped it in tree_printf(), so that we can add #ifdefs should problems arise.
show more ...
|
| #
888ddf0e |
| 18-Sep-2018 |
Gera Kazakov <[email protected]> |
lspci: Allow -s with -t to show a subtree
|
|
Revision tags: v3.6.2 |
|
| #
ce22dfec |
| 12-Aug-2018 |
Martin Mares <[email protected]> |
Topology now works in combination with filters
If bus topology is needed, we scan all devices regardless of filters, and apply the filters later when showing devices.
Also, we forbid several imposs
Topology now works in combination with filters
If bus topology is needed, we scan all devices regardless of filters, and apply the filters later when showing devices.
Also, we forbid several impossible combinations of options: tree mode with filters, bus mapping mode with anything requiring topology.
show more ...
|
| #
f558905d |
| 12-Aug-2018 |
Martin Mares <[email protected]> |
Tree: Detect bridges properly
Previously, only PCI_CLASS_BRIDGE_PCI was considered, which excluded CardBus bridges. We now accept anything of the base class "bridge" with the proper header type.
Al
Tree: Detect bridges properly
Previously, only PCI_CLASS_BRIDGE_PCI was considered, which excluded CardBus bridges. We now accept anything of the base class "bridge" with the proper header type.
Also added a bunch of debugging messages.
show more ...
|
| #
6b056c8e |
| 10-Aug-2018 |
Martin Mares <[email protected]> |
Generalized topology computation in ls-tree.c
The topology tree is now independent of the plain device list and it can be traversed in both top-to-bottom and bottom-to-top directions.
|
|
Revision tags: v3.6.1, v3.6.0, v3.5.6, v3.5.5, v3.5.4, v3.5.3, v3.5.2, v3.5.1, v3.5.0 |
|
| #
ab61451d |
| 17-Mar-2016 |
Keith Busch <[email protected]> |
pciutils: Add support for 32-bit PCI domains
This adds support for new host bridges that may create PCI domain number values requiring more than 16 bits. The new domain 32-bit integer is signed to a
pciutils: Add support for 32-bit PCI domains
This adds support for new host bridges that may create PCI domain number values requiring more than 16 bits. The new domain 32-bit integer is signed to allow -1 for "any", and is sufficient as the domain number will never require the full 32-bits.
The domain field is appended at the end of struct pci_dev, and the current location of the 16-bit domain remains for compatibility. The domain number is truncated and copied into the legacy domain location so existing applications linking to the library will continue to work without modification. We accept that these applications may not work correctly on machines with host bridges exporting 32-bit domains.
In order to force new programs to link to the new ABI, the pci_init function call is versioned in this commit.
Signed-off-by: Keith Busch <[email protected]>
show more ...
|
|
Revision tags: v3.4.1, v3.4.0, v3.3.1, v3.3.0, v3.2.1, v3.2.0, v3.1.10, v3.1.9, v3.1.8, v3.1.7, v3.1.6, v3.1.5, v3.1.4, v3.1.3 |
|
| #
886263b3 |
| 04-Jul-2009 |
Matthew Wilcox <[email protected]> |
lspci -t: Only show the domain at the root of the tree
Children always have the same domain as their parents, so it's redundant information, and it makes the tree display too wide.
|
|
Revision tags: v3.1.2, v3.1.1, v3.1.0, v3.1-alpha3, v3.1-alpha2 |
|
| #
c7a34993 |
| 21-Nov-2008 |
Martin Mares <[email protected]> |
Split lspci to multiple source files.
|