diff options
| author | Thomas Weißschuh <linux@weissschuh.net> | 2026-04-03 19:31:02 +0300 |
|---|---|---|
| committer | Danilo Krummrich <dakr@kernel.org> | 2026-04-11 16:57:54 +0300 |
| commit | 9ce4a8c07b28cdd70f6ca38b60bf688c27dbbfb9 (patch) | |
| tree | 8c687f570a665a067129f8df57d0ea2185d21519 | |
| parent | 8f4c13c2674d37bcbbdfc47c28ce0ca1a40a6682 (diff) | |
| download | linux-9ce4a8c07b28cdd70f6ca38b60bf688c27dbbfb9.tar.xz | |
sysfs: attribute_group: Respect is_visible_const() when changing owner
The call to grp->is_visible in sysfs_group_attrs_change_owner() was
missed when support for is_visible_const() was added.
Check for both is_visible variants there too.
Fixes: 7dd9fdb4939b ("sysfs: attribute_group: enable const variants of is_visible()")
Cc: stable@vger.kernel.org
Reported-by: Michael Kelley <mhklinux@outlook.com>
Closes: https://lore.kernel.org/lkml/SN6PR02MB4157D5F04608E4E3C21AB56ED45EA@SN6PR02MB4157.namprd02.prod.outlook.com/
Link: https://sashiko.dev/#/patchset/20260403-sysfs-const-hv-v2-0-8932ab8d41db%40weissschuh.net
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
Reviewed-by: Michael Kelley <mhklinux@outlook.com>
Link: https://patch.msgid.link/20260403-sysfs-is_visible_const-fix-v1-1-f87f26071d2c@weissschuh.net
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
| -rw-r--r-- | fs/sysfs/group.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/sysfs/group.c b/fs/sysfs/group.c index e1e639f515a0..989edd6c6c23 100644 --- a/fs/sysfs/group.c +++ b/fs/sysfs/group.c @@ -517,8 +517,11 @@ static int sysfs_group_attrs_change_owner(struct kobject *kobj, struct attribute *const *attr; for (i = 0, attr = grp->attrs; *attr; i++, attr++) { - if (grp->is_visible) { - mode = grp->is_visible(kobj, *attr, i); + if (grp->is_visible || grp->is_visible_const) { + if (grp->is_visible) + mode = grp->is_visible(kobj, *attr, i); + else + mode = grp->is_visible_const(kobj, *attr, i); if (mode & SYSFS_GROUP_INVISIBLE) break; if (!mode) |
