[PATCH] mm/damon/sysfs: make more kobj_type structures constant

Thomas Weißschuh posted 1 patch 2 years, 10 months ago
mm/damon/sysfs-schemes.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] mm/damon/sysfs: make more kobj_type structures constant
Posted by Thomas Weißschuh 2 years, 10 months ago
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 definition to prevent
modification at runtime.

These structures were not constified in
commit e56397e8c40d ("mm/damon/sysfs: make kobj_type structures constant")
as they didn't exist when that patch was written.

Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
---
 mm/damon/sysfs-schemes.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/mm/damon/sysfs-schemes.c b/mm/damon/sysfs-schemes.c
index 3cdad5a7f936..50cf89dcd898 100644
--- a/mm/damon/sysfs-schemes.c
+++ b/mm/damon/sysfs-schemes.c
@@ -384,7 +384,7 @@ static struct attribute *damon_sysfs_scheme_filter_attrs[] = {
 };
 ATTRIBUTE_GROUPS(damon_sysfs_scheme_filter);
 
-static struct kobj_type damon_sysfs_scheme_filter_ktype = {
+static const struct kobj_type damon_sysfs_scheme_filter_ktype = {
 	.release = damon_sysfs_scheme_filter_release,
 	.sysfs_ops = &kobj_sysfs_ops,
 	.default_groups = damon_sysfs_scheme_filter_groups,
@@ -503,7 +503,7 @@ static struct attribute *damon_sysfs_scheme_filters_attrs[] = {
 };
 ATTRIBUTE_GROUPS(damon_sysfs_scheme_filters);
 
-static struct kobj_type damon_sysfs_scheme_filters_ktype = {
+static const struct kobj_type damon_sysfs_scheme_filters_ktype = {
 	.release = damon_sysfs_scheme_filters_release,
 	.sysfs_ops = &kobj_sysfs_ops,
 	.default_groups = damon_sysfs_scheme_filters_groups,

---
base-commit: 1e760fa3596e8c7f08412712c168288b79670d78
change-id: 20230324-b4-kobj_type-damon2-0238ee9e8d8c

Best regards,
-- 
Thomas Weißschuh <linux@weissschuh.net>

Re: [PATCH] mm/damon/sysfs: make more kobj_type structures constant
Posted by Muhammad Usama Anjum 2 years, 10 months ago
On 3/24/23 8:35 PM, 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 definition to prevent
> modification at runtime.
> 
> These structures were not constified in
> commit e56397e8c40d ("mm/damon/sysfs: make kobj_type structures constant")
> as they didn't exist when that patch was written.
> 
> Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
Reviewed-by: Muhammad Usama Anjum <usama.anjum@collabora.com>

> ---
>  mm/damon/sysfs-schemes.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/mm/damon/sysfs-schemes.c b/mm/damon/sysfs-schemes.c
> index 3cdad5a7f936..50cf89dcd898 100644
> --- a/mm/damon/sysfs-schemes.c
> +++ b/mm/damon/sysfs-schemes.c
> @@ -384,7 +384,7 @@ static struct attribute *damon_sysfs_scheme_filter_attrs[] = {
>  };
>  ATTRIBUTE_GROUPS(damon_sysfs_scheme_filter);
>  
> -static struct kobj_type damon_sysfs_scheme_filter_ktype = {
> +static const struct kobj_type damon_sysfs_scheme_filter_ktype = {
>  	.release = damon_sysfs_scheme_filter_release,
>  	.sysfs_ops = &kobj_sysfs_ops,
>  	.default_groups = damon_sysfs_scheme_filter_groups,
> @@ -503,7 +503,7 @@ static struct attribute *damon_sysfs_scheme_filters_attrs[] = {
>  };
>  ATTRIBUTE_GROUPS(damon_sysfs_scheme_filters);
>  
> -static struct kobj_type damon_sysfs_scheme_filters_ktype = {
> +static const struct kobj_type damon_sysfs_scheme_filters_ktype = {
>  	.release = damon_sysfs_scheme_filters_release,
>  	.sysfs_ops = &kobj_sysfs_ops,
>  	.default_groups = damon_sysfs_scheme_filters_groups,
> 
> ---
> base-commit: 1e760fa3596e8c7f08412712c168288b79670d78
> change-id: 20230324-b4-kobj_type-damon2-0238ee9e8d8c
> 
> Best regards,

-- 
BR,
Muhammad Usama Anjum
Re: [PATCH] mm/damon/sysfs: make more kobj_type structures constant
Posted by SeongJae Park 2 years, 10 months ago
Hi Thomas,

On Fri, 24 Mar 2023 15:35:27 +0000 "Thomas Weißschuh" <linux@weissschuh.net> 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 definition to prevent
> modification at runtime.
> 
> These structures were not constified in
> commit e56397e8c40d ("mm/damon/sysfs: make kobj_type structures constant")
> as they didn't exist when that patch was written.

Thank you for catching this!

> 
> Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>

Reviewed-by: SeongJae Park <sj@kernel.org>


Thanks,
SJ

> ---
>  mm/damon/sysfs-schemes.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/mm/damon/sysfs-schemes.c b/mm/damon/sysfs-schemes.c
> index 3cdad5a7f936..50cf89dcd898 100644
> --- a/mm/damon/sysfs-schemes.c
> +++ b/mm/damon/sysfs-schemes.c
> @@ -384,7 +384,7 @@ static struct attribute *damon_sysfs_scheme_filter_attrs[] = {
>  };
>  ATTRIBUTE_GROUPS(damon_sysfs_scheme_filter);
>  
> -static struct kobj_type damon_sysfs_scheme_filter_ktype = {
> +static const struct kobj_type damon_sysfs_scheme_filter_ktype = {
>  	.release = damon_sysfs_scheme_filter_release,
>  	.sysfs_ops = &kobj_sysfs_ops,
>  	.default_groups = damon_sysfs_scheme_filter_groups,
> @@ -503,7 +503,7 @@ static struct attribute *damon_sysfs_scheme_filters_attrs[] = {
>  };
>  ATTRIBUTE_GROUPS(damon_sysfs_scheme_filters);
>  
> -static struct kobj_type damon_sysfs_scheme_filters_ktype = {
> +static const struct kobj_type damon_sysfs_scheme_filters_ktype = {
>  	.release = damon_sysfs_scheme_filters_release,
>  	.sysfs_ops = &kobj_sysfs_ops,
>  	.default_groups = damon_sysfs_scheme_filters_groups,
> 
> ---
> base-commit: 1e760fa3596e8c7f08412712c168288b79670d78
> change-id: 20230324-b4-kobj_type-damon2-0238ee9e8d8c
> 
> Best regards,
> -- 
> Thomas Weißschuh <linux@weissschuh.net>