Commit 12a81c8d authored by Ingo Molnar's avatar Ingo Molnar

Merge branch 'core' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile into perf/core

parents 43d7383b 729419f0
...@@ -634,6 +634,18 @@ static int __init ppro_init(char **cpu_type) ...@@ -634,6 +634,18 @@ static int __init ppro_init(char **cpu_type)
if (force_arch_perfmon && cpu_has_arch_perfmon) if (force_arch_perfmon && cpu_has_arch_perfmon)
return 0; return 0;
/*
* Documentation on identifying Intel processors by CPU family
* and model can be found in the Intel Software Developer's
* Manuals (SDM):
*
* http://www.intel.com/products/processor/manuals/
*
* As of May 2010 the documentation for this was in the:
* "Intel 64 and IA-32 Architectures Software Developer's
* Manual Volume 3B: System Programming Guide", "Table B-1
* CPUID Signature Values of DisplayFamily_DisplayModel".
*/
switch (cpu_model) { switch (cpu_model) {
case 0 ... 2: case 0 ... 2:
*cpu_type = "i386/ppro"; *cpu_type = "i386/ppro";
...@@ -655,12 +667,12 @@ static int __init ppro_init(char **cpu_type) ...@@ -655,12 +667,12 @@ static int __init ppro_init(char **cpu_type)
case 15: case 23: case 15: case 23:
*cpu_type = "i386/core_2"; *cpu_type = "i386/core_2";
break; break;
case 0x1a:
case 0x2e: case 0x2e:
case 26:
spec = &op_arch_perfmon_spec; spec = &op_arch_perfmon_spec;
*cpu_type = "i386/core_i7"; *cpu_type = "i386/core_i7";
break; break;
case 28: case 0x1c:
*cpu_type = "i386/atom"; *cpu_type = "i386/atom";
break; break;
default: default:
......
...@@ -135,7 +135,7 @@ static int event_buffer_open(struct inode *inode, struct file *file) ...@@ -135,7 +135,7 @@ static int event_buffer_open(struct inode *inode, struct file *file)
* echo 1 >/dev/oprofile/enable * echo 1 >/dev/oprofile/enable
*/ */
return 0; return nonseekable_open(inode, file);
fail: fail:
dcookie_unregister(file->private_data); dcookie_unregister(file->private_data);
...@@ -205,4 +205,5 @@ const struct file_operations event_buffer_fops = { ...@@ -205,4 +205,5 @@ const struct file_operations event_buffer_fops = {
.open = event_buffer_open, .open = event_buffer_open,
.release = event_buffer_release, .release = event_buffer_release,
.read = event_buffer_read, .read = event_buffer_read,
.llseek = no_llseek,
}; };
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment