On Fri, Feb 10, 2023 at 11:05 AM Nick Alcock <nick.alcock@xxxxxxxxxx> wrote: > > Since commit 8b41fc4454e ("kbuild: create modules.builtin without > Makefile.modbuiltin or tristate.conf"), MODULE_LICENSE declarations > are used to identify modules. As a consequence, uses of the macro > in non-modules will cause modprobe to misidentify their containing > object file as a module when it is not (false positives), and modprobe > might succeed rather than failing with a suitable error message. How is there an issue when any given module could be built-in instead? The general trend is to make all PCI host drivers modules, the primary reason this one, IIRC, is not a module is because it is missing remove() hook to de-init the PCI bus. Not too hard to add, but I wanted to do a common devm hook to do that instead of an explicit .remove() hook in each driver. I suppose we could just ignore that and allow building as a module. Unloading is optional anyways. > So comment out all uses of MODULE_LICENSE that are not in real modules That's a comment for the series more than just this patch. > (the license declaration is left in as documentation). > > Signed-off-by: Nick Alcock <nick.alcock@xxxxxxxxxx> > Suggested-by: Luis Chamberlain <mcgrof@xxxxxxxxxx> > Cc: Luis Chamberlain <mcgrof@xxxxxxxxxx> > Cc: linux-modules@xxxxxxxxxxxxxxx > Cc: linux-kernel@xxxxxxxxxxxxxxx > Cc: Rob Herring <robh@xxxxxxxxxx> > Cc: linux-pci@xxxxxxxxxxxxxxx > Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > --- > drivers/pci/controller/pci-versatile.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-)