[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAK7LNAQfm5GVH93zAJakB1JpyS1qf93qTUETofOstSJ9jcky3w@mail.gmail.com>
Date: Fri, 25 Sep 2020 02:22:45 +0900
From: Masahiro Yamada <masahiroy@...nel.org>
To: Pierre-Louis Bossart <pierre-louis.bossart@...ux.intel.com>
Cc: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Linux Kbuild mailing list <linux-kbuild@...r.kernel.org>,
Kai Vehmanen <kai.vehmanen@...ux.intel.com>,
Filipe Brandenburger <filbranden@...gle.com>,
Greg Thelen <gthelen@...gle.com>,
Michael Davidson <md@...gle.com>,
Eugene Surovegin <surovegin@...gle.com>,
Stephen Rothwell <sfr@...b.auug.org.au>,
Michal Marek <michal.lkml@...kovi.net>,
Jonathan Corbet <corbet@....net>,
"open list:DOCUMENTATION" <linux-doc@...r.kernel.org>
Subject: Re: [PATCH] modpost: allow modpost to fail on warnings
On Mon, Sep 21, 2020 at 11:51 PM Pierre-Louis Bossart
<pierre-louis.bossart@...ux.intel.com> wrote:
>
> Thanks for the review,
>
> >> Set KBUILD_MODPOST_FAIL_ON_WARNINGS to a non-empty value to make the
> >> kbuild fail when modpost generates any warnings. This will avoid
> >> misses such as [1] where the SOF CI did not catch a missing module
> >> license.
> >>
> >> This was initially contributed in 2016 [2], rebase/clean-ups and tests
> >> by Pierre Bossart.
> >>
> >> Test example:
> >> $ KBUILD_MODPOST_FAIL_ON_WARNINGS=1 make
> >> GEN Makefile
> >> DESCEND objtool
> >> CALL sof-dev/scripts/atomic/check-atomics.sh
> >> CALL sof-dev/scripts/checksyscalls.sh
> >> CHK include/generated/compile.h
> >> MODPOST Module.symvers
> >> Kernel: arch/x86/boot/bzImage is ready (#13)
> >> WARNING: modpost: missing MODULE_LICENSE() in sound/soc/intel/boards/snd-soc-sof-sdw.o
> >> make[2]: *** [sof-dev/scripts/Makefile.modpost:114: Module.symvers] Error 2
> >
> >
> > I think [1] should be an error instead of a warning
> > by default.
>
> would the following patch be what you have in mind?
No.
error() does not exist.
merror() exists, but the difference from warn()
is just a prefix.
If any error happens, modpost should return the error code.
> diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
> index 422f1cfca289..ae1eb67aa0f2 100644
> --- a/scripts/mod/modpost.c
> +++ b/scripts/mod/modpost.c
> @@ -2018,7 +2018,7 @@ static void read_symbols(const char *modname)
> if (!mod->is_vmlinux) {
> license = get_modinfo(&info, "license");
> if (!license)
> - warn("missing MODULE_LICENSE() in %s\n", modname);
> + error("missing MODULE_LICENSE() in %s\n", modname);
> while (license) {
> if (license_is_gpl_compatible(license))
> mod->gpl_compatible = 1;
>
>
> If yes, also wondering if we can still add the option to treat warnings
> as errors as an opt-in behavior?
I want to add a new option only when it is necessary to do so.
I am not sure which warnings are real warnings.
> Thanks!
> -Pierre
--
Best Regards
Masahiro Yamada
Powered by blists - more mailing lists