By having a look at the arch/i386/oprofile/nmi_int.c, it seems that Oprofile will return a none cpu_type if the cpu model is larger than 0xd (13). 14 for core, 15 for core_2.

My Xeon E5450 has the same family with Core_2 (family 6) but with a model of 23.

This might be the problem. I am manually setting the cpu_type to be core_2 (seems the processor is still based on core microarchitecture).

Recompiling the kernel, hope it works...
Jia.

On Thu, Aug 7, 2008 at 2:40 PM, Jia Rao <rickenrao@gmail.com> wrote:
Hi all,

I am having a problem reading any performance counter values using oprofile on our new machines.

We have a cluster of Dell PowerEdge boxes each of which is configured with two Intel Xeon E5450 processors(45nm, quad core).

I installed oprofile both from source and yum, however it can not read any sample data from the hardware. The error message I got is:
opreport error: No sample file found: try running opcontrol --dump or specify a session containing sample files.

I ran opcontrol -l to list the event, it is strange that the cpu type is P III.
I did enable oprofile in the kernel config by compiling a new native 2.6.18 kernel as well as a xen kernel. I had experience install oprofile and xenoprof in my previous machine (Intel Core 2), having no problem. I am wondering whether it is the problem of oprofile for the new processor.

The informantion you may want to know:
1. CPU: Two Xeon E5450 quad core.
2. OS: CentOS 5.1 Kernel: 2.6.18 (oprofile enabled)
3. Oprofile: 0.9.3 (install from yum and source, xenoprof enabled)

Any ideas?

Thanks in advance,
Jia