diff options
-rw-r--r-- | arch/x86/oprofile/nmi_int.c | 16 | ||||
-rw-r--r-- | drivers/oprofile/event_buffer.c | 3 |
2 files changed, 16 insertions, 3 deletions
diff --git a/arch/x86/oprofile/nmi_int.c b/arch/x86/oprofile/nmi_int.c index b28d2f1253bb..1ba67dc8006a 100644 --- a/arch/x86/oprofile/nmi_int.c +++ b/arch/x86/oprofile/nmi_int.c | |||
@@ -634,6 +634,18 @@ static int __init ppro_init(char **cpu_type) | |||
634 | if (force_arch_perfmon && cpu_has_arch_perfmon) | 634 | if (force_arch_perfmon && cpu_has_arch_perfmon) |
635 | return 0; | 635 | return 0; |
636 | 636 | ||
637 | /* | ||
638 | * Documentation on identifying Intel processors by CPU family | ||
639 | * and model can be found in the Intel Software Developer's | ||
640 | * Manuals (SDM): | ||
641 | * | ||
642 | * http://www.intel.com/products/processor/manuals/ | ||
643 | * | ||
644 | * As of May 2010 the documentation for this was in the: | ||
645 | * "Intel 64 and IA-32 Architectures Software Developer's | ||
646 | * Manual Volume 3B: System Programming Guide", "Table B-1 | ||
647 | * CPUID Signature Values of DisplayFamily_DisplayModel". | ||
648 | */ | ||
637 | switch (cpu_model) { | 649 | switch (cpu_model) { |
638 | case 0 ... 2: | 650 | case 0 ... 2: |
639 | *cpu_type = "i386/ppro"; | 651 | *cpu_type = "i386/ppro"; |
@@ -655,12 +667,12 @@ static int __init ppro_init(char **cpu_type) | |||
655 | case 15: case 23: | 667 | case 15: case 23: |
656 | *cpu_type = "i386/core_2"; | 668 | *cpu_type = "i386/core_2"; |
657 | break; | 669 | break; |
670 | case 0x1a: | ||
658 | case 0x2e: | 671 | case 0x2e: |
659 | case 26: | ||
660 | spec = &op_arch_perfmon_spec; | 672 | spec = &op_arch_perfmon_spec; |
661 | *cpu_type = "i386/core_i7"; | 673 | *cpu_type = "i386/core_i7"; |
662 | break; | 674 | break; |
663 | case 28: | 675 | case 0x1c: |
664 | *cpu_type = "i386/atom"; | 676 | *cpu_type = "i386/atom"; |
665 | break; | 677 | break; |
666 | default: | 678 | default: |
diff --git a/drivers/oprofile/event_buffer.c b/drivers/oprofile/event_buffer.c index 5df60a6b6776..dd87e86048be 100644 --- a/drivers/oprofile/event_buffer.c +++ b/drivers/oprofile/event_buffer.c | |||
@@ -135,7 +135,7 @@ static int event_buffer_open(struct inode *inode, struct file *file) | |||
135 | * echo 1 >/dev/oprofile/enable | 135 | * echo 1 >/dev/oprofile/enable |
136 | */ | 136 | */ |
137 | 137 | ||
138 | return 0; | 138 | return nonseekable_open(inode, file); |
139 | 139 | ||
140 | fail: | 140 | fail: |
141 | dcookie_unregister(file->private_data); | 141 | dcookie_unregister(file->private_data); |
@@ -205,4 +205,5 @@ const struct file_operations event_buffer_fops = { | |||
205 | .open = event_buffer_open, | 205 | .open = event_buffer_open, |
206 | .release = event_buffer_release, | 206 | .release = event_buffer_release, |
207 | .read = event_buffer_read, | 207 | .read = event_buffer_read, |
208 | .llseek = no_llseek, | ||
208 | }; | 209 | }; |