From owner-freebsd-current@FreeBSD.ORG Mon Sep 8 21:30:42 2008 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 53133106568C for ; Mon, 8 Sep 2008 21:30:42 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (bigknife-pt.tunnel.tserv9.chi1.ipv6.he.net [IPv6:2001:470:1f10:75::2]) by mx1.freebsd.org (Postfix) with ESMTP id C83A78FC21 for ; Mon, 8 Sep 2008 21:30:41 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from zion.baldwin.cx (zion.baldwin.cx [IPv6:2001:470:1f11:75:2a0:d2ff:fe18:8b38]) (authenticated bits=0) by server.baldwin.cx (8.14.2/8.14.2) with ESMTP id m88LUZtQ096483; Mon, 8 Sep 2008 17:30:35 -0400 (EDT) (envelope-from jhb@freebsd.org) From: John Baldwin To: "Pascal Hofstee" Date: Mon, 8 Sep 2008 16:50:38 -0400 User-Agent: KMail/1.9.7 References: <200809021033.55033.jhb@freebsd.org> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200809081650.38774.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH authentication, not delayed by milter-greylist-2.0.2 (server.baldwin.cx [IPv6:2001:470:1f11:75::1]); Mon, 08 Sep 2008 17:30:35 -0400 (EDT) X-Virus-Scanned: ClamAV 0.93.1/8162/Thu Sep 4 12:38:45 2008 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-2.6 required=4.2 tests=AWL,BAYES_00,NO_RELAYS autolearn=ham version=3.1.3 X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on server.baldwin.cx Cc: freebsd-current@freebsd.org, Christian Weisgerber Subject: Re: No root filesystem X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Sep 2008 21:30:42 -0000 On Tuesday 02 September 2008 01:41:24 pm Pascal Hofstee wrote: > On Tue, Sep 2, 2008 at 4:33 PM, John Baldwin 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 http://www.FreeBSD.org/~jhb/patches/pcie.patch > > > > 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@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. :-( Try http://www.FreeBSD.org/~jhb/patches/pcie_mcfg_k8.patch -- John Baldwin