Thinkpad R60 hangs when booting recent 8.4-STABLE
Don Lewis
truckman at FreeBSD.org
Thu May 1 05:55:55 UTC 2014
On 30 Apr, John Baldwin wrote:
> Are you up for doing some printf sleuthing? There are two odd things that I
> see so far:
>
> 1) the base address of 0. The question here is if pci_add_map() in
> sys/dev/pci/pci.c decides to set start to 0 explicitly, or if it happens
> further up the callchain (should be bus_alloc_resource calls in
> sys/dev/acpica/acpi_pcib_acpi.c, sys/x86/x86/nexus.c and then in the
> rman code itself in sys/kern/subr_rman.c)
>
> 2) The 'reserved' printfs during boot probe. Those come from a printf in
> pci_alloc_resource() in sys/dev/pci/pci.c. However, that should not be called
> until a driver attaches to a device and calls bus_alloc_resource(). It should
> not be called from pci_add_child() as it seems to be now.
The call graph for the four earlier ones that you previously pointed
out (not hostb0) is:
pci_add_child()
pci_add_resources()
*_early_takeover()
[I suspect]
bus_alloc_resource_any()
pci_alloc_resource()
These are the three system uhci controllers and the system ehci
controller, which apparently pass this test:
pci_get_class(dev) == PCIC_SERIALBUS &&
pci_get_subclass(dev) == PCIS_SERIALBUS_USB
More information about the freebsd-stable
mailing list