On Tue, Jun 6, 2023 at 2:42 AM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote: > > "No build warning" is a strong requirement these days, so you must fix > all issues before enabling a new warning flag. > > We often add a new warning to W=1 first so that the kbuild test robot > blocks new breakages. > > This commit allows modpost to show extra warnings only when W=1 > (or KBUILD_EXTRA_WARN=1) is given. > > Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx> Patch seems fine, but without anyone reading extra_warn, I'm curious what new extra warnings you had in mind were? > --- > > scripts/Makefile.modpost | 1 + > scripts/mod/modpost.c | 7 ++++++- > 2 files changed, 7 insertions(+), 1 deletion(-) > > diff --git a/scripts/Makefile.modpost b/scripts/Makefile.modpost > index 0980c58d8afc..074e27c0c140 100644 > --- a/scripts/Makefile.modpost > +++ b/scripts/Makefile.modpost > @@ -47,6 +47,7 @@ modpost-args = \ > $(if $(KBUILD_MODPOST_WARN),-w) \ > $(if $(KBUILD_NSDEPS),-d $(MODULES_NSDEPS)) \ > $(if $(CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS)$(KBUILD_NSDEPS),-N) \ > + $(if $(findstring 1, $(KBUILD_EXTRA_WARN)),-W) \ > -o $@ > > modpost-deps := $(MODPOST) > diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c > index d10f5bdcb753..3ea5eb2b1029 100644 > --- a/scripts/mod/modpost.c > +++ b/scripts/mod/modpost.c > @@ -42,6 +42,8 @@ static bool allow_missing_ns_imports; > > static bool error_occurred; > > +static bool extra_warn; > + > /* > * Cut off the warnings when there are too many. This typically occurs when > * vmlinux is missing. ('make modules' without building vmlinux.) > @@ -2199,7 +2201,7 @@ int main(int argc, char **argv) > LIST_HEAD(dump_lists); > struct dump_list *dl, *dl2; > > - while ((opt = getopt(argc, argv, "ei:mnT:o:awENd:")) != -1) { > + while ((opt = getopt(argc, argv, "ei:mnT:o:aWwENd:")) != -1) { > switch (opt) { > case 'e': > external_module = true; > @@ -2224,6 +2226,9 @@ int main(int argc, char **argv) > case 'T': > files_source = optarg; > break; > + case 'W': > + extra_warn = true; > + break; > case 'w': > warn_unresolved = true; > break; > -- > 2.39.2 > -- Thanks, ~Nick Desaulniers