# \[PATCH\] perf/x86/intel/pt: Fix mask of num\_address\_ranges

- Subsystems: PERFORMANCE EVENTS SUBSYSTEM, THE REST, X86 ARCHITECTURE (32-BIT AND 64-BIT)
- Maintainers: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo, Namhyung Kim, Linus Torvalds, Thomas Gleixner, Borislav Petkov, Dave Hansen
- Status: LANDED · 1 review, 1 by a maintainer (c53c6b7409f4 · 2021-08-25 13:42 M Alexander Shishkin)
- Landed in mainline as c53c6b7409f4 on 2021-08-25.
- 1 review trailer (1 from subsystem maintainers).
- List: linux-perf-users
- 1 message, 1 author
- Page: https://ratatoskr.run/linux-perf-users/2021/08/1486534/t

## \[PATCH\] perf/x86/intel/pt: Fix mask of num\_address\_ranges

- From: Xiaoyao Li \<hidden\>
- Date: 2021-08-24 04:06:29 
- Message: https://ratatoskr.run/linux-perf-users/2021/08/1486534.md

```text
Per SDM, bit 2:0 of CPUID(0x14,1).EAX[2:0] reports the number of
configurable address ranges for filtering, not bit 1:0.

Signed-off-by: Xiaoyao Li <redacted>
Acked-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
---
 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 915847655c06..b044577785bb 100644
--- a/arch/x86/events/intel/pt.c
+++ b/arch/x86/events/intel/pt.c
@@ -62,7 +62,7 @@ static struct pt_cap_desc {
 	PT_CAP(single_range_output,	0, CPUID_ECX, BIT(2)),
 	PT_CAP(output_subsys,		0, CPUID_ECX, BIT(3)),
 	PT_CAP(payloads_lip,		0, CPUID_ECX, BIT(31)),
-	PT_CAP(num_address_ranges,	1, CPUID_EAX, 0x3),
+	PT_CAP(num_address_ranges,	1, CPUID_EAX, 0x7),
 	PT_CAP(mtc_periods,		1, CPUID_EAX, 0xffff0000),
 	PT_CAP(cycle_thresholds,	1, CPUID_EBX, 0xffff),
 	PT_CAP(psb_periods,		1, CPUID_EBX, 0xffff0000),
-- 
2.27.0

```
