Bug #11790
closed
ACPI method _CRS should be used to identify bus numbers during initial probe
Added by Paul Winder over 2 years ago.
Updated over 2 years ago.
Description
During boot the _BBN from ACPI are scanned to populate the PCI tree with bus root nodes.
Subsequently, a scan and enumeration is performed starting from bus 0 through to what ever is deemed to be maximum PCI bus number. During this scan, discovered devices are added to the device tree and initial device nodes are created. A consequence of this, is if the bus number pre-populated using the _BBN does not match any discovered devices we end up with a childless node.
These childless nodes can cause problems with libtopo which crashes when it encounters an empty root. libtopo should handle that situation better.
This issue addresses the reason for the empty root devices.
_BBN is not a reliable method for getting a bus number, a better way is to use the _CRS (current resource) ACPI method which holds the bus number actually assigned.
- Subject changed from APCI method _CRS should be used to identify bus numbers during initial probe to ACPI method _CRS should be used to identify bus numbers during initial probe
The change has been tested on various Supermicro systems from them X9, X10 and X11 family of products as well as the Celestica Athena.
Also denis@tambov.ru encountered a PCI enumeration issue brought up after applying #11609 which this resolved,
The change does not change PCI enumeration on running systems as long as /etc/devices/pci_unitaddr_persistent remains present. Fresh installation will use _CRS method, and removal of afore mentioned file will cause the PCI buses to be re-evaluated.
- Status changed from In Progress to Closed
- % Done changed from 80 to 100
git commit 3349e36e2896c71806ddaed726d65171a3045358
commit 3349e36e2896c71806ddaed726d65171a3045358
Author: Paul Winder <paul@winders.demon.co.uk>
Date: 2019-11-04T21:09:45.000Z
11790 ACPI method _CRS should be used to identify bus numbers during initial probe
Reviewed by: Andrew Stormont <andyjstormont@gmail.com>
Reviewed by: Toomas Soome <tsoome@me.com>
Reviewed by: Igor Kozhukhov <igor@dilos.org>
Reviewed by: Randy Fishel <randyf@sibernet.com>
Approved by: Dan McDonald <danmcd@joyent.com>
- Has duplicate Bug #11860: Use _CRS instead of _BBN to get assigned PCI bus added
Also available in: Atom
PDF