Yanmin,

On Mon, Oct 22, 2007 at 10:55:08AM +0800, Zhang, Yanmin wrote:
> > static int pfm_core_probe_pmu(void)
> > {
> >         unsigned int i;
> > 
> >         /*
> >          * Check for Intel Core processor explicitely
> >          * Checking for cpu_has_perfmon is not enough as this
> >          * matches intel Core Duo/Core Solo but none supports
> >          * PEBS.
> >          *
> >          * Intel Core = arch perfmon v2 + PEBS
> >          */
> >         if (cpu_data->x86 != 6 || cpu_data->x86_model != 15)
> > 
> > If you come in with 6,14, this should fail. But it seems you have things
> > compiled in, so maybe there is something wrong there
>
> I ran into the same issue on my new quad-core machine. Is there any update?
> 
> My cpu family is 6 and model is 15.
> 
I was able to reproduce the problem by compiling all perfmon modules as builtin.

I think this comes from the fact that perfmon module initialization occurs 
BEFORE
the cpu_data structure is initialized.  I think the fix is to rely on 
boot_cpu_data
and not just cpu_data. I am going to verify this.

Thanks.


-- 

-Stephane
_______________________________________________
perfmon mailing list
[email protected]
http://www.hpl.hp.com/hosted/linux/mail-archives/perfmon/

Reply via email to