[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAK7LNASE5rMVXPryqs_VYh2fy47CUeNiV=90dJVCP359p-LWdg@mail.gmail.com>
Date: Tue, 13 Dec 2022 15:41:36 +0900
From: Masahiro Yamada <masahiroy@...nel.org>
To: Nicolas Schier <nicolas@...sle.eu>
Cc: linux-kbuild@...r.kernel.org, linux-kernel@...r.kernel.org,
Nathan Chancellor <nathan@...nel.org>,
Nick Desaulniers <ndesaulniers@...gle.com>
Subject: Re: [PATCH] kbuild: do not sort after reading modules.order
On Tue, Dec 13, 2022 at 1:18 PM Nicolas Schier <nicolas@...sle.eu> wrote:
>
> On Sun 11 Dec 2022 18:49:18 GMT, Masahiro Yamada wrote:
> > modules.order lists modules in the deterministic order (that is why
> > "modules order"), and there is no duplication in the list.
>
> Isn't a subdirectory's modules.order just created by
> concatenation of $(obj-m) (w/ respect to mentioned subdirs)?
Not $(obj-m) directly.
The magic is $^, which is a deduplicated list
of prerequisites.
> Thus, "no duplication" seems to be true, as long as there is no obj-m
> containing duplicated entries. Do we ensure unique entries in obj-m
> only?
The entries in modules.order must be unique.
Moreover, the basename of modules must be unique.
scripts/modules-check.sh is a stronger check.
You might be interested in these commits:
d724b578a1f746db6fc1fd5e4cbba554a855dc8d
3a48a91901c516a46a3406ea576798538a8d94d2
>
> Kind regards,
> Nicolas
>
> >
> > $(sort ) is pointless.
> >
> > Signed-off-by: Masahiro Yamada <masahiroy@...nel.org>
> > ---
> >
> > scripts/Makefile.modfinal | 2 +-
> > scripts/Makefile.modinst | 2 +-
> > 2 files changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/scripts/Makefile.modfinal b/scripts/Makefile.modfinal
> > index 25bedd83644b..4705d32388f3 100644
> > --- a/scripts/Makefile.modfinal
> > +++ b/scripts/Makefile.modfinal
> > @@ -13,7 +13,7 @@ include $(srctree)/scripts/Kbuild.include
> > include $(srctree)/scripts/Makefile.lib
> >
> > # find all modules listed in modules.order
> > -modules := $(sort $(shell cat $(MODORDER)))
> > +modules := $(shell cat $(MODORDER))
> >
> > __modfinal: $(modules)
> > @:
> > diff --git a/scripts/Makefile.modinst b/scripts/Makefile.modinst
> > index a4c987c23750..f4cff42069ad 100644
> > --- a/scripts/Makefile.modinst
> > +++ b/scripts/Makefile.modinst
> > @@ -9,7 +9,7 @@ __modinst:
> > include include/config/auto.conf
> > include $(srctree)/scripts/Kbuild.include
> >
> > -modules := $(sort $(shell cat $(MODORDER)))
> > +modules := $(shell cat $(MODORDER))
> >
> > ifeq ($(KBUILD_EXTMOD),)
> > dst := $(MODLIB)/kernel
> > --
> > 2.34.1
>
> --
> epost|xmpp: nicolas@...sle.eu irc://oftc.net/nsc
> ↳ gpg: 18ed 52db e34f 860e e9fb c82b 7d97 0932 55a0 ce7f
> -- frykten for herren er opphav til kunnskap --
--
Best Regards
Masahiro Yamada
Powered by blists - more mailing lists