Boot panic w/7.2-STABLE on amd64: resource_list_alloc
John Baldwin
jhb at freebsd.org
Mon May 18 17:07:44 UTC 2009
On Sunday 17 May 2009 6:51:19 pm Alexander Motin wrote:
> John Baldwin wrote:
> > Sounds like the ATA driver is allocating the same BAR twice. Hmm, yes, it
> > allocates the resources once for each channel it seems in the ata_ali_sata
> > attachment. Looking in ata-chipset.c, all the other chipsets are good
about
> > allocating these resources in their chipinit routines rather than the
> > per-channel allocate routine. Well, except ata_pci_allocate() is also
> > busted. *sigh* I can work on a patch for HEAD if you are willing to
test.
>
> ata_pci_allocate() (now known as ata_pci_ch_attach()) is a different
> case. It uses allocation functions wrapped by the atapci "bus", so every
> channel uses it's own pair of RIDs.
Hmm, ok.
> Problem of ALI SATA is a bit different. As I understand, controller has
> two pairs of RIDs for 4 channels, so each channel should share resources
> with another one, just using different offset. Is there any other way to
> correctly handle two halves of same resource separately without teaching
> atapci to virtualize this as interrupts or handle it on controller level?
I will just fix the ALI attachment to handle this possibly by
using 'chipset_data' to cache resources.
--
John Baldwin
More information about the freebsd-stable
mailing list