IBM xSeries 336 dual Xeon hangs on boot when APIC enabled

John Baldwin jhb at freebsd.org
Tue Aug 15 12:16:26 UTC 2006


On Tuesday 15 August 2006 05:25, Arjan van Leeuwen wrote:
> 2006/8/14, John Baldwin <jhb at freebsd.org>:
> >
> > On Monday 14 August 2006 04:45, Arjan van Leeuwen wrote:
> > > 2006/8/13, Michael Landin Hostbaek <mich at freebsd.org>:
> > > >
> > > > Arjan van Leeuwen (avleeuwen) writes:
> > > > > I'm trying to boot FreeBSD 6.1-RELEASE/amd64 on an IBM xSeries 336
> > > > machine
> > > > > with dual Xeons 3.2GHz installed.
> > > > >
> > > > > The installation was successful, but
> > > > > if I try to boot the SMP kernel, it hangs after detection of SCSI
> > and
> > > > ATA
> > > > > devices (possibly when doing the initialization of the mpt0 RAID
> > > > controller,
> > > > > or when it tries to start the second CPU?).
> > > > >
> > > >
> > > > I've just had a similar problem with an IBM xSeries 232 - it would not
> > > > boot with apic enabled.. I chased the problem down to the network
> > > > adapter (fxp) - and when disabling the planar ethernet in BIOS it
> > would
> > > > boot with SMP.
> > >
> > >
> > > Yes! Indeed, the system boots perfectly well if I disable both network
> > > adapters (bge, see
> > > dmesg.boot
> > >  posted earlier). However, I need at least one functioning network
> > adapter...
> > >
> > > I managed to get both NIC and SMP working by disabling a bunch of stuff
> > > > in the BIOS, fx both serial ports and also the floppy drive.
> > >
> > >
> > > ... and this doesn't seem to work for me.
> > >
> > > So:
> > > 1) Why does my system hang if I enable the network adapter?
> > > 2) Why does it only hang if APIC is enabled?
> > >
> > > Arjan
> >
> > Compile DDB into your SMP kernel.  When it 'hangs', break into ddb and run
> > 'show intrcnt' to see if you are having an interrupt storm.
> 
> 
> I can't break into DDB during the hang, it's not responding. I can do
> it just before the hang, but that doesn't seem very helpful.
> 
> Is there another way to force it to break?

If you can't break into DDB then it must be spinning with interrupts
disabled.  If you have firewire you can try running kgdb over firwire
to debug it.

-- 
John Baldwin


More information about the freebsd-stable mailing list