kern/118842: [apic] Boot failure with apic enabled (FreeBSD 7)
Luoqi Chen
Luoqi.Chen at brion.com
Thu Jul 17 10:10:03 UTC 2008
The following reply was made to PR kern/118842; it has been noted by GNATS.
From: Luoqi Chen <Luoqi.Chen at brion.com>
To: "bug-followup at FreeBSD.org" <bug-followup at FreeBSD.org>,
"dragonsa at highveldmail.co.za" <dragonsa at highveldmail.co.za>,
"jhb at freebsd.org" <jhb at freebsd.org>
Cc:
Subject: Re: kern/118842: [apic] Boot failure with apic enabled (FreeBSD 7)
Date: Thu, 17 Jul 2008 02:44:00 -0700
I've identified the cause: the SATA device in nForce chipset has the HyperT=
ransport MSI mapping capability, and we unconditionally enable the MSI->HT =
mapping even though we don't use MSI in our ATA driver, this likely confuse=
d the device.
John, it is unclear to me why we enable the MSI->HT mapping at all given th=
at we always allocate MSI addresses from local APIC. To utilize HT interrup=
t mechanism, shouldn't we be programming MSI with addresses from the HT MSI=
mapping capability register (the device's or that of a parent bridge)?
For those who are having the same problem, please try commenting out the MS=
I mapping enabling code and see if it works for you,
Index: pci.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /home/ncvs/src/sys/dev/pci/pci.c,v
retrieving revision 1.355.2.2
diff -u -r1.355.2.2 pci.c
--- pci.c 12 Feb 2008 20:20:56 -0000 1.355.2.2
+++ pci.c 17 Jul 2008 09:36:12 -0000
@@ -564,9 +564,11 @@
(long long)addr);
}
+#if 0
/* Enable MSI -> HT mapping. */
val |=3D PCIM_HTCMD_MSI_ENABLE;
WREG(ptr + PCIR_HT_COMMAND, val, 2);
+#endif
break;
}
break;
Thanks
-lq
More information about the freebsd-bugs
mailing list