android_kernel_sony_sdm845/arch
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Alexander Shishkin 7bd525029b perf/x86/intel: Fix PT PMI handling
[ Upstream commit 92ca7da4bdc24d63bb0bcd241c11441ddb63b80a ]

Commit:

  ccbebba4c6 ("perf/x86/intel/pt: Bypass PT vs. LBR exclusivity if the core supports it")

skips the PT/LBR exclusivity check on CPUs where PT and LBRs coexist, but
also inadvertently skips the active_events bump for PT in that case, which
is a bug. If there aren't any hardware events at the same time as PT, the
PMI handler will ignore PT PMIs, as active_events reads zero in that case,
resulting in the "Uhhuh" spurious NMI warning and PT data loss.

Fix this by always increasing active_events for PT events.

Fixes: ccbebba4c6 ("perf/x86/intel/pt: Bypass PT vs. LBR exclusivity if the core supports it")
Reported-by: Vitaly Slobodskoy <vitaly.slobodskoy@intel.com>
Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Alexey Budankov <alexey.budankov@linux.intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Link: https://lkml.kernel.org/r/20191210105101.77210-1-alexander.shishkin@linux.intel.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-01-12 11:24:24 +01:00
..
alpha alpha: Fix Eiger NR_IRQS to 128 2019-02-20 10:18:32 +01:00
arc ARC: perf: Accommodate big-endian CPU 2019-11-28 18:29:03 +01:00
arm ARM: dts: am437x-gp/epos-evm: fix panel compatible 2020-01-12 11:24:21 +01:00
arm64 arm64: Revert support for execute-only user mappings 2020-01-12 11:24:15 +01:00
avr32
blackfin pinctrl: adi2: Fix Kconfig build problem 2017-12-20 10:07:32 +01:00
c6x c6x/ptrace: Remove useless PTRACE_SETREGSET implementation 2017-03-31 10:31:46 +02:00
cris cris: Only build flash rescue image if CONFIG_ETRAX_AXISFLASHMAP is selected 2017-01-12 11:39:24 +01:00
frv futex: Remove duplicated code and fix undefined behaviour 2018-05-19 10:27:00 +02:00
h8300 h8300: use cc-cross-prefix instead of hardcoding h8300-unknown-linux- 2019-04-05 22:29:05 +02:00
hexagon hexagon: modify ffs() and fls() to return int 2018-10-10 08:53:21 +02:00
ia64 ia64:unwind: fix double free for mod->arch.init_unw_table 2019-10-05 12:30:20 +02:00
m32r mm: replace access_process_vm() write parameter with gup_flags 2016-10-19 08:31:25 -07:00
m68k m68k: fix command-line parsing when passed from u-boot 2019-11-28 18:28:22 +01:00
metag metag/uaccess: Check access_ok in strncpy_from_user 2017-05-25 15:44:46 +02:00
microblaze microblaze: move "... is ready" messages to arch/microblaze/Makefile 2019-12-05 15:34:24 +01:00
mips MIPS: Avoid VDSO ABI breakage due to global register variable 2020-01-12 11:24:12 +01:00
mn10300 mn10300/misalignment: Use SIGSEGV SEGV_MAPERR to report a failed user copy 2018-02-17 13:21:20 +01:00
nios2 nios2: reserve boot memory for device tree 2017-04-12 12:41:14 +02:00
openrisc openrisc: Fix broken paths to arch/or32 2019-12-05 15:34:41 +01:00
parisc parisc: Fix vmap memory leak in ioremap()/iounmap() 2019-10-29 09:15:24 +01:00
powerpc powerpc: Ensure that swiotlb buffer is allocated from low memory 2020-01-12 11:24:22 +01:00
s390 s390/smp: fix physical to logical CPU map for SMT 2020-01-12 11:24:19 +01:00
score Merge branch 'gup_flag-cleanups' 2016-10-19 08:39:47 -07:00
sh pinctrl: sh-pfc: sh7734: Fix duplicate TCLK1_B 2020-01-04 13:39:31 +01:00
sparc sparc64: Rework xchg() definition to avoid warnings. 2019-11-28 18:28:40 +01:00
tile locking/x86: Remove the unused atomic_inc_short() methd 2020-01-12 11:24:19 +01:00
um um: Make GCOV depend on !KCOV 2019-12-05 15:34:56 +01:00
unicore32
x86 perf/x86/intel: Fix PT PMI handling 2020-01-12 11:24:24 +01:00
xtensa xtensa: fix TLB sanity checker 2019-12-21 10:42:30 +01:00
.gitignore
Kconfig cpu/hotplug: Provide knobs to control SMT 2018-08-15 18:14:46 +02:00