kernel/params.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-)
Remove the custom __modinit macro from kernel/params.c and instead use the
common __init_or_module macro from include/linux/module.h. Both provide the
same functionality.
Signed-off-by: Petr Pavlu <petr.pavlu@suse.com>
---
kernel/params.c | 15 +++++----------
1 file changed, 5 insertions(+), 10 deletions(-)
diff --git a/kernel/params.c b/kernel/params.c
index b92d64161b75..19bb04f10372 100644
--- a/kernel/params.c
+++ b/kernel/params.c
@@ -595,12 +595,6 @@ static ssize_t param_attr_store(const struct module_attribute *mattr,
}
#endif
-#ifdef CONFIG_MODULES
-#define __modinit
-#else
-#define __modinit __init
-#endif
-
#ifdef CONFIG_SYSFS
void kernel_param_lock(struct module *mod)
{
@@ -625,9 +619,9 @@ EXPORT_SYMBOL(kernel_param_unlock);
* create file in sysfs. Returns an error on out of memory. Always cleans up
* if there's an error.
*/
-static __modinit int add_sysfs_param(struct module_kobject *mk,
- const struct kernel_param *kp,
- const char *name)
+static __init_or_module int add_sysfs_param(struct module_kobject *mk,
+ const struct kernel_param *kp,
+ const char *name)
{
struct module_param_attrs *new_mp;
struct attribute **new_attrs;
@@ -760,7 +754,8 @@ void destroy_params(const struct kernel_param *params, unsigned num)
params[i].ops->free(params[i].arg);
}
-struct module_kobject __modinit * lookup_or_create_module_kobject(const char *name)
+struct module_kobject * __init_or_module
+lookup_or_create_module_kobject(const char *name)
{
struct module_kobject *mk;
struct kobject *kobj;
base-commit: be48bcf004f9d0c9207ff21d0edb3b42f253829e
--
2.50.1
On Tue, 19 Aug 2025 14:12:09 +0200, Petr Pavlu wrote:
> Remove the custom __modinit macro from kernel/params.c and instead use the
> common __init_or_module macro from include/linux/module.h. Both provide the
> same functionality.
>
>
Applied to modules-next, thanks!
[1/1] params: Replace __modinit with __init_or_module
commit: 3cb0c3bdea5388519bc1bf575dca6421b133302b
Best regards,
Sami
On Tue, Aug 19, 2025 at 02:12:09PM +0200, Petr Pavlu wrote:
> Remove the custom __modinit macro from kernel/params.c and instead use the
> common __init_or_module macro from include/linux/module.h. Both provide the
> same functionality.
>
> Signed-off-by: Petr Pavlu <petr.pavlu@suse.com>
> ---
> kernel/params.c | 15 +++++----------
> 1 file changed, 5 insertions(+), 10 deletions(-)
>
> diff --git a/kernel/params.c b/kernel/params.c
> index b92d64161b75..19bb04f10372 100644
> --- a/kernel/params.c
> +++ b/kernel/params.c
> @@ -595,12 +595,6 @@ static ssize_t param_attr_store(const struct module_attribute *mattr,
> }
> #endif
>
> -#ifdef CONFIG_MODULES
> -#define __modinit
> -#else
> -#define __modinit __init
> -#endif
> -
> #ifdef CONFIG_SYSFS
> void kernel_param_lock(struct module *mod)
> {
> @@ -625,9 +619,9 @@ EXPORT_SYMBOL(kernel_param_unlock);
> * create file in sysfs. Returns an error on out of memory. Always cleans up
> * if there's an error.
> */
> -static __modinit int add_sysfs_param(struct module_kobject *mk,
> - const struct kernel_param *kp,
> - const char *name)
> +static __init_or_module int add_sysfs_param(struct module_kobject *mk,
> + const struct kernel_param *kp,
> + const char *name)
> {
> struct module_param_attrs *new_mp;
> struct attribute **new_attrs;
> @@ -760,7 +754,8 @@ void destroy_params(const struct kernel_param *params, unsigned num)
> params[i].ops->free(params[i].arg);
> }
>
> -struct module_kobject __modinit * lookup_or_create_module_kobject(const char *name)
> +struct module_kobject * __init_or_module
> +lookup_or_create_module_kobject(const char *name)
> {
> struct module_kobject *mk;
> struct kobject *kobj;
>
> base-commit: be48bcf004f9d0c9207ff21d0edb3b42f253829e
> --
> 2.50.1
>
>
Reviewed-by: Aaron Tomlin <atomlin@atomlin.com>
--
Aaron Tomlin
On 19/08/2025 14.12, Petr Pavlu wrote:
> Remove the custom __modinit macro from kernel/params.c and instead use the
> common __init_or_module macro from include/linux/module.h. Both provide the
> same functionality.
>
> Signed-off-by: Petr Pavlu <petr.pavlu@suse.com>
Reviewed-by: Daniel Gomez <da.gomez@samsung.com>
> ---
> kernel/params.c | 15 +++++----------
> 1 file changed, 5 insertions(+), 10 deletions(-)
>
> diff --git a/kernel/params.c b/kernel/params.c
> index b92d64161b75..19bb04f10372 100644
> --- a/kernel/params.c
> +++ b/kernel/params.c
> @@ -595,12 +595,6 @@ static ssize_t param_attr_store(const struct module_attribute *mattr,
> }
> #endif
>
> -#ifdef CONFIG_MODULES
> -#define __modinit
> -#else
> -#define __modinit __init
> -#endif
> -
> #ifdef CONFIG_SYSFS
> void kernel_param_lock(struct module *mod)
> {
> @@ -625,9 +619,9 @@ EXPORT_SYMBOL(kernel_param_unlock);
> * create file in sysfs. Returns an error on out of memory. Always cleans up
> * if there's an error.
> */
> -static __modinit int add_sysfs_param(struct module_kobject *mk,
> - const struct kernel_param *kp,
> - const char *name)
> +static __init_or_module int add_sysfs_param(struct module_kobject *mk,
> + const struct kernel_param *kp,
> + const char *name)
> {
> struct module_param_attrs *new_mp;
> struct attribute **new_attrs;
> @@ -760,7 +754,8 @@ void destroy_params(const struct kernel_param *params, unsigned num)
> params[i].ops->free(params[i].arg);
> }
>
> -struct module_kobject __modinit * lookup_or_create_module_kobject(const char *name)
> +struct module_kobject * __init_or_module
> +lookup_or_create_module_kobject(const char *name)
> {
> struct module_kobject *mk;
> struct kobject *kobj;
>
> base-commit: be48bcf004f9d0c9207ff21d0edb3b42f253829e
On Tue, Aug 19, 2025 at 5:13 AM Petr Pavlu <petr.pavlu@suse.com> wrote: > > Remove the custom __modinit macro from kernel/params.c and instead use the > common __init_or_module macro from include/linux/module.h. Both provide the > same functionality. > > Signed-off-by: Petr Pavlu <petr.pavlu@suse.com> Reviewed-by: Sami Tolvanen <samitolvanen@google.com> Sami
© 2016 - 2026 Red Hat, Inc.