Re: Loading drivers via kldload
- From: John Baldwin <jhb@xxxxxxxxxxx>
- Date: Tue, 16 Aug 2011 15:09:09 -0400
On Tuesday, August 16, 2011 12:26:11 pm Andriy Gapon wrote:
The following are pure speculations, I'd rather let David speak, but just in case;
on 16/08/2011 18:45 John Baldwin said the following:
Well, that would seem odd, still. It only returns BUS_PROBE_GENERIC (not 0), so
David's driver's probe routine should still be called to get a chance to attach to
the device.
Maybe it doesn't do that exactly because device and vendor ID are zeroes as David
described earlier.
Eh? device_probe_and_attach()'s loop to probe drivers is not PCI-specific, it
has no idea if a given device is PCI device or not let alone if it has non-zero
subvendor IDs. Also, ata_pci_probe() doesn't look at the subvendor IDs at all.
Also, the ATA driver only allocates its BAR once, so it shouldn't
trigger the panic in question in that case (the panic is only triggered when you
try to double-allocate a BAR).
This makes only if the BAR has sane values. Not sure what happens if the BAR has
some junk that duplicates other PCI device, or something like that.
The panic in question is due to a resource that was reserved by the parent
bus (i.e. either ACPI or PCI) using resource_list_reserve(), then a driver
called resource_list_alloc() on it once successfully, and
resource_list_alloc() is being called a second time to allocate an already-
allocated resource. That won't happen due to junk in a BAR (and BARs are
all standard config header registers anyway).
--
John Baldwin
_______________________________________________
freebsd-current@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscribe@xxxxxxxxxxx"
- Follow-Ups:
- Re: Loading drivers via kldload
- From: Andriy Gapon
- Re: Loading drivers via kldload
- References:
- Loading drivers via kldload
- From: David Somayajulu
- Re: Loading drivers via kldload
- From: John Baldwin
- Re: Loading drivers via kldload
- From: Andriy Gapon
- Loading drivers via kldload
- Prev by Date: LibreOffice 3.3.3.1 hangs
- Next by Date: Re: Loading drivers via kldload
- Previous by thread: RE: Loading drivers via kldload
- Next by thread: Re: Loading drivers via kldload
- Index(es):
Relevant Pages
|