diff mbox series

modpost: remove leftover symbol prefix handling for module device table

Message ID 1538115715-10078-1-git-send-email-yamada.masahiro@socionext.com (mailing list archive)
State New, archived
Headers show
Series modpost: remove leftover symbol prefix handling for module device table | expand

Commit Message

Masahiro Yamada Sept. 28, 2018, 6:21 a.m. UTC
Blackfin and metag were the only architectures that prefix symbols with
an underscore.  They were removed by commit 4ba66a976072 ("arch: remove
blackfin port"), commit bb6fb6dfcc17 ("metag: Remove arch/metag/"),
respectively.

It is no longer necessary to handle <prefix> part of module device
table symbols.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
---

 scripts/mod/file2alias.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

Comments

Rusty Russell Sept. 29, 2018, 7 a.m. UTC | #1
Please send this to the module maintainer (CC'd).

Masahiro Yamada <yamada.masahiro@socionext.com> writes:
> Blackfin and metag were the only architectures that prefix symbols with
> an underscore.  They were removed by commit 4ba66a976072 ("arch: remove
> blackfin port"), commit bb6fb6dfcc17 ("metag: Remove arch/metag/"),
> respectively.
>
> It is no longer necessary to handle <prefix> part of module device
> table symbols.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> ---
>
>  scripts/mod/file2alias.c | 7 +++----
>  1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c
> index 7be4369..ba4ebc4 100644
> --- a/scripts/mod/file2alias.c
> +++ b/scripts/mod/file2alias.c
> @@ -1415,11 +1415,10 @@ void handle_moddevtable(struct module *mod, struct elf_info *info,
>  	if (ELF_ST_TYPE(sym->st_info) != STT_OBJECT)
>  		return;
>  
> -	/* All our symbols are of form <prefix>__mod_<name>__<identifier>_device_table. */
> -	name = strstr(symname, "__mod_");
> -	if (!name)
> +	/* All our symbols are of form __mod_<name>__<identifier>_device_table. */
> +	if (strncmp(symname, "__mod_", strlen("__mod_")))
>  		return;
> -	name += strlen("__mod_");
> +	name = symname + strlen("__mod_");
>  	namelen = strlen(name);
>  	if (namelen < strlen("_device_table"))
>  		return;
> -- 
> 2.7.4
Masahiro Yamada Sept. 29, 2018, 4:44 p.m. UTC | #2
2018年9月29日(土) 16:01 Rusty Russell <rusty@rustcorp.com.au>:
>
> Please send this to the module maintainer (CC'd).


I just sent this to Kbuild ML
since scripts/mod/ is listed in the Kbuild part.

Next time, I will try my best to remember
to CC the module maintainer.

Reviewed-by tags are appreciated.



KERNEL BUILD + files below scripts/ (unless maintained elsewhere)
M:      Masahiro Yamada <yamada.masahiro@socionext.com>
M:      Michal Marek <michal.lkml@markovi.net>
T:      git git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git
L:      linux-kbuild@vger.kernel.org
S:      Maintained
F:      Documentation/kbuild/
F:      Makefile
F:      scripts/Kbuild*
F:      scripts/Makefile*
F:      scripts/basic/
F:      scripts/mk*
F:      scripts/mod/
F:      scripts/package/






> Masahiro Yamada <yamada.masahiro@socionext.com> writes:
> > Blackfin and metag were the only architectures that prefix symbols with
> > an underscore.  They were removed by commit 4ba66a976072 ("arch: remove
> > blackfin port"), commit bb6fb6dfcc17 ("metag: Remove arch/metag/"),
> > respectively.
> >
> > It is no longer necessary to handle <prefix> part of module device
> > table symbols.
> >
> > Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> > ---
> >
> >  scripts/mod/file2alias.c | 7 +++----
> >  1 file changed, 3 insertions(+), 4 deletions(-)
> >
> > diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c
> > index 7be4369..ba4ebc4 100644
> > --- a/scripts/mod/file2alias.c
> > +++ b/scripts/mod/file2alias.c
> > @@ -1415,11 +1415,10 @@ void handle_moddevtable(struct module *mod, struct elf_info *info,
> >       if (ELF_ST_TYPE(sym->st_info) != STT_OBJECT)
> >               return;
> >
> > -     /* All our symbols are of form <prefix>__mod_<name>__<identifier>_device_table. */
> > -     name = strstr(symname, "__mod_");
> > -     if (!name)
> > +     /* All our symbols are of form __mod_<name>__<identifier>_device_table. */
> > +     if (strncmp(symname, "__mod_", strlen("__mod_")))
> >               return;
> > -     name += strlen("__mod_");
> > +     name = symname + strlen("__mod_");
> >       namelen = strlen(name);
> >       if (namelen < strlen("_device_table"))
> >               return;
> > --
> > 2.7.4
Masahiro Yamada Oct. 9, 2018, 3 p.m. UTC | #3
On Fri, Sep 28, 2018 at 3:23 PM Masahiro Yamada
<yamada.masahiro@socionext.com> wrote:
>
> Blackfin and metag were the only architectures that prefix symbols with
> an underscore.  They were removed by commit 4ba66a976072 ("arch: remove
> blackfin port"), commit bb6fb6dfcc17 ("metag: Remove arch/metag/"),
> respectively.
>
> It is no longer necessary to handle <prefix> part of module device
> table symbols.
>
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> ---


Applied to linux-kbuild.


>  scripts/mod/file2alias.c | 7 +++----
>  1 file changed, 3 insertions(+), 4 deletions(-)
>
> diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c
> index 7be4369..ba4ebc4 100644
> --- a/scripts/mod/file2alias.c
> +++ b/scripts/mod/file2alias.c
> @@ -1415,11 +1415,10 @@ void handle_moddevtable(struct module *mod, struct elf_info *info,
>         if (ELF_ST_TYPE(sym->st_info) != STT_OBJECT)
>                 return;
>
> -       /* All our symbols are of form <prefix>__mod_<name>__<identifier>_device_table. */
> -       name = strstr(symname, "__mod_");
> -       if (!name)
> +       /* All our symbols are of form __mod_<name>__<identifier>_device_table. */
> +       if (strncmp(symname, "__mod_", strlen("__mod_")))
>                 return;
> -       name += strlen("__mod_");
> +       name = symname + strlen("__mod_");
>         namelen = strlen(name);
>         if (namelen < strlen("_device_table"))
>                 return;
> --
> 2.7.4
>
diff mbox series

Patch

diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c
index 7be4369..ba4ebc4 100644
--- a/scripts/mod/file2alias.c
+++ b/scripts/mod/file2alias.c
@@ -1415,11 +1415,10 @@  void handle_moddevtable(struct module *mod, struct elf_info *info,
 	if (ELF_ST_TYPE(sym->st_info) != STT_OBJECT)
 		return;
 
-	/* All our symbols are of form <prefix>__mod_<name>__<identifier>_device_table. */
-	name = strstr(symname, "__mod_");
-	if (!name)
+	/* All our symbols are of form __mod_<name>__<identifier>_device_table. */
+	if (strncmp(symname, "__mod_", strlen("__mod_")))
 		return;
-	name += strlen("__mod_");
+	name = symname + strlen("__mod_");
 	namelen = strlen(name);
 	if (namelen < strlen("_device_table"))
 		return;