summaryrefslogtreecommitdiff
path: root/gnu/system
diff options
context:
space:
mode:
authorHilton Chain <hako@ultrarare.space>2026-03-27 20:34:05 +0800
committerHilton Chain <hako@ultrarare.space>2026-04-03 16:26:52 +0800
commit853077feed1699f6a27e7a709cd35f2ed4ac4939 (patch)
tree4c9a3998b330638613ef4071e8a851b091e1aa65 /gnu/system
parentf27b9ee891e768ffb56ec4e5ffb5d49c636947bc (diff)
linux-initrd: Handle builtin modules with different module and file names.
Previously, modules we want were not normalized before comparing with builtin-modules, which was normalized by file-name->module-name. This made the code unable to find modules like nls_iso8859-1 (normalized to nls_iso8859_1) and usb-storage (normalized to usb_storage) when they're built into the kernel. * gnu/system/linux-initrd.scm (flat-linux-module-directory) [modules-to-lookup]: Normalize module name before comparing with builtin ones. Change-Id: Ifb3ab298b8435c38040a6d58cdb53a3a46eb8ee1 Merges: #7514
Diffstat (limited to 'gnu/system')
-rw-r--r--gnu/system/linux-initrd.scm6
1 files changed, 5 insertions, 1 deletions
diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm
index d1cd8d98b7b..f00a72afebc 100644
--- a/gnu/system/linux-initrd.scm
+++ b/gnu/system/linux-initrd.scm
@@ -154,7 +154,11 @@ MODULES and taken from LINUX."
'())))
(define modules-to-lookup
- (lset-difference string=? '#$modules builtin-modules))
+ (remove (lambda (module)
+ (member (normalize-module-name module)
+ ;; Normalized by `file-name->module-name'.
+ builtin-modules))
+ '#$modules))
(define modules
(let* ((lookup (cut find-module-file module-dir <>))