No root filesystem

John Baldwin jhb at
Mon Sep 8 21:30:42 UTC 2008

On Tuesday 02 September 2008 01:41:24 pm Pascal Hofstee wrote:
> On Tue, Sep 2, 2008 at 4:33 PM, John Baldwin <jhb at> wrote:
> > This explains k8temp.  So my earlier test patch to Christian only checked
> > on i386 which is why it didn't find an issue before.  Try the updated
> > patch at
> >
> > This does PCI config reads using both methods and panics if it doesn't
> > get the same result.
> I had to adjust the patch slightly by actually initializing edata to
> -1 to get the kernel to actually build (WARNS was complaining about
> possibly uninitialized variable edata). I then booted the resulting
> kernel and got the following boot log:
> [snip earlier parts of boot log]
> acpi0: <090607 RSDT1001> on motherboard
> PCIe: Memory Mapped configuration base @ 0xe0000000
> ioapic0: routing intpin 9 (ISA IRQ 9) to vector 48
> acpi0: [MPSAFE]
> acpi0: [ITHREAD]
> acpi0: Power Button (fixed)
> panic: pci_cfgread(0:24:0, 11, 1) => 0x6, 0xff
> cpuid = 0
> According to pciconf -lv on a working kernel device 0:24:0 is the
> following: hostb0 at pci0:0:24:0:     class=0x060000 card=0x00000000
> chip=0x11001022 rev=0x00 hdr=0x00
>     vendor     = 'Advanced Micro Devices (AMD)'
>     device     = '(K8) Athlon 64/Opteron HyperTransport Technology
> Configuration'
>     class      = bridge
>     subclass   = HOST-PCI
> Which matches perfectly with the first previously mentioned missing
> devices that are normally attached to pcib0.

So Linux has a rather gross work-around for this (it's a hardware bug) where 
they check all the slots on bus 0, and if a device isn't found via MCFG, it 
falls back to using the old style config access.  That still doesn't explain 
the ata issue though.  Let me see if I can come up with a patch for this 
issue first, and then we can move on to the ATA one. :-(


John Baldwin

More information about the freebsd-current mailing list