OpenCloudOS-Kernel/arch/x86/kernel/cpu
David Ahern a706d965dc perf x86: revert 20b279 - require exclude_guest to use PEBS - kernel side
This patch is brought to you by the letter 'H'.

Commit 20b279 breaks compatiblity with older perf binaries when run with
precise modifier (:p or :pp) by requiring the exclude_guest attribute to be
set. Older binaries default exclude_guest to 0 (ie., wanting guest-based
samples) unless host only profiling is requested (:H modifier). The workaround
for older binaries is to add H to the modifier list (e.g., -e cycles:ppH -
toggles exclude_guest to 1). This was deemed unacceptable by Linus:

https://lkml.org/lkml/2012/12/12/570

Between family in town and the fresh snow in Breckenridge there is no time left
to be working on the proper fix for this over the holidays. In the New Year I
have more pressing problems to resolve -- like some memory leaks in perf which
are proving to be elusive -- although the aforementioned snow is probably why
they are proving to be elusive. Either way I do not have any spare time to work
on this and from the time I have managed to spend on it the solution is more
difficult than just moving to a new exclude_guest flag (does not work) or
flipping the logic to include_guest (which is not as trivial as one would
think).

So, two options: silently force exclude_guest on as suggested by Gleb which
means no impact to older perf binaries or revert the original patch which
caused the breakage.

This patch does the latter -- reverts the original patch that introduced the
regression. The problem can be revisited in the future as time allows.

Signed-off-by: David Ahern <dsahern@gmail.com>
Cc: Avi Kivity <avi@redhat.com>
Cc: Gleb Natapov <gleb@redhat.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Robert Richter <robert.richter@amd.com>
Link: http://lkml.kernel.org/r/1356749767-17322-1-git-send-email-dsahern@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2013-01-10 09:21:19 -03:00
..
mcheck Merge branch 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-12-14 09:59:59 -08:00
mtrr Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-12-13 12:00:02 -08:00
.gitignore
Makefile perf/x86: Add support for Intel Xeon-Phi Knights Corner PMU 2012-10-04 13:32:37 +02:00
amd.c Merge branch 'x86-nuke386-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-12-11 19:59:32 -08:00
bugs.c x86, 386 removal: Remove CONFIG_X86_POPAD_OK 2012-11-29 13:23:03 -08:00
bugs_64.c x86/cpu: Clean up various files a bit 2009-07-11 11:24:09 +02:00
centaur.c x86, centaur: Enable cx8 for VIA Eden too 2011-12-15 08:04:42 -08:00
common.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal 2012-12-12 12:22:13 -08:00
cpu.h x86/tlb_info: get last level TLB entry number of CPU 2012-06-27 19:28:24 -07:00
cyrix.c x86, cpu: mv display_cacheinfo -> cpu_detect_cache_sizes 2009-11-23 11:59:53 -08:00
hypervisor.c x86, hyper: fix build with !CONFIG_KVM_GUEST 2012-07-18 17:01:48 -03:00
intel.c x86, 386 removal: Remove CONFIG_INVLPG 2012-11-29 13:23:02 -08:00
intel_cacheinfo.c x86, cacheinfo: Base cache sharing info on CPUID 0x8000001d on AMD 2012-11-13 11:22:31 -08:00
match.c x86: Fix typo in MODULE_DEVICE_TABLE example: s/x86_cpu/x86cpu/ 2012-04-16 14:20:19 +02:00
mkcapflags.pl UAPI: Partition the header include path sets and add uapi/ header directories 2012-10-02 18:01:26 +01:00
mshyperv.c x86: Hyper-V: Integrate the clocksource with Hyper-V detection code 2011-09-08 10:33:59 +02:00
perf_event.c perf x86: revert 20b279 - require exclude_guest to use PEBS - kernel side 2013-01-10 09:21:19 -03:00
perf_event.h perf/x86: Add hardware events translations for Intel P6 cpus 2012-10-24 10:41:25 +02:00
perf_event_amd.c perf/x86: Add hardware events translations for AMD cpus 2012-10-24 10:41:25 +02:00
perf_event_amd_ibs.c perf/AMD/IBS: Add sysfs support 2012-10-05 13:57:47 +02:00
perf_event_intel.c perf/x86: Add hardware events translations for AMD cpus 2012-10-24 10:41:25 +02:00
perf_event_intel_ds.c perf/x86: Fix Intel Ivy Bridge support 2012-09-19 17:28:47 +02:00
perf_event_intel_lbr.c perf/x86: Enable Intel Cedarview Atom suppport 2012-09-04 17:29:23 +02:00
perf_event_intel_uncore.c X86: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
perf_event_intel_uncore.h perf/x86: Add cpumask for uncore pmu 2012-09-17 13:11:43 -03:00
perf_event_knc.c perf/x86: Enable overflow on Intel KNC with a custom knc_pmu_handle_irq() 2012-10-24 12:00:49 +02:00
perf_event_p4.c perf/x86: Rename Intel specific macros 2012-07-05 21:19:39 +02:00
perf_event_p6.c Merge branch 'linus' into perf/core 2012-12-08 15:25:06 +01:00
perfctr-watchdog.c perf/x86: Add support for Intel Xeon-Phi Knights Corner PMU 2012-10-04 13:32:37 +02:00
powerflags.c x86: Report cpb and eff_freq_ro flags correctly 2011-12-15 08:14:49 +01:00
proc.c x86, 386 removal: Remove support for IRQ 13 FPU error reporting 2012-12-17 11:42:40 -08:00
rdrand.c x86, random: Verify RDRAND functionality and allow it to be disabled 2011-07-31 14:02:19 -07:00
scattered.c x86, cpufeature: Rename X86_FEATURE_DTS to X86_FEATURE_DTHERM 2012-06-25 09:01:15 -07:00
topology.c x86, cpu: Split addon_cpuid_features.c 2010-07-19 19:02:41 -07:00
transmeta.c x86, cpu: mv display_cacheinfo -> cpu_detect_cache_sizes 2009-11-23 11:59:53 -08:00
umc.c
vmware.c x86: Fix common misspellings 2011-03-18 10:39:30 +01:00