]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
perf/x86/amd/uncore: Fix the return value of amd_uncore_df_event_init() on error
authorSandipan Das <sandipan.das@amd.com>
Tue, 9 Dec 2025 08:26:38 +0000 (13:56 +0530)
committerIngo Molnar <mingo@kernel.org>
Tue, 9 Dec 2025 11:21:47 +0000 (12:21 +0100)
If amd_uncore_event_init() fails, return an error irrespective of the
pmu_version. Setting hwc->config should be safe even if there is an
error so use this opportunity to simplify the code.

Closes: https://lore.kernel.org/all/aTaI0ci3vZ44lmBn@stanley.mountain/
Fixes: d6389d3ccc13 ("perf/x86/amd/uncore: Refactor uncore management")
Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Signed-off-by: Sandipan Das <sandipan.das@amd.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: stable@vger.kernel.org
Link: https://patch.msgid.link/076935e23a70335d33bd6e23308b75ae0ad35ba2.1765268667.git.sandipan.das@amd.com
arch/x86/events/amd/uncore.c

index e8b6af199c738eb00bb16f6d8285eef177860ca8..9293ce50574dad8a17a8387a84610f1d48cbf9c4 100644 (file)
@@ -656,14 +656,11 @@ static int amd_uncore_df_event_init(struct perf_event *event)
        struct hw_perf_event *hwc = &event->hw;
        int ret = amd_uncore_event_init(event);
 
-       if (ret || pmu_version < 2)
-               return ret;
-
        hwc->config = event->attr.config &
                      (pmu_version >= 2 ? AMD64_PERFMON_V2_RAW_EVENT_MASK_NB :
                                          AMD64_RAW_EVENT_MASK_NB);
 
-       return 0;
+       return ret;
 }
 
 static int amd_uncore_df_add(struct perf_event *event, int flags)