perf: Fix the nr_addr_filters fix

[ Upstream commit 388a1fb7da6aaa1970c7e2a7d7fcd983a87a8484 ]

Thomas reported that commit 652ffc2104ec ("perf/core: Fix narrow
startup race when creating the perf nr_addr_filters sysfs file") made
the entire attribute group vanish, instead of only the nr_addr_filters
attribute.

Additionally a stray return.

Insufficient coffee was involved with both writing and merging the
patch.

Fixes: 652ffc2104ec ("perf/core: Fix narrow startup race when creating the perf nr_addr_filters sysfs file")
Reported-by: Thomas Richter <tmricht@linux.ibm.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Tested-by: Thomas Richter <tmricht@linux.ibm.com>
Link: https://lkml.kernel.org/r/20231122100756.GP8262@noisy.programming.kicks-ass.net
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Peter Zijlstra 2023-11-22 11:07:56 +01:00 committed by Greg Kroah-Hartman
parent 8eea7e1d69
commit 071d98d5ee
1 changed files with 1 additions and 3 deletions

View File

@ -11232,12 +11232,10 @@ static umode_t pmu_dev_is_visible(struct kobject *kobj, struct attribute *a, int
struct device *dev = kobj_to_dev(kobj); struct device *dev = kobj_to_dev(kobj);
struct pmu *pmu = dev_get_drvdata(dev); struct pmu *pmu = dev_get_drvdata(dev);
if (!pmu->nr_addr_filters) if (n == 2 && !pmu->nr_addr_filters)
return 0; return 0;
return a->mode; return a->mode;
return 0;
} }
static struct attribute_group pmu_dev_attr_group = { static struct attribute_group pmu_dev_attr_group = {