/usr/share/systemtap/tapset/linux/perf.stp is in systemtap-common 2.3-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 | // pcl aka perf aka perf-events tapset
// Copyright (C) 2010 Red Hat Inc.
//
// This file is free software. You can redistribute it and/or modify it under
// the terms of the GNU General Public License (GPL), version 2.
// The type and config values are part of the sys_perf_event_open() ABI,
// 'perf_event_attr' struct. See <include/linux/perf_event.h>.
// PERF_TYPE_HW
probe perf.hw.cpu_cycles = perf.type(0).config(0) { }
probe perf.hw.instructions = perf.type(0).config(1) { }
probe perf.hw.cache_references = perf.type(0).config(2) { }
probe perf.hw.cache_misses = perf.type(0).config(3) { }
probe perf.hw.branch_instructions = perf.type(0).config(4) { }
probe perf.hw.branch_misses = perf.type(0).config(5) { }
probe perf.hw.bus_cycles = perf.type(0).config(6) { }
// PERF_TYPE_SOFTWARE
probe perf.sw.cpu_clock = perf.type(1).config(0) { }
probe perf.sw.task_clock = perf.type(1).config(1) { }
probe perf.sw.page_faults = perf.type(1).config(2) { }
probe perf.sw.context_switches = perf.type(1).config(3) { }
probe perf.sw.cpu_migrations = perf.type(1).config(4) { }
probe perf.sw.page_faults_min = perf.type(1).config(5) { }
probe perf.sw.page_faults_maj = perf.type(1).config(6) { }
probe perf.sw.alignment_faults = perf.type(1).config(7) { }
probe perf.sw.emulation_faults = perf.type(1).config(8) { }
// PERF_TYPE_TRACEPOINT: PR10745
// probe perf.tracepoint.FOO = perf.type(2).config(NNN) { }
// PERF_TYPE_HW_CACHE, encoded into config (cache_op_result_id<<16 | cache_op_id<<8 | cache_id)
probe perf.hw_cache.l1d.read.access = perf.type(3).config(0x000000) {}
probe perf.hw_cache.l1d.read.miss = perf.type(3).config(0x010000) {}
probe perf.hw_cache.l1d.write.access = perf.type(3).config(0x000100) {}
probe perf.hw_cache.l1d.write.miss = perf.type(3).config(0x010100) {}
probe perf.hw_cache.l1d.prefetch.access = perf.type(3).config(0x000200) {}
probe perf.hw_cache.l1d.prefetch.miss = perf.type(3).config(0x010200) {}
// according to kernel tools/perf/util/parse-events.c, WRITE not available
probe perf.hw_cache.l1i.read.access = perf.type(3).config(0x000001) {}
probe perf.hw_cache.l1i.read.miss = perf.type(3).config(0x010001) {}
//probe perf.hw_cache.l1i.write.access = perf.type(3).config(0x000101) {}
//probe perf.hw_cache.l1i.write.miss = perf.type(3).config(0x010101) {}
probe perf.hw_cache.l1i.prefetch.access = perf.type(3).config(0x000201) {}
probe perf.hw_cache.l1i.prefetch.miss = perf.type(3).config(0x010201) {}
probe perf.hw_cache.ll.read.access = perf.type(3).config(0x000002) {}
probe perf.hw_cache.ll.read.miss = perf.type(3).config(0x010002) {}
probe perf.hw_cache.ll.write.access = perf.type(3).config(0x000102) {}
probe perf.hw_cache.ll.write.miss = perf.type(3).config(0x010102) {}
probe perf.hw_cache.ll.prefetch.access = perf.type(3).config(0x000202) {}
probe perf.hw_cache.ll.prefetch.miss = perf.type(3).config(0x010202) {}
probe perf.hw_cache.dtlb.read.access = perf.type(3).config(0x000003) {}
probe perf.hw_cache.dtlb.read.miss = perf.type(3).config(0x010003) {}
probe perf.hw_cache.dtlb.write.access = perf.type(3).config(0x000103) {}
probe perf.hw_cache.dtlb.write.miss = perf.type(3).config(0x010103) {}
probe perf.hw_cache.dtlb.prefetch.access = perf.type(3).config(0x000203) {}
probe perf.hw_cache.dtlb.prefetch.miss = perf.type(3).config(0x010203) {}
// according to kernel tools/perf/util/parse-events.c, WRITE, PREFETCH not available
probe perf.hw_cache.itlb.read.access = perf.type(3).config(0x000004) {}
probe perf.hw_cache.itlb.read.miss = perf.type(3).config(0x010004) {}
//probe perf.hw_cache.itlb.write.access = perf.type(3).config(0x000104) {}
//probe perf.hw_cache.itlb.write.miss = perf.type(3).config(0x010104) {}
//probe perf.hw_cache.itlb.prefetch.access = perf.type(3).config(0x000204) {}
//probe perf.hw_cache.itlb.prefetch.miss = perf.type(3).config(0x010204) {}
// according to kernel tools/perf/util/parse-events.c, WRITE, PREFETCH not available
probe perf.hw_cache.bpu.read.access = perf.type(3).config(0x000005) {}
probe perf.hw_cache.bpu.read.miss = perf.type(3).config(0x010005) {}
//probe perf.hw_cache.bpu.write.access = perf.type(3).config(0x000105) {}
//probe perf.hw_cache.bpu.write.miss = perf.type(3).config(0x010105) {}
//probe perf.hw_cache.bpu.prefetch.access = perf.type(3).config(0x000205) {}
//probe perf.hw_cache.bpu.prefetch.miss = perf.type(3).config(0x010205) {}
|