drivers: mtd: remove '__init' from phram_param_call() and ubi_mtd_param_parse()
PATCH 1/1 drivers: mtd: remove '__init' from phram_param_call() and ubi_mtd_param_parse()
phram_param_call() and ubi_mtd_param_parse() are used by module_param_call(), usually, it need normal funcitons (no '__init'), so recommend to remove '__init' from them.
The related warnings:
WARNING: drivers/mtd/devices/phram.o(.data+0xc): Section mismatch in reference from the variable ___param_ops_phram to the variable .init.text:_phram_param_call The variable ___param_ops_phram references
the variable __init _phram_param_call
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console
WARNING: drivers/mtd/ubi/ubi.o(.data+0x1a4): Section mismatch in reference from the variable ___param_ops_mtd to the variable .init.text:_ubi_mtd_param_parse The variable ___param_ops_mtd references
the variable __init _ubi_mtd_param_parse
If the reference is valid then annotate the
variable with __init* or __refdata (see linux/init.h) or name the variable:
*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console
--- drivers/mtd/devices/phram.c | 2 +- drivers/mtd/ubi/build.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)
drivers/mtd/devices/phram.c +1 -1
@@ -264,7 +264,7 @@ static int __init phram_setup(const char *val)return ret; } -static int __init phram_param_call (const char *val,struct kernel_param *kp) +static int phram_param_call (const char *val,struct kernel_param *kp) {/* * This function is always called before 'init_phram()', whether
drivers/mtd/ubi/build.c +1 -1
@@ -1382,7 +1382,7 @@ static int __init bytes_str_to_int(const char *str)* This function returns zero in case of success and a negative error code in * case of error. */ -static int __init ubi_mtd_param_parse (const char *val,struct kernel_param *kp) +static int ubi_mtd_param_parse (const char *val,struct kernel_param *kp) {int i, len;struct mtd_dev_param *p;
Signature · 1 line
1.7.7.6
Quoted 4 lines · Chen Gang
phram_param_call()andubi_mtd_param_parse()are used bymodule_param_call(), usually, it need normal funcitons (no '__init'), so recommend to remove '__init' from them.
If remove '__init' from them, also need remove many other '__init' or '__initdata' from another functions or variables.
Is this warning harmless ? (it not harmless, it seems we'd better to keep them no touch)
Thanks.
Quoted 50 lines
The related warnings:
WARNING: drivers/mtd/devices/phram.o(.data+0xc): Section mismatch in reference from the variable
___param_ops_phramto the variable .init.text:_phram_param_call The variable___param_ops_phramreferences
the variable__init_phram_param_call
If the reference is valid then annotate the
variable with __init* or__refdata(seelinux/init.h) or name the variable:
*_template,*_timer,*_sht,*_ops,*_probe,*_probe_one,*_consoleWARNING: drivers/mtd/ubi/ubi.o(.data+0x1a4): Section mismatch in reference from the variable
___param_ops_mtdto the variable .init.text:_ubi_mtd_param_parse The variable___param_ops_mtdreferences
the variable__init_ubi_mtd_param_parse
If the reference is valid then annotate the
variable with __init* or__refdata(seelinux/init.h) or name the variable:
*_template,*_timer,*_sht,*_ops,*_probe,*_probe_one,*_consoleSigned-off-by Chen Gang <[email protected]>--- drivers/mtd/devices/phram.c | 2 +- drivers/mtd/ubi/build.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-)drivers/mtd/devices/phram.c +1
-1@@ -264,7 +264,7 @@ static int __init phram_setup(const char *val)return ret; } -static int __init phram_param_call (const char *val,struct kernel_param *kp) +static int phram_param_call (const char *val,struct kernel_param *kp) {/* * This function is always called before 'init_phram()', whether drivers/mtd/ubi/build.c +1
-1@@ -1382,7 +1382,7 @@ static int __init bytes_str_to_int(const char *str)* This function returns zero in case of success and a negative error code in * case of error. */ -static int __init ubi_mtd_param_parse (const char *val,struct kernel_param *kp) +static int ubi_mtd_param_parse (const char *val,struct kernel_param *kp) {int i, len;struct mtd_dev_param *p;
Signature · 1 line
Chen Gang