Re: [PATCH] modpost: Warn about unused module namespace imports

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jan 24, 2025 at 12:50 AM Andy Shevchenko
<andriy.shevchenko@xxxxxxxxx> wrote:
>
> On Thu, Jan 23, 2025 at 12:09:50PM +0100, Uwe Kleine-König wrote:
> > Symbols can be exported in namespaces and to make use of such symbols,
> > the namespace has to be explicitly imported. Importing a namespace
> > without actually using one of its symbols is likely a mistake.
> >
> > There are a few offenders for an x86_64 allmodconfig build, so the
> > warning is (for now) only enabled for W=1 builds.
> >
> > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@xxxxxxxxxxxx>
> > ---
> > Hello,
> >
> > one of the offenders is drivers/pwm/pwm-raspberrypi-poe.c (
> >
> >       WARNING: modpost: module pwm-raspberrypi-poe imports namespace PWM, but doesn't use it.
> >
> > ). The issue there is that on x86_64 CONFIG_RASPBERRYPI_FIRMWARE is
> > always disabled and so devm_rpi_firmware_get() returns always NULL which
> > makes raspberrypi_pwm_probe return an error before the pwm functions are
> > used. So the compiler optimizes out all references to pwm functions and
> > the warning triggers. I didn't look into the other problems to check if
> > these are similar half-false positives.
> >
> > Still I think this is a useful check?
>
> This will require to add a number of ugly ifdeffery to the kernel code like
>
> MODULE_FOO();
> #if ...
> MODULE_IMPORT_NS();
> #endif
>
> I am definitely not okay with that.


+1




-- 
Best Regards
Masahiro Yamada





[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux