The following commit has been merged into the perf/urgent branch of tip: Commit-ID: 13301c6b16a6d809b331bb88e40ab9ce38238b8b Gitweb: https://git.kernel.org/tip/13301c6b16a6d809b331bb88e40ab9ce38238b8b Author: Jiri Olsa <jo...@kernel.org> AuthorDate: Sun, 20 Oct 2019 00:07:26 +02:00 Committer: Ingo Molnar <mi...@kernel.org> CommitterDate: Sun, 20 Oct 2019 14:42:28 +02:00
perf/x86/intel/pt: Fix base for single entry topa Jan reported failing ltp test for PT: https://github.com/linux-test-project/ltp/blob/master/testcases/kernel/tracing/pt_test/pt_test.c It looks like the reason is this new commit added in this v5.4 merge window: 38bb8d77d0b9 ("perf/x86/intel/pt: Split ToPA metadata and page layout") which did not keep the TOPA_SHIFT for entry base. Add it back. Reported-by: Jan Stancek <jstan...@redhat.com> Signed-off-by: Jiri Olsa <jo...@redhat.com> Cc: Alexander Shishkin <alexander.shish...@linux.intel.com> Cc: Arnaldo Carvalho de Melo <a...@kernel.org> Cc: Linus Torvalds <torva...@linux-foundation.org> Cc: Mark Rutland <mark.rutl...@arm.com> Cc: Michael Petlan <mpet...@redhat.com> Cc: Namhyung Kim <namhy...@kernel.org> Cc: Peter Zijlstra <pet...@infradead.org> Cc: Stephane Eranian <eran...@google.com> Cc: Thomas Gleixner <t...@linutronix.de> Cc: Vince Weaver <vincent.wea...@maine.edu> Fixes: 38bb8d77d0b9 ("perf/x86/intel/pt: Split ToPA metadata and page layout") Link: https://lkml.kernel.org/r/20191019220726.12213-1-jo...@kernel.org [ Minor changelog edits. ] Signed-off-by: Ingo Molnar <mi...@kernel.org> --- arch/x86/events/intel/pt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/events/intel/pt.c b/arch/x86/events/intel/pt.c index 74e80ed..05e43d0 100644 --- a/arch/x86/events/intel/pt.c +++ b/arch/x86/events/intel/pt.c @@ -627,7 +627,7 @@ static struct topa *topa_alloc(int cpu, gfp_t gfp) * link as the 2nd entry in the table */ if (!intel_pt_validate_hw_cap(PT_CAP_topa_multiple_entries)) { - TOPA_ENTRY(&tp->topa, 1)->base = page_to_phys(p); + TOPA_ENTRY(&tp->topa, 1)->base = page_to_phys(p) >> TOPA_SHIFT; TOPA_ENTRY(&tp->topa, 1)->end = 1; }