Re: [PATCH] Update Alpha EV67 CPU support and remove all other Alpha CPU support
Maynard Johnson <[email protected]>
| Newsgroups | gmane.linux.oprofile |
|---|---|
| Message-ID | <[email protected]> |
On 08/15/2014 09:13 AM, Maynard Johnson wrote: > On 08/15/2014 05:39 AM, Michael Cree wrote: >> Only the EV67 and later CPUs are supported by the kernel performance >> events. Remove all older Alpha CPU support and update EV67 support >> to match the kernel implementation. >> > Michael, > As you mentioned in your other posting (preceding this patch posting), testing this > patch with operf fails with "perf_event_open failed with Operation not permitted". > Looking through kernel code in arch/alpha/kernel/perf_events.c, the only EPERM I > see is where it checks if any mode exclusion is done. And in fact, we do automatically > exclude hypervisor because oprofile post-processing tools and ocount have no support > for showing/not showing hypervisor counts. So I think it's a good bet that this is > what's causing your failure. Heh . . . I forgot to mention that I fixed this in your patch before I committed it. To be specific, I added alpha-specific code in libpe_utils/op_pe_utils.cpp to ensure no mode exclusion is done. -Maynard > Normally, I would want to ensure a patch actually *works* > before committing it, but I really want to get the 1.0 release candidate out today, > so I'll take a chance. If you still have problems, we'll fix them post-RC1, and I'll > have to do an RC2. Not a big deal. > > So, the upshot is I committed this patch upstream. Thanks much for your efforts! > > -Maynard >> Signed-off-by: Michael Cree <[email protected]> >> --- >> events/Makefile.am | 4 ---- >> events/alpha/ev4/events | 18 -------------- >> events/alpha/ev4/unit_masks | 4 ---- >> events/alpha/ev5/events | 49 --------------------------------------- >> events/alpha/ev5/unit_masks | 4 ---- >> events/alpha/ev6/events | 11 --------- >> events/alpha/ev6/unit_masks | 4 ---- >> events/alpha/ev67/events | 29 ++++------------------- >> events/alpha/pca56/events | 2 -- >> events/alpha/pca56/unit_masks | 3 --- >> libop/op_cpu_type.c | 31 +++++++++++++++++++++---- >> libop/op_cpu_type.h | 4 ---- >> libop/op_events.c | 5 +--- >> libop/op_hw_config.h | 4 ---- >> libop/tests/alloc_counter_tests.c | 15 ------------ >> libop/tests/cpu_type_tests.c | 4 ---- >> utils/ophelp.c | 4 ---- >> 17 files changed, 32 insertions(+), 163 deletions(-) >> delete mode 100644 events/alpha/ev4/events >> delete mode 100644 events/alpha/ev4/unit_masks >> delete mode 100644 events/alpha/ev5/events >> delete mode 100644 events/alpha/ev5/unit_masks >> delete mode 100644 events/alpha/ev6/events >> delete mode 100644 events/alpha/ev6/unit_masks >> delete mode 100644 events/alpha/pca56/events >> delete mode 100644 events/alpha/pca56/unit_masks >> >> diff --git a/events/Makefile.am b/events/Makefile.am >> index 14531cd..d68f0e8 100644 >> --- a/events/Makefile.am >> +++ b/events/Makefile.am >> @@ -1,9 +1,5 @@ >> event_files = \ >> - alpha/ev4/events alpha/ev4/unit_masks \ >> - alpha/ev5/events alpha/ev5/unit_masks \ >> alpha/ev67/events alpha/ev67/unit_masks \ >> - alpha/ev6/events alpha/ev6/unit_masks \ >> - alpha/pca56/events alpha/pca56/unit_masks \ >> i386/athlon/events i386/athlon/unit_masks \ >> i386/core_2/events i386/core_2/unit_masks \ >> i386/p4/events i386/p4-ht/events \ >> diff --git a/events/alpha/ev4/events b/events/alpha/ev4/events >> deleted file mode 100644 >> index 8b193d1..0000000 >> --- a/events/alpha/ev4/events >> +++ /dev/null >> @@ -1,18 +0,0 @@ >> -# Alpha EV4 events. >> -# >> -event:0x00 counters:0 um:zero minimum:4096 name:ISSUES : Total issues divided by 2 >> -event:0x02 counters:0 um:zero minimum:4096 name:PIPELINE_DRY : Nothing issued, no valid I-stream data >> -event:0x04 counters:0 um:zero minimum:4096 name:LOAD_INSNS : All load instructions >> -event:0x06 counters:0 um:zero minimum:4096 name:PIPELINE_FROZEN : Nothing issued, resource conflict >> -event:0x08 counters:0 um:zero minimum:4096 name:BRANCH_INSNS : All branches (conditional, unconditional, jsr, hw_rei) >> -event:0x0a counters:0 um:zero minimum:4096 name:CYCLES : Total cycles >> -event:0x0b counters:0 um:zero minimum:4096 name:PAL_MODE : Cycles while in PALcode environment >> -event:0x0c counters:0 um:zero minimum:4096 name:NON_ISSUES : Total nonissues divided by 2 >> -event:0x10 counters:0 um:zero minimum:256 name:DCACHE_MISSES : Total D-cache misses >> -event:0x11 counters:0 um:zero minimum:256 name:ICACHE_MISSES : Total I-cache misses >> -event:0x12 counters:0 um:zero minimum:256 name:DUAL_ISSUE_CYCLES : Cycles of dual issue >> -event:0x13 counters:0 um:zero minimum:256 name:BRANCH_MISPREDICTS : Branch mispredicts (conditional, jsr, hw_rei) >> -event:0x14 counters:0 um:zero minimum:256 name:FP_INSNS : FP operate instructions (not br, load, store) >> -event:0x15 counters:0 um:zero minimum:256 name:INTEGER_OPERATE : Integer operate instructions >> -event:0x16 counters:0 um:zero minimum:256 name:STORE_INSNS : Store instructions >> -# There's also EXTERNAL, by which we could monitor the 21066/21068 bus controller. >> diff --git a/events/alpha/ev4/unit_masks b/events/alpha/ev4/unit_masks >> deleted file mode 100644 >> index bc77cc8..0000000 >> --- a/events/alpha/ev4/unit_masks >> +++ /dev/null >> @@ -1,4 +0,0 @@ >> -# Alpha EV4 possible unit masks >> -# >> -name:zero type:mandatory default:0x0 >> - 0x0 No unit mask >> diff --git a/events/alpha/ev5/events b/events/alpha/ev5/events >> deleted file mode 100644 >> index 709e06a..0000000 >> --- a/events/alpha/ev5/events >> +++ /dev/null >> @@ -1,49 +0,0 @@ >> -# Alpha EV5 events >> -# >> -event:0x00 counters:0,2 um:zero minimum:256 name:CYCLES : Total cycles >> -event:0x01 counters:0 um:zero minimum:256 name:ISSUES : Total issues >> -event:0x02 counters:1 um:zero minimum:256 name:NON_ISSUE_CYCLES : Nothing issued, pipeline frozen >> -event:0x03 counters:1 um:zero minimum:256 name:SPLIT_ISSUE_CYCLES : Some but not all issuable instructions issued >> -event:0x04 counters:1 um:zero minimum:256 name:PIPELINE_DRY : Nothing issued, pipeline dry >> -event:0x05 counters:1 um:zero minimum:256 name:REPLAY_TRAP : Replay traps (ldu, wb/maf, litmus test) >> -event:0x06 counters:1 um:zero minimum:256 name:SINGLE_ISSUE_CYCLES : Single issue cycles >> -event:0x07 counters:1 um:zero minimum:256 name:DUAL_ISSUE_CYCLES : Dual issue cycles >> -event:0x08 counters:1 um:zero minimum:256 name:TRIPLE_ISSUE_CYCLES : Triple issue cycles >> -event:0x09 counters:1 um:zero minimum:256 name:QUAD_ISSUE_CYCLES : Quad issue cycles >> -event:0x0a counters:1 um:zero minimum:256 name:FLOW_CHANGE : Flow change (meaning depends on counter 2) >> -# ??? This one's dependent on the value in PCSEL2: If measuring PC_MISPR, >> -# this is jsr-ret instructions, if measuring BRANCH_MISPREDICTS, this is >> -# conditional branches, otherwise this is all branch insns, including hw_rei. >> -event:0x0b counters:1 um:zero minimum:256 name:INTEGER_OPERATE : Integer operate instructions >> -event:0x0c counters:1 um:zero minimum:256 name:FP_INSNS : FP operate instructions (not br, load, store) >> -# FIXME: Bug carried over >> -event:0x0c counters:1 um:zero minimum:256 name:LOAD_INSNS : Load instructions >> -event:0x0d counters:1 um:zero minimum:256 name:STORE_INSNS : Store instructions >> -event:0x0e counters:1 um:zero minimum:256 name:ICACHE_ACCESS : Instruction cache access >> -event:0x0f um:zero minimum:256 name:DCACHE_ACCESS : Data cache access >> -event:0x10 counters:2 um:zero minimum:256 name:LONG_STALLS : Stalls longer than 15 cycles >> -event:0x11 counters:2 um:zero minimum:256 name:PC_MISPR : PC mispredicts >> -event:0x12 counters:2 um:zero minimum:256 name:BRANCH_MISPREDICTS : Branch mispredicts >> -event:0x13 counters:2 um:zero minimum:256 name:ICACHE_MISSES : Instruction cache misses >> -event:0x14 counters:2 um:zero minimum:256 name:ITB_MISS : Instruction TLB miss >> -event:0x15 counters:2 um:zero minimum:256 name:DCACHE_MISSES : Data cache misses >> -event:0x16 counters:2 um:zero minimum:256 name:DTB_MISS : Data TLB miss >> -event:0x17 counters:2 um:zero minimum:256 name:LOADS_MERGED : Loads merged in MAF >> -event:0x18 counters:2 um:zero minimum:256 name:LDU_REPLAYS : LDU replay traps >> -event:0x19 counters:2 um:zero minimum:256 name:WB_MAF_FULL_REPLAYS : WB/MAF full replay traps >> -event:0x1a counters:2 um:zero minimum:256 name:MEM_BARRIER : Memory barrier instructions >> -event:0x1b counters:2 um:zero minimum:256 name:LOAD_LOCKED : LDx/L instructions >> -event:0x1c counters:1 um:zero minimum:256 name:SCACHE_ACCESS : S-cache access >> -event:0x1d counters:1 um:zero minimum:256 name:SCACHE_READ : S-cache read >> -event:0x1e counters:1,2 um:zero minimum:256 name:SCACHE_WRITE : S-cache write >> -event:0x1f counters:1 um:zero minimum:256 name:SCACHE_VICTIM : S-cache victim >> -event:0x20 counters:2 um:zero minimum:256 name:SCACHE_MISS : S-cache miss >> -event:0x21 counters:2 um:zero minimum:256 name:SCACHE_READ_MISS : S-cache read miss >> -event:0x22 counters:2 um:zero minimum:256 name:SCACHE_WRITE_MISS : S-cache write miss >> -event:0x23 counters:2 um:zero minimum:256 name:SCACHE_SH_WRITE : S-cache shared writes >> -event:0x24 counters:1 um:zero minimum:256 name:BCACHE_HIT : B-cache hit >> -event:0x25 counters:1 um:zero minimum:256 name:BCACHE_VICTIM : B-cache victim >> -event:0x26 counters:2 um:zero minimum:256 name:BCACHE_MISS : B-cache miss >> -event:0x27 counters:1 um:zero minimum:256 name:SYS_REQ : System requests >> -event:0x28 counters:2 um:zero minimum:256 name:SYS_INV : System invalidates >> -event:0x29 counters:2 um:zero minimum:256 name:SYS_READ_REQ : System read requests >> diff --git a/events/alpha/ev5/unit_masks b/events/alpha/ev5/unit_masks >> deleted file mode 100644 >> index 4f24fa9..0000000 >> --- a/events/alpha/ev5/unit_masks >> +++ /dev/null >> @@ -1,4 +0,0 @@ >> -# Alpha EV-5 possible unit masks >> -# >> -name:zero type:mandatory default:0x0 >> - 0x0 No unit mask >> diff --git a/events/alpha/ev6/events b/events/alpha/ev6/events >> deleted file mode 100644 >> index 2039cef..0000000 >> --- a/events/alpha/ev6/events >> +++ /dev/null >> @@ -1,11 +0,0 @@ >> -# Alpha EV6 events >> -# >> -event:0x00 counters:0,1 um:zero minimum:500 name:CYCLES : Total cycles >> -event:0x01 counters:1 um:zero minimum:500 name:RETIRED : Retired instructions >> -event:0x02 counters:1 um:zero minimum:500 name:COND_BRANCHES : Retired conditional branches >> -event:0x03 counters:1 um:zero minimum:500 name:BRANCH_MISPREDICTS : Retired branch mispredicts >> -event:0x04 counters:1 um:zero minimum:500 name:DTB_MISS : Retired DTB single misses * 2 >> -event:0x05 counters:1 um:zero minimum:500 name:DTB_DD_MISS : Retired DTB double double misses >> -event:0x06 counters:1 um:zero minimum:500 name:ITB_MISS : Retired ITB misses >> -event:0x07 counters:1 um:zero minimum:500 name:UNALIGNED_TRAP : Retired unaligned traps >> -event:0x08 counters:1 um:zero minimum:500 name:REPLAY_TRAP : Replay traps >> diff --git a/events/alpha/ev6/unit_masks b/events/alpha/ev6/unit_masks >> deleted file mode 100644 >> index bbe38c6..0000000 >> --- a/events/alpha/ev6/unit_masks >> +++ /dev/null >> @@ -1,4 +0,0 @@ >> -# Alpha EV-6 possible unit masks >> -# >> -name:zero type:mandatory default:0x0 >> - 0x0 No unit mask >> diff --git a/events/alpha/ev67/events b/events/alpha/ev67/events >> index b603871..6e62383 100644 >> --- a/events/alpha/ev67/events >> +++ b/events/alpha/ev67/events >> @@ -1,27 +1,6 @@ >> # Alpha EV-67 Events >> # >> -event:0x00 counters:0 um:zero minimum:500 name:CYCLES : Total cycles >> -event:0x01 counters:1 um:zero minimum:500 name:DELAYED_CYCLES : Cycles of delayed retire pointer advance >> -# FIXME: bug carried over >> -event:0x00 counters:0,1 um:zero minimum:500 name:RETIRED : Retired instructions >> -event:0x02 counters:1 um:zero minimum:500 name:BCACHE_MISS : Bcache misses/long probe latency >> -event:0x03 counters:1 um:zero minimum:500 name:MBOX_REPLAY : Mbox replay traps >> -# FIXME: all the below used PM_CTR >> -event:0x04 counters:0 um:zero minimum:500 name:STALLED_0 : PCTR0 triggered; stalled between fetch and map stages >> -event:0x05 counters:0 um:zero minimum:500 name:TAKEN_0 : PCTR0 triggered; branch was not mispredicted and taken >> -event:0x06 counters:0 um:zero minimum:500 name:MISPREDICT_0 : PCTR0 triggered; branch was mispredicted >> -event:0x07 counters:0 um:zero minimum:500 name:ITB_MISS_0 : PCTR0 triggered; ITB miss >> -event:0x08 counters:0 um:zero minimum:500 name:DTB_MISS_0 : PCTR0 triggered; DTB miss >> -event:0x09 counters:0 um:zero minimum:500 name:REPLAY_0 : PCTR0 triggered; replay trap >> -event:0x0a counters:0 um:zero minimum:500 name:LOAD_STORE_0 : PCTR0 triggered; load-store order replay trap >> -event:0x0b counters:0 um:zero minimum:500 name:ICACHE_MISS_0 : PCTR0 triggered; Icache miss >> -event:0x0c counters:0 um:zero minimum:500 name:UNALIGNED_0 : PCTR0 triggered; unaligned load/store trap >> -event:0x0d counters:0 um:zero minimum:500 name:STALLED_1 : PCTR1 triggered; stalled between fetch and map stages >> -event:0x0e counters:0 um:zero minimum:500 name:TAKEN_1 : PCTR1 triggered; branch was not mispredicted and taken >> -event:0x0f counters:0 um:zero minimum:500 name:MISPREDICT_1 : PCTR1 triggered; branch was mispredicted >> -event:0x10 counters:0 um:zero minimum:500 name:ITB_MISS_1 : PCTR1 triggered; ITB miss >> -event:0x11 counters:0 um:zero minimum:500 name:DTB_MISS_1 : PCTR1 triggered; DTB miss >> -event:0x12 counters:0 um:zero minimum:500 name:REPLAY_1 : PCTR1 triggered; replay trap >> -event:0x13 counters:0 um:zero minimum:500 name:LOAD_STORE_1 : PCTR1 triggered; load-store order replay trap >> -event:0x14 counters:0 um:zero minimum:500 name:ICACHE_MISS_1 : PCTR1 triggered; Icache miss >> -event:0x15 counters:0 um:zero minimum:500 name:UNALIGNED_1 : PCTR1 triggered; unaligned load/store trap >> +event:0x01 counters:0,1 um:zero minimum:500 name:CYCLES : Total cycles >> +event:0x02 counters:0 um:zero minimum:500 name:INSTRUCTIONS : Retired instructions >> +event:0x03 counters:1 um:zero minimum:500 name:BCACHE_MISS : Bcache misses/long probe latency >> +event:0x04 counters:1 um:zero minimum:500 name:MBOX_REPLAY : Mbox replay traps >> diff --git a/events/alpha/pca56/events b/events/alpha/pca56/events >> deleted file mode 100644 >> index 334babe..0000000 >> --- a/events/alpha/pca56/events >> +++ /dev/null >> @@ -1,2 +0,0 @@ >> -# PCA-56 >> -# FIXME: no events ? What's going on here Falk ? >> diff --git a/events/alpha/pca56/unit_masks b/events/alpha/pca56/unit_masks >> deleted file mode 100644 >> index 2b807b7..0000000 >> --- a/events/alpha/pca56/unit_masks >> +++ /dev/null >> @@ -1,3 +0,0 @@ >> -# Alpha PCA-56 possible unit masks >> -# >> -# FIXME: any events ...? >> diff --git a/libop/op_cpu_type.c b/libop/op_cpu_type.c >> index 90fa861..6ce1f13 100644 >> --- a/libop/op_cpu_type.c >> +++ b/libop/op_cpu_type.c >> @@ -49,10 +49,6 @@ static struct cpu_descr const cpu_descrs[MAX_CPU_TYPE] = { >> { "P4 / Xeon", "i386/p4", CPU_P4, 8 }, >> { "AMD64 processors", "x86-64/hammer", CPU_HAMMER, 4 }, >> { "P4 / Xeon with 2 hyper-threads", "i386/p4-ht", CPU_P4_HT2, 4 }, >> - { "Alpha EV4", "alpha/ev4", CPU_AXP_EV4, 2 }, >> - { "Alpha EV5", "alpha/ev5", CPU_AXP_EV5, 3 }, >> - { "Alpha PCA56", "alpha/pca56", CPU_AXP_PCA56, 3 }, >> - { "Alpha EV6", "alpha/ev6", CPU_AXP_EV6, 2 }, >> { "Alpha EV67", "alpha/ev67", CPU_AXP_EV67, 20 }, >> { "Pentium M (P6 core)", "i386/p6_mobile", CPU_P6_MOBILE, 2 }, >> { "ARM/XScale PMU1", "arm/xscale1", CPU_ARM_XSCALE1, 3 }, >> @@ -343,6 +339,30 @@ static op_cpu _get_ppc64_cpu_type(void) >> #endif >> >> >> +static char *alpha_cpu_models[] = { >> + "EV67", "EV68CB", "EV68AL", "EV68CX", "EV7", "EV79", "EV69", NULL >> +}; >> + >> + >> +static op_cpu _get_alpha_cpu_type(void) >> +{ >> + char *cpu_model; >> + char **p; >> + char line[100]; >> + >> + cpu_model = _get_cpuinfo_cpu_type(line, 100, "cpu model"); >> + if (!cpu_model) >> + return CPU_NO_GOOD; >> + >> + for (p = alpha_cpu_models; *p; p++) { >> + if (strcmp(cpu_model, *p) == 0) >> + return CPU_AXP_EV67; >> + } >> + >> + return CPU_NO_GOOD; >> +} >> + >> + >> static op_cpu _get_arm_cpu_type(void) >> { >> unsigned long cpuid, vendorid; >> @@ -668,6 +688,9 @@ static op_cpu __get_cpu_type(void) >> (strncmp(uname_info.machine, "ppc64le", 7) == 0)) { >> return _get_ppc64_cpu_type(); >> } >> + if (strncmp(uname_info.machine, "alpha", 5) == 0) { >> + return _get_alpha_cpu_type(); >> + } >> if (strncmp(uname_info.machine, "arm", 3) == 0 || >> strncmp(uname_info.machine, "aarch64", 7) == 0) { >> return _get_arm_cpu_type(); >> diff --git a/libop/op_cpu_type.h b/libop/op_cpu_type.h >> index a65918a..bd8170a 100644 >> --- a/libop/op_cpu_type.h >> +++ b/libop/op_cpu_type.h >> @@ -29,10 +29,6 @@ typedef enum { >> CPU_P4, /**< Pentium 4 / Xeon series */ >> CPU_HAMMER, /**< AMD Hammer family */ >> CPU_P4_HT2, /**< Pentium 4 / Xeon series with 2 hyper-threads */ >> - CPU_AXP_EV4, /**< Alpha EV4 family */ >> - CPU_AXP_EV5, /**< Alpha EV5 family */ >> - CPU_AXP_PCA56, /**< Alpha PCA56 family */ >> - CPU_AXP_EV6, /**< Alpha EV6 family */ >> CPU_AXP_EV67, /**< Alpha EV67 family */ >> CPU_P6_MOBILE, /**< Pentium M series */ >> CPU_ARM_XSCALE1, /**< ARM XScale 1 */ >> diff --git a/libop/op_events.c b/libop/op_events.c >> index d3eee60..8bfd3d2 100644 >> --- a/libop/op_events.c >> +++ b/libop/op_events.c >> @@ -1165,12 +1165,9 @@ void op_default_event(op_cpu cpu_type, struct op_default_event_descr * descr) >> descr->um = 0x1; >> break; >> >> - case CPU_AXP_EV4: >> - case CPU_AXP_EV5: >> - case CPU_AXP_PCA56: >> - case CPU_AXP_EV6: >> case CPU_AXP_EV67: >> descr->name = "CYCLES"; >> + descr->um = 0x1; >> break; >> >> // we could possibly use the CCNT >> diff --git a/libop/op_hw_config.h b/libop/op_hw_config.h >> index 169b36b..5969f1f 100644 >> --- a/libop/op_hw_config.h >> +++ b/libop/op_hw_config.h >> @@ -16,11 +16,7 @@ >> * use of this variable is for static/local array dimension. Never use it in >> * loop or in array index access/index checking unless you know what you >> * made. */ >> -#ifdef __alpha__ >> -#define OP_MAX_COUNTERS 20 >> -#else >> #define OP_MAX_COUNTERS 8 >> -#endif >> >> /** maximum number of events between interrupts. Counters are 40 bits, but >> * for convenience we only use 32 bits. The top bit is used for overflow >> diff --git a/libop/tests/alloc_counter_tests.c b/libop/tests/alloc_counter_tests.c >> index f14cc0c..d0da7a7 100644 >> --- a/libop/tests/alloc_counter_tests.c >> +++ b/libop/tests/alloc_counter_tests.c >> @@ -18,8 +18,6 @@ >> #include "op_cpu_type.h" >> #include "op_events.h" >> >> -/* FIXME: alpha description events need 20 but when running test on x86 >> - * OP_MAX_COUNTERS is 8, so we can't use it */ >> #define MAX_EVENTS 20 >> >> >> @@ -39,17 +37,6 @@ struct allocated_counter { >> }; >> >> >> -/* not more than MAX_EVENTS string for all these arrays */ >> -static char const * const events_alpha_ev4_1[] = { >> - "ISSUES:4096:0:1:1", >> - NULL >> -}; >> - >> -static char const * const events_alpha_ev4_2[] = { >> - "UNKNOWN_EVENT:4096:0:1:1", >> - NULL >> -}; >> - >> static char const * const events_ppro_1[] = { >> "CPU_CLK_UNHALTED:4096:0:1:1", >> NULL >> @@ -114,8 +101,6 @@ static char const * const events_mips_34k[] = { >> }; >> >> static struct allocated_counter const tests[] = { >> - { CPU_AXP_EV4, events_alpha_ev4_1, { 0 }, no_failure }, >> - { CPU_AXP_EV4, events_alpha_ev4_2, { -1 }, fail_to_find_event }, >> { CPU_PPRO, events_ppro_1, { 0 }, no_failure }, >> { CPU_PPRO, events_ppro_2, { 0, 1 }, no_failure }, >> { CPU_PPRO, events_ppro_3, { -1 }, fail_to_alloc_counter }, >> diff --git a/libop/tests/cpu_type_tests.c b/libop/tests/cpu_type_tests.c >> index beb0dee..468d351 100644 >> --- a/libop/tests/cpu_type_tests.c >> +++ b/libop/tests/cpu_type_tests.c >> @@ -27,10 +27,6 @@ static struct cpu_type { >> { "i386/p4", CPU_P4 }, >> { "x86-64/hammer", CPU_HAMMER }, >> { "i386/p4-ht", CPU_P4_HT2 }, >> - { "alpha/ev4", CPU_AXP_EV4 }, >> - { "alpha/ev5", CPU_AXP_EV5 }, >> - { "alpha/pca56", CPU_AXP_PCA56 }, >> - { "alpha/ev6", CPU_AXP_EV6 }, >> { "alpha/ev67", CPU_AXP_EV67 }, >> { "tile/tile64", CPU_TILE_TILE64 }, >> { "tile/tilepro", CPU_TILE_TILEPRO }, >> diff --git a/utils/ophelp.c b/utils/ophelp.c >> index b152db7..e38e417 100644 >> --- a/utils/ophelp.c >> +++ b/utils/ophelp.c >> @@ -559,10 +559,6 @@ int main(int argc, char const * argv[]) >> "This is a limited set of fallback events because oprofile doesn't know your CPU\n"; >> break; >> >> - case CPU_AXP_EV4: >> - case CPU_AXP_EV5: >> - case CPU_AXP_PCA56: >> - case CPU_AXP_EV6: >> case CPU_AXP_EV67: >> event_doc = >> "See Alpha Architecture Reference Manual\n" >> > > > ------------------------------------------------------------------------------ > _______________________________________________ > oprofile-list mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/oprofile-list > ------------------------------------------------------------------------------