Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull perf fixes from Ingo Molnar:
"Misc smaller fixes"

* 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
perf/x86: Fix leak in uncore_type_init failure paths
perf machine: Use map as success in ip__resolve_ams
perf symbols: Fix crash in elf_section_by_name
perf trace: Decode architecture-specific signal numbers

+15 -6
+2 -1
arch/x86/kernel/cpu/perf_event_intel_uncore.c
··· 3334 3334 if (!pmus) 3335 3335 return -ENOMEM; 3336 3336 3337 + type->pmus = pmus; 3338 + 3337 3339 type->unconstrainted = (struct event_constraint) 3338 3340 __EVENT_CONSTRAINT(0, (1ULL << type->num_counters) - 1, 3339 3341 0, type->num_counters, 0, 0); ··· 3371 3369 } 3372 3370 3373 3371 type->pmu_group = &uncore_pmu_attr_group; 3374 - type->pmus = pmus; 3375 3372 return 0; 3376 3373 fail: 3377 3374 uncore_type_exit(type);
+9 -1
tools/perf/builtin-trace.c
··· 825 825 P_SIGNUM(PIPE); 826 826 P_SIGNUM(ALRM); 827 827 P_SIGNUM(TERM); 828 - P_SIGNUM(STKFLT); 829 828 P_SIGNUM(CHLD); 830 829 P_SIGNUM(CONT); 831 830 P_SIGNUM(STOP); ··· 840 841 P_SIGNUM(IO); 841 842 P_SIGNUM(PWR); 842 843 P_SIGNUM(SYS); 844 + #ifdef SIGEMT 845 + P_SIGNUM(EMT); 846 + #endif 847 + #ifdef SIGSTKFLT 848 + P_SIGNUM(STKFLT); 849 + #endif 850 + #ifdef SIGSWI 851 + P_SIGNUM(SWI); 852 + #endif 843 853 default: break; 844 854 } 845 855
+1 -1
tools/perf/util/machine.c
··· 1213 1213 */ 1214 1214 thread__find_addr_location(thread, machine, m, MAP__FUNCTION, 1215 1215 ip, &al); 1216 - if (al.sym) 1216 + if (al.map) 1217 1217 goto found; 1218 1218 } 1219 1219 found:
+3 -3
tools/perf/util/symbol-elf.c
··· 151 151 152 152 gelf_getshdr(sec, shp); 153 153 str = elf_strptr(elf, ep->e_shstrndx, shp->sh_name); 154 - if (!strcmp(name, str)) { 154 + if (str && !strcmp(name, str)) { 155 155 if (idx) 156 156 *idx = cnt; 157 - break; 157 + return sec; 158 158 } 159 159 ++cnt; 160 160 } 161 161 162 - return sec; 162 + return NULL; 163 163 } 164 164 165 165 #define elf_section__for_each_rel(reldata, pos, pos_mem, idx, nr_entries) \