Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Jul 2008 10:10:03 GMT
From:      Luoqi Chen <Luoqi.Chen@brion.com>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: kern/118842: [apic] Boot failure with apic enabled (FreeBSD 7)
Message-ID:  <200807171010.m6HAA3rN081457@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/118842; it has been noted by GNATS.

From: Luoqi Chen <Luoqi.Chen@brion.com>
To: "bug-followup@FreeBSD.org" <bug-followup@FreeBSD.org>,
	"dragonsa@highveldmail.co.za" <dragonsa@highveldmail.co.za>,
	"jhb@freebsd.org" <jhb@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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200807171010.m6HAA3rN081457>