diff options
author | jhb <jhb@FreeBSD.org> | 2006-01-20 21:59:13 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2006-01-20 21:59:13 +0000 |
commit | 76788b459e8439347a498ab900465722b7a187cf (patch) | |
tree | eec17a9b197066f7f038be2d63c8c1ea557d7d1d /sys/dev/cardbus | |
parent | c959fdcd4e208eb80f6fb484d901544144df4ed5 (diff) | |
download | FreeBSD-src-76788b459e8439347a498ab900465722b7a187cf.zip FreeBSD-src-76788b459e8439347a498ab900465722b7a187cf.tar.gz |
When loading a driver that is a subclass of another driver don't set the
devclass's parent pointer if the two drivers share the same devclass. This
can happen if the drivers use the same new-bus name. For example, we
currently have 3 drivers that use the name "pci": the generic PCI bus
driver, the ACPI PCI bus driver, and the OpenFirmware PCI bus driver. If
the ACPI PCI bus driver was defined as a subclass of the generic PCI bus
driver, then without this check the "pci" devclass would point to itself
as its parent and device_probe_child() would spin forever when it
encountered the first PCI device that did have a matching driver.
Reviewed by: dfr, imp, new-bus@
Diffstat (limited to 'sys/dev/cardbus')
0 files changed, 0 insertions, 0 deletions