Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull perf fixes from Ingo Molnar:
"Mostly tooling fixes, plus on the kernel side:
- a revert for a newly introduced PMU driver which isn't complete yet
and where we ran out of time with fixes (to be tried again in
v3.19) - this makes up for a large chunk of the diffstat.
- compilation warning fixes
- a printk message fix
- event_idx usage fixes/cleanups"
* 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
perf probe: Trivial typo fix for --demangle
perf tools: Fix report -F dso_from for data without branch info
perf tools: Fix report -F dso_to for data without branch info
perf tools: Fix report -F symbol_from for data without branch info
perf tools: Fix report -F symbol_to for data without branch info
perf tools: Fix report -F mispredict for data without branch info
perf tools: Fix report -F in_tx for data without branch info
perf tools: Fix report -F abort for data without branch info
perf tools: Make CPUINFO_PROC an array to support different kernel versions
perf callchain: Use global caching provided by libunwind
perf/x86/intel: Revert incomplete and undocumented Broadwell client support
perf/x86: Fix compile warnings for intel_uncore
perf: Fix typos in sample code in the perf_event.h header
perf: Fix and clean up initialization of pmu::event_idx
perf: Fix bogus kernel printk
perf diff: Add missing hists__init() call at tool start
This commit is contained in:
@@ -364,7 +364,7 @@ struct perf_event_mmap_page {
|
||||
/*
|
||||
* Bits needed to read the hw events in user-space.
|
||||
*
|
||||
* u32 seq, time_mult, time_shift, idx, width;
|
||||
* u32 seq, time_mult, time_shift, index, width;
|
||||
* u64 count, enabled, running;
|
||||
* u64 cyc, time_offset;
|
||||
* s64 pmc = 0;
|
||||
@@ -383,11 +383,11 @@ struct perf_event_mmap_page {
|
||||
* time_shift = pc->time_shift;
|
||||
* }
|
||||
*
|
||||
* idx = pc->index;
|
||||
* index = pc->index;
|
||||
* count = pc->offset;
|
||||
* if (pc->cap_usr_rdpmc && idx) {
|
||||
* if (pc->cap_user_rdpmc && index) {
|
||||
* width = pc->pmc_width;
|
||||
* pmc = rdpmc(idx - 1);
|
||||
* pmc = rdpmc(index - 1);
|
||||
* }
|
||||
*
|
||||
* barrier();
|
||||
@@ -415,7 +415,7 @@ struct perf_event_mmap_page {
|
||||
};
|
||||
|
||||
/*
|
||||
* If cap_usr_rdpmc this field provides the bit-width of the value
|
||||
* If cap_user_rdpmc this field provides the bit-width of the value
|
||||
* read using the rdpmc() or equivalent instruction. This can be used
|
||||
* to sign extend the result like:
|
||||
*
|
||||
@@ -439,10 +439,10 @@ struct perf_event_mmap_page {
|
||||
*
|
||||
* Where time_offset,time_mult,time_shift and cyc are read in the
|
||||
* seqcount loop described above. This delta can then be added to
|
||||
* enabled and possible running (if idx), improving the scaling:
|
||||
* enabled and possible running (if index), improving the scaling:
|
||||
*
|
||||
* enabled += delta;
|
||||
* if (idx)
|
||||
* if (index)
|
||||
* running += delta;
|
||||
*
|
||||
* quot = count / running;
|
||||
|
||||
Reference in New Issue
Block a user