Using EXPORT_SYMBOL*() on static functions is fundamentally wrong.
Modpost currently reports that as a warning, but clearly this is not a
pattern we should allow, and all in-tree occurences should have been
fixed by now. So, promote the warn() message to fatal() to make sure
this never happens again.
Signed-off-by: Quentin Perret <[email protected]>
---
scripts/mod/modpost.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
index f882ce0d9327..70b0e825a139 100644
--- a/scripts/mod/modpost.c
+++ b/scripts/mod/modpost.c
@@ -2663,9 +2663,9 @@ int main(int argc, char **argv)
for (s = symbolhash[n]; s; s = s->next) {
if (s->is_static)
- warn("\"%s\" [%s] is a static %s\n",
- s->name, s->module->name,
- export_str(s->export));
+ fatal("\"%s\" [%s] is a static %s\n",
+ s->name, s->module->name,
+ export_str(s->export));
}
}
--
2.29.2.454.gaff20da3a2-goog
On Tue, Nov 24, 2020 at 06:24:09PM +0000, Quentin Perret wrote:
> Using EXPORT_SYMBOL*() on static functions is fundamentally wrong.
> Modpost currently reports that as a warning, but clearly this is not a
> pattern we should allow, and all in-tree occurences should have been
> fixed by now. So, promote the warn() message to fatal() to make sure
> this never happens again.
>
> Signed-off-by: Quentin Perret <[email protected]>
> ---
> scripts/mod/modpost.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
> index f882ce0d9327..70b0e825a139 100644
> --- a/scripts/mod/modpost.c
> +++ b/scripts/mod/modpost.c
> @@ -2663,9 +2663,9 @@ int main(int argc, char **argv)
>
> for (s = symbolhash[n]; s; s = s->next) {
> if (s->is_static)
> - warn("\"%s\" [%s] is a static %s\n",
> - s->name, s->module->name,
> - export_str(s->export));
> + fatal("\"%s\" [%s] is a static %s\n",
> + s->name, s->module->name,
> + export_str(s->export));
> }
> }
>
Acked-by: Greg Kroah-Hartman <[email protected]>
On Tue, Nov 24, 2020 at 06:24:09PM +0000, Quentin Perret wrote:
>Using EXPORT_SYMBOL*() on static functions is fundamentally wrong.
>Modpost currently reports that as a warning, but clearly this is not a
>pattern we should allow, and all in-tree occurences should have been
>fixed by now. So, promote the warn() message to fatal() to make sure
>this never happens again.
>
>Signed-off-by: Quentin Perret <[email protected]>
Reviewed-by: Matthias Maennich <[email protected]>
Cheers,
Matthias
>---
> scripts/mod/modpost.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
>diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
>index f882ce0d9327..70b0e825a139 100644
>--- a/scripts/mod/modpost.c
>+++ b/scripts/mod/modpost.c
>@@ -2663,9 +2663,9 @@ int main(int argc, char **argv)
>
> for (s = symbolhash[n]; s; s = s->next) {
> if (s->is_static)
>- warn("\"%s\" [%s] is a static %s\n",
>- s->name, s->module->name,
>- export_str(s->export));
>+ fatal("\"%s\" [%s] is a static %s\n",
>+ s->name, s->module->name,
>+ export_str(s->export));
> }
> }
>
>--
>2.29.2.454.gaff20da3a2-goog
>
On Wed, Nov 25, 2020 at 3:24 AM Quentin Perret <[email protected]> wrote:
>
> Using EXPORT_SYMBOL*() on static functions is fundamentally wrong.
> Modpost currently reports that as a warning, but clearly this is not a
> pattern we should allow, and all in-tree occurences should have been
> fixed by now. So, promote the warn() message to fatal() to make sure
> this never happens again.
>
> Signed-off-by: Quentin Perret <[email protected]>
> ---
> scripts/mod/modpost.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
> index f882ce0d9327..70b0e825a139 100644
> --- a/scripts/mod/modpost.c
> +++ b/scripts/mod/modpost.c
> @@ -2663,9 +2663,9 @@ int main(int argc, char **argv)
>
> for (s = symbolhash[n]; s; s = s->next) {
> if (s->is_static)
> - warn("\"%s\" [%s] is a static %s\n",
> - s->name, s->module->name,
> - export_str(s->export));
> + fatal("\"%s\" [%s] is a static %s\n",
> + s->name, s->module->name,
> + export_str(s->export));
> }
> }
>
> --
> 2.29.2.454.gaff20da3a2-goog
>
I am not a big fan of (ab)using fatal() for this case.
Please consider using error() once
the following is queued up.
https://patchwork.kernel.org/project/linux-kbuild/patch/[email protected]/
--
Best Regards
Masahiro Yamada
On Tuesday 01 Dec 2020 at 23:00:37 (+0900), Masahiro Yamada wrote:
> I am not a big fan of (ab)using fatal() for this case.
>
> Please consider using error() once
> the following is queued up.
>
> https://patchwork.kernel.org/project/linux-kbuild/patch/[email protected]/
Yes, much nicer, thanks for that series.
I'll post a v2 shortly.
Thanks,
Quentin