lkml.org 
[lkml]   [2023]   [Mar]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH v10 05/13] kbuild: remove MODULE_LICENSE/AUTHOR/DESCRIPTION in non-modules
    On Wed, Dec 7, 2022 at 2:04 PM Luis Chamberlain <mcgrof@kernel.org> wrote:
    >
    > On Tue, Dec 06, 2022 at 10:02:30PM +0100, Arnd Bergmann wrote:
    > > On Tue, Dec 6, 2022, at 21:03, Nick Alcock wrote:
    > > > On 6 Dec 2022, Geert Uytterhoeven uttered the following:
    > > > Only MODULE_LICENSE invokes MODULE_FILE and thus ends up introducing a
    > > > KBUILD_MODOBJS entry that triggers things going wrong iff not a module:
    > > > so only it needs to go out (or be replaced with a variant that doesn't
    > > > invoke MODULE_FILE, if you want to keep the license in too --
    > >
    > > That sounds like a better alternative
    > >
    > > > but if the thing is no longer a standalone entity at all I'm not sure
    > > > what meaning it could possibly have).
    > >
    > > As far as I can tell, the general trend is to make more things modules,
    > > so there is a good chance that these come back eventually. If the
    > > information in the MODULE_LICENSE field isn't wrong, I would just
    > > leave it in there.
    >
    > Tooling today uses it though to make a deterministic call on if something
    > *can* be a module. In particular after commit 8b41fc4454e ("kbuild: create
    > modules.builtin without Makefile.modbuiltin or tristate.conf") we rely on
    > the module license tag to generate the modules.builtin file. This in
    > turn is used to allow modprobe to *not* fail when trying to load a module
    > which is built-in.



    If we have a bool driver 'foo.ko' in modules.builtin,
    'modprobe foo' will not fail where you expect it will fail.

    Is it so important to make this strict?

    I do not think so.


    What is a point for a user to realize
    "Oh, I did not know foo cannot be compiled as a module"


    Re-read the commit description of
    bc081dd6e9f622c73334dc465359168543ccaabf

    The motivation of module.builtin is to know the functionality 'foo'
    is available (via built-in or module, whatever).

    In this sense, having always-builtin entries in module.builtin is OK.


    I do not see any sense in the tooling mess in this patch set.








    > So we can't just disable the tag for when the code is built-in as *want*
    > to carry it when modules are built-in, that is the point, to help
    > userspace with this determination.
    >
    > I don't think we want to revert 8b41fc4454e as it means we'd force Kbuild to
    > traverse the source tree twice.


    I do not want to revert it.

    and I do not want this series in the mainline.




    >
    > Geert's point was not keeping MODULE_LICENSE() but instead the other
    > MODULE_*() crap for things which are not modules in case in the future
    > code becomes a module...
    >
    > But I don't see the point in keeping things around just in case, if we
    > want to keep things simple. Just use the SPDX license tag for the license.
    >
    > Luis



    --
    Best Regards
    Masahiro Yamada

    \
     
     \ /
      Last update: 2023-03-27 00:44    [W:4.119 / U:0.280 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site