Thread (14 messages) 14 messages, 4 authors, 2025-11-17

Re: [PATCH v5 6/8] kbuild: Allow adding modules into the FIT ramdisk

From: Thomas Weißschuh <hidden>
Date: 2025-11-17 08:30:37
Also in: linux-kbuild, lkml

On Fri, Nov 14, 2025 at 08:50:27PM +0100, Nicolas Schier wrote:
On Fri, Nov 14, 2025 at 04:29:33PM +0100, Thomas Weißschuh wrote:
quoted
On Fri, Nov 14, 2025 at 07:27:32AM -0700, Simon Glass wrote:
(...)
quoted
quoted
 quiet_cmd_fit = FIT     $@
-      cmd_fit = $(MAKE_FIT) -o $@ --arch $(UIMAGE_ARCH) --os linux \
-		--name '$(UIMAGE_NAME)' \
+      cmd_fit = $(if $(FIT_MODULES), \
+		find $(objtree) -name '*.ko' > $(objtree)/.modules-list 2>/dev/null &&) \
This will include stale module files. You can get an up-to-date list from
$(objtree)/modules.order with a bit post-processing.
Maybe kbuild can be extended to also create a list of the .ko files.
(I would be interested in that for my own usecases, too)
oh yes, thanks for the pointer.  This is indeed quite simple and much
better than calling find.  For in-tree kmods:

    compiled-modules = $(patsubst %.o,%.ko,$(call read-file, $(objtree)/modules.order))
Tiny nitpick: IMO 'built' modules would be more accurate than 'compiled' modules.
But as we need the list of modules in a file, we can also add a
$(call write-file,FILE,TEXT) macro (cp. read-file in
scripts/Kbuild.include).
Thomas, is this sufficient for your use case?  Or do you also need a
make target outputting the list of kmods?
For my usecase I need it in a file [0], passing them on the command line will
likely run into argument list length limitations.

A new file 'modules.built' generated from modules.order would be useful both
for this patch, mine and other tools like scripts/package/builddeb.
(Or 'modules.loadable', matching the scheme from 'modules.builtin')
On the other hand the modules.order seems to have quite some special logic in
the Makefile, so it may not be straigtforward to add such a file.

[0] https://lore.kernel.org/lkml/20250429-module-hashes-v3-9-00e9258def9e@weissschuh.net/#Z31scripts:module-hashes.sh (local)


Thomas
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help