fs/xfs/xfs_error.c | 2 +- fs/xfs/xfs_sysfs.c | 12 ++++++------ fs/xfs/xfs_sysfs.h | 10 +++++----- 3 files changed, 12 insertions(+), 12 deletions(-)
Since commit ee6d3dd4ed48 ("driver core: make kobj_type constant.")
the driver core allows the usage of const struct kobj_type.
Take advantage of this to constify the structure definitions to prevent
modification at runtime.
Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
---
fs/xfs/xfs_error.c | 2 +-
fs/xfs/xfs_sysfs.c | 12 ++++++------
fs/xfs/xfs_sysfs.h | 10 +++++-----
3 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/fs/xfs/xfs_error.c b/fs/xfs/xfs_error.c
index ae082808cfed..b2cbbba3e15a 100644
--- a/fs/xfs/xfs_error.c
+++ b/fs/xfs/xfs_error.c
@@ -228,7 +228,7 @@ static struct attribute *xfs_errortag_attrs[] = {
};
ATTRIBUTE_GROUPS(xfs_errortag);
-static struct kobj_type xfs_errortag_ktype = {
+static const struct kobj_type xfs_errortag_ktype = {
.release = xfs_sysfs_release,
.sysfs_ops = &xfs_errortag_sysfs_ops,
.default_groups = xfs_errortag_groups,
diff --git a/fs/xfs/xfs_sysfs.c b/fs/xfs/xfs_sysfs.c
index f7faf6e70d7f..a3c6b1548723 100644
--- a/fs/xfs/xfs_sysfs.c
+++ b/fs/xfs/xfs_sysfs.c
@@ -69,7 +69,7 @@ static struct attribute *xfs_mp_attrs[] = {
};
ATTRIBUTE_GROUPS(xfs_mp);
-struct kobj_type xfs_mp_ktype = {
+const struct kobj_type xfs_mp_ktype = {
.release = xfs_sysfs_release,
.sysfs_ops = &xfs_sysfs_ops,
.default_groups = xfs_mp_groups,
@@ -266,7 +266,7 @@ static struct attribute *xfs_dbg_attrs[] = {
};
ATTRIBUTE_GROUPS(xfs_dbg);
-struct kobj_type xfs_dbg_ktype = {
+const struct kobj_type xfs_dbg_ktype = {
.release = xfs_sysfs_release,
.sysfs_ops = &xfs_sysfs_ops,
.default_groups = xfs_dbg_groups,
@@ -324,7 +324,7 @@ static struct attribute *xfs_stats_attrs[] = {
};
ATTRIBUTE_GROUPS(xfs_stats);
-struct kobj_type xfs_stats_ktype = {
+const struct kobj_type xfs_stats_ktype = {
.release = xfs_sysfs_release,
.sysfs_ops = &xfs_sysfs_ops,
.default_groups = xfs_stats_groups,
@@ -410,7 +410,7 @@ static struct attribute *xfs_log_attrs[] = {
};
ATTRIBUTE_GROUPS(xfs_log);
-struct kobj_type xfs_log_ktype = {
+const struct kobj_type xfs_log_ktype = {
.release = xfs_sysfs_release,
.sysfs_ops = &xfs_sysfs_ops,
.default_groups = xfs_log_groups,
@@ -564,13 +564,13 @@ static struct attribute *xfs_error_attrs[] = {
};
ATTRIBUTE_GROUPS(xfs_error);
-static struct kobj_type xfs_error_cfg_ktype = {
+static const struct kobj_type xfs_error_cfg_ktype = {
.release = xfs_sysfs_release,
.sysfs_ops = &xfs_sysfs_ops,
.default_groups = xfs_error_groups,
};
-static struct kobj_type xfs_error_ktype = {
+static const struct kobj_type xfs_error_ktype = {
.release = xfs_sysfs_release,
.sysfs_ops = &xfs_sysfs_ops,
};
diff --git a/fs/xfs/xfs_sysfs.h b/fs/xfs/xfs_sysfs.h
index 513095e353a5..148893ebfdef 100644
--- a/fs/xfs/xfs_sysfs.h
+++ b/fs/xfs/xfs_sysfs.h
@@ -7,10 +7,10 @@
#ifndef __XFS_SYSFS_H__
#define __XFS_SYSFS_H__
-extern struct kobj_type xfs_mp_ktype; /* xfs_mount */
-extern struct kobj_type xfs_dbg_ktype; /* debug */
-extern struct kobj_type xfs_log_ktype; /* xlog */
-extern struct kobj_type xfs_stats_ktype; /* stats */
+extern const struct kobj_type xfs_mp_ktype; /* xfs_mount */
+extern const struct kobj_type xfs_dbg_ktype; /* debug */
+extern const struct kobj_type xfs_log_ktype; /* xlog */
+extern const struct kobj_type xfs_stats_ktype; /* stats */
static inline struct xfs_kobj *
to_kobj(struct kobject *kobject)
@@ -28,7 +28,7 @@ xfs_sysfs_release(struct kobject *kobject)
static inline int
xfs_sysfs_init(
struct xfs_kobj *kobj,
- struct kobj_type *ktype,
+ const struct kobj_type *ktype,
struct xfs_kobj *parent_kobj,
const char *name)
{
---
base-commit: 0983f6bf2bfc0789b51ddf7315f644ff4da50acb
change-id: 20230209-kobj_type-xfs-c1670289be86
Best regards,
--
Thomas Weißschuh <linux@weissschuh.net>
On Thu, Feb 09, 2023 at 03:16:43AM +0000, Thomas Weißschuh wrote: > Since commit ee6d3dd4ed48 ("driver core: make kobj_type constant.") > the driver core allows the usage of const struct kobj_type. > > Take advantage of this to constify the structure definitions to prevent > modification at runtime. > > Signed-off-by: Thomas Weißschuh <linux@weissschuh.net> LGTM, Reviewed-by: Darrick J. Wong <djwong@kernel.org> --D > --- > fs/xfs/xfs_error.c | 2 +- > fs/xfs/xfs_sysfs.c | 12 ++++++------ > fs/xfs/xfs_sysfs.h | 10 +++++----- > 3 files changed, 12 insertions(+), 12 deletions(-) > > diff --git a/fs/xfs/xfs_error.c b/fs/xfs/xfs_error.c > index ae082808cfed..b2cbbba3e15a 100644 > --- a/fs/xfs/xfs_error.c > +++ b/fs/xfs/xfs_error.c > @@ -228,7 +228,7 @@ static struct attribute *xfs_errortag_attrs[] = { > }; > ATTRIBUTE_GROUPS(xfs_errortag); > > -static struct kobj_type xfs_errortag_ktype = { > +static const struct kobj_type xfs_errortag_ktype = { > .release = xfs_sysfs_release, > .sysfs_ops = &xfs_errortag_sysfs_ops, > .default_groups = xfs_errortag_groups, > diff --git a/fs/xfs/xfs_sysfs.c b/fs/xfs/xfs_sysfs.c > index f7faf6e70d7f..a3c6b1548723 100644 > --- a/fs/xfs/xfs_sysfs.c > +++ b/fs/xfs/xfs_sysfs.c > @@ -69,7 +69,7 @@ static struct attribute *xfs_mp_attrs[] = { > }; > ATTRIBUTE_GROUPS(xfs_mp); > > -struct kobj_type xfs_mp_ktype = { > +const struct kobj_type xfs_mp_ktype = { > .release = xfs_sysfs_release, > .sysfs_ops = &xfs_sysfs_ops, > .default_groups = xfs_mp_groups, > @@ -266,7 +266,7 @@ static struct attribute *xfs_dbg_attrs[] = { > }; > ATTRIBUTE_GROUPS(xfs_dbg); > > -struct kobj_type xfs_dbg_ktype = { > +const struct kobj_type xfs_dbg_ktype = { > .release = xfs_sysfs_release, > .sysfs_ops = &xfs_sysfs_ops, > .default_groups = xfs_dbg_groups, > @@ -324,7 +324,7 @@ static struct attribute *xfs_stats_attrs[] = { > }; > ATTRIBUTE_GROUPS(xfs_stats); > > -struct kobj_type xfs_stats_ktype = { > +const struct kobj_type xfs_stats_ktype = { > .release = xfs_sysfs_release, > .sysfs_ops = &xfs_sysfs_ops, > .default_groups = xfs_stats_groups, > @@ -410,7 +410,7 @@ static struct attribute *xfs_log_attrs[] = { > }; > ATTRIBUTE_GROUPS(xfs_log); > > -struct kobj_type xfs_log_ktype = { > +const struct kobj_type xfs_log_ktype = { > .release = xfs_sysfs_release, > .sysfs_ops = &xfs_sysfs_ops, > .default_groups = xfs_log_groups, > @@ -564,13 +564,13 @@ static struct attribute *xfs_error_attrs[] = { > }; > ATTRIBUTE_GROUPS(xfs_error); > > -static struct kobj_type xfs_error_cfg_ktype = { > +static const struct kobj_type xfs_error_cfg_ktype = { > .release = xfs_sysfs_release, > .sysfs_ops = &xfs_sysfs_ops, > .default_groups = xfs_error_groups, > }; > > -static struct kobj_type xfs_error_ktype = { > +static const struct kobj_type xfs_error_ktype = { > .release = xfs_sysfs_release, > .sysfs_ops = &xfs_sysfs_ops, > }; > diff --git a/fs/xfs/xfs_sysfs.h b/fs/xfs/xfs_sysfs.h > index 513095e353a5..148893ebfdef 100644 > --- a/fs/xfs/xfs_sysfs.h > +++ b/fs/xfs/xfs_sysfs.h > @@ -7,10 +7,10 @@ > #ifndef __XFS_SYSFS_H__ > #define __XFS_SYSFS_H__ > > -extern struct kobj_type xfs_mp_ktype; /* xfs_mount */ > -extern struct kobj_type xfs_dbg_ktype; /* debug */ > -extern struct kobj_type xfs_log_ktype; /* xlog */ > -extern struct kobj_type xfs_stats_ktype; /* stats */ > +extern const struct kobj_type xfs_mp_ktype; /* xfs_mount */ > +extern const struct kobj_type xfs_dbg_ktype; /* debug */ > +extern const struct kobj_type xfs_log_ktype; /* xlog */ > +extern const struct kobj_type xfs_stats_ktype; /* stats */ > > static inline struct xfs_kobj * > to_kobj(struct kobject *kobject) > @@ -28,7 +28,7 @@ xfs_sysfs_release(struct kobject *kobject) > static inline int > xfs_sysfs_init( > struct xfs_kobj *kobj, > - struct kobj_type *ktype, > + const struct kobj_type *ktype, > struct xfs_kobj *parent_kobj, > const char *name) > { > > --- > base-commit: 0983f6bf2bfc0789b51ddf7315f644ff4da50acb > change-id: 20230209-kobj_type-xfs-c1670289be86 > > Best regards, > -- > Thomas Weißschuh <linux@weissschuh.net> >
© 2016 - 2025 Red Hat, Inc.