Port-i386 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Xeon X3430 = immediate panic



> On Mon, Nov 30, 2009 at 01:57:40PM +0100, Christoph Egger wrote:
> > > Tracing through the ENHANCED_SPEEDSTEP patch, the guilty rdmsr()
> > > is in p3_get_bus_clock():
> > > 
> > >          case 0xe: /* Core Duo/Solo */
> > >          case 0xf: /* Core Xeon */
> > >                  msr = rdmsr(MSR_FSB_FREQ);
> > >                  bus = (msr >> 0) & 0x7;
> > > 
> > > So it looks like this MSR, which is listed as
> > > "Core Duo/Solo only" in sys/arch/x86/include/specialreg.h
> > > (but is actually in pretty widespread 
> > > use in p3_get_bus_clock()) is no longer valid.
> > > 
> > > Perhaps we need a whole new function for i7 CPUs?
> > 
> > Correct.
> 
> Should the code also be more careful about probing CPU types it
> doesn't know about?

I would write three generic CPU probing functions.
One for Intel CPUs, one for AMD CPUs and one for unknown vendors.

Christoph


Home | Main Index | Thread Index | Old Index