[PATCH v2] perf/x86/amd: Reject branch stack for IBS events

Ravi Bangoria posted 1 patch 5 months ago
arch/x86/events/amd/ibs.c | 3 +++
1 file changed, 3 insertions(+)
[PATCH v2] perf/x86/amd: Reject branch stack for IBS events
Posted by Ravi Bangoria 5 months ago
From: Namhyung Kim <namhyung@kernel.org>

The AMD IBS PMU doesn't handle branch stacks, so it should not accept
events with brstack.

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Ravi Bangoria <ravi.bangoria@amd.com>
---
v1: https://lore.kernel.org/r/20230602194513.1589179-1-namhyung@kernel.org
v1->v2:
 - Rebase on top of peterz/queue/perf/core

 arch/x86/events/amd/ibs.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/arch/x86/events/amd/ibs.c b/arch/x86/events/amd/ibs.c
index 6911c5399d02..e91970b01d62 100644
--- a/arch/x86/events/amd/ibs.c
+++ b/arch/x86/events/amd/ibs.c
@@ -287,6 +287,9 @@ static int perf_ibs_init(struct perf_event *event)
 	if (config & ~perf_ibs->config_mask)
 		return -EINVAL;
 
+	if (has_branch_stack(event))
+		return -EOPNOTSUPP;
+
 	ret = validate_group(event);
 	if (ret)
 		return ret;
-- 
2.34.1
[tip: perf/core] perf/x86/amd: Reject branch stack for IBS events
Posted by tip-bot2 for Namhyung Kim 5 months ago
The following commit has been merged into the perf/core branch of tip:

Commit-ID:     0f9e0d7928d8e88d57b1482effab70edb9741ce1
Gitweb:        https://git.kernel.org/tip/0f9e0d7928d8e88d57b1482effab70edb9741ce1
Author:        Namhyung Kim <namhyung@kernel.org>
AuthorDate:    Thu, 30 Nov 2023 11:52:46 +05:30
Committer:     Ingo Molnar <mingo@kernel.org>
CommitterDate: Thu, 30 Nov 2023 09:34:40 +01:00

perf/x86/amd: Reject branch stack for IBS events

The AMD IBS PMU doesn't handle branch stacks, so it should not accept
events with brstack.

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Ravi Bangoria <ravi.bangoria@amd.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20231130062246.290-1-ravi.bangoria@amd.com
---
 arch/x86/events/amd/ibs.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/arch/x86/events/amd/ibs.c b/arch/x86/events/amd/ibs.c
index 6911c53..e91970b 100644
--- a/arch/x86/events/amd/ibs.c
+++ b/arch/x86/events/amd/ibs.c
@@ -287,6 +287,9 @@ static int perf_ibs_init(struct perf_event *event)
 	if (config & ~perf_ibs->config_mask)
 		return -EINVAL;
 
+	if (has_branch_stack(event))
+		return -EOPNOTSUPP;
+
 	ret = validate_group(event);
 	if (ret)
 		return ret;