diff mbox series

mtd: ubi: make ubi_class constant

Message ID 20240305-class_cleanup-mtd-v1-1-7861914e2218@marliere.net
State New
Headers show
Series mtd: ubi: make ubi_class constant | expand

Commit Message

Ricardo B. Marliere March 5, 2024, 7:35 p.m. UTC
Since commit 43a7206b0963 ("driver core: class: make class_register() take
a const *"), the driver core allows for struct class to be in read-only
memory, so move the ubi_class structure to be declared at build time
placing it into read-only memory, instead of having to be dynamically
allocated at boot time.

Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
---
 drivers/mtd/ubi/build.c | 2 +-
 drivers/mtd/ubi/ubi.h   | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)


---
base-commit: 77bf032528393d2dc9430b3cea1fee8d0762a86f
change-id: 20240305-class_cleanup-mtd-b7dfe2ea8c26

Best regards,

Comments

Zhihao Cheng March 6, 2024, 1:21 a.m. UTC | #1
在 2024/3/6 3:35, Ricardo B. Marliere 写道:
> Since commit 43a7206b0963 ("driver core: class: make class_register() take
> a const *"), the driver core allows for struct class to be in read-only
> memory, so move the ubi_class structure to be declared at build time
> placing it into read-only memory, instead of having to be dynamically
> allocated at boot time.
> 
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>
> ---
>   drivers/mtd/ubi/build.c | 2 +-
>   drivers/mtd/ubi/ubi.h   | 2 +-
>   2 files changed, 2 insertions(+), 2 deletions(-)

Reviewed-by: Zhihao Cheng <chengzhihao1@huawei.com>
> 
> diff --git a/drivers/mtd/ubi/build.c b/drivers/mtd/ubi/build.c
> index 7d4ff1193db6..1938b61e1b74 100644
> --- a/drivers/mtd/ubi/build.c
> +++ b/drivers/mtd/ubi/build.c
> @@ -111,7 +111,7 @@ static struct attribute *ubi_class_attrs[] = {
>   ATTRIBUTE_GROUPS(ubi_class);
>   
>   /* Root UBI "class" object (corresponds to '/<sysfs>/class/ubi/') */
> -struct class ubi_class = {
> +const struct class ubi_class = {
>   	.name		= UBI_NAME_STR,
>   	.class_groups	= ubi_class_groups,
>   };
> diff --git a/drivers/mtd/ubi/ubi.h b/drivers/mtd/ubi/ubi.h
> index 0b42bb45dd84..21c3208a9210 100644
> --- a/drivers/mtd/ubi/ubi.h
> +++ b/drivers/mtd/ubi/ubi.h
> @@ -812,7 +812,7 @@ extern struct kmem_cache *ubi_wl_entry_slab;
>   extern const struct file_operations ubi_ctrl_cdev_operations;
>   extern const struct file_operations ubi_cdev_operations;
>   extern const struct file_operations ubi_vol_cdev_operations;
> -extern struct class ubi_class;
> +extern const struct class ubi_class;
>   extern struct mutex ubi_devices_mutex;
>   extern struct blocking_notifier_head ubi_notifiers;
>   
> 
> ---
> base-commit: 77bf032528393d2dc9430b3cea1fee8d0762a86f
> change-id: 20240305-class_cleanup-mtd-b7dfe2ea8c26
> 
> Best regards,
>
Miquel Raynal March 6, 2024, 8:18 a.m. UTC | #2
Hi Ricardo,

ricardo@marliere.net wrote on Tue, 05 Mar 2024 16:35:38 -0300:

> Since commit 43a7206b0963 ("driver core: class: make class_register() take
> a const *"), the driver core allows for struct class to be in read-only
> memory, so move the ubi_class structure to be declared at build time
> placing it into read-only memory, instead of having to be dynamically
> allocated at boot time.
> 
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Signed-off-by: Ricardo B. Marliere <ricardo@marliere.net>

Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>

Thanks,
Miquèl
diff mbox series

Patch

diff --git a/drivers/mtd/ubi/build.c b/drivers/mtd/ubi/build.c
index 7d4ff1193db6..1938b61e1b74 100644
--- a/drivers/mtd/ubi/build.c
+++ b/drivers/mtd/ubi/build.c
@@ -111,7 +111,7 @@  static struct attribute *ubi_class_attrs[] = {
 ATTRIBUTE_GROUPS(ubi_class);
 
 /* Root UBI "class" object (corresponds to '/<sysfs>/class/ubi/') */
-struct class ubi_class = {
+const struct class ubi_class = {
 	.name		= UBI_NAME_STR,
 	.class_groups	= ubi_class_groups,
 };
diff --git a/drivers/mtd/ubi/ubi.h b/drivers/mtd/ubi/ubi.h
index 0b42bb45dd84..21c3208a9210 100644
--- a/drivers/mtd/ubi/ubi.h
+++ b/drivers/mtd/ubi/ubi.h
@@ -812,7 +812,7 @@  extern struct kmem_cache *ubi_wl_entry_slab;
 extern const struct file_operations ubi_ctrl_cdev_operations;
 extern const struct file_operations ubi_cdev_operations;
 extern const struct file_operations ubi_vol_cdev_operations;
-extern struct class ubi_class;
+extern const struct class ubi_class;
 extern struct mutex ubi_devices_mutex;
 extern struct blocking_notifier_head ubi_notifiers;