mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-04-06 21:20:33 +02:00
linux-modules: Raise an error when a kernel module cannot be found.
Previously we'd get an unhelpful backtrace like this:
In gnu/build/linux-modules.scm:
184:47 4 (recursive-module-dependencies _ #:lookup-module _)
98:14 3 (module-dependencies _)
85:18 2 (modinfo-section-contents _)
In ice-9/ports.scm:
439:11 1 (call-with-input-file #f #<procedure get-bytevector-al?> ?)
In unknown file:
0 (open-file #f "r" #:encoding #f #:guess-encoding #f)
ERROR: In procedure open-file:
Wrong type (expecting string): #f
builder for `/gnu/store/…-linux-modules.drv' failed with exit code 1
* gnu/build/linux-modules.scm (find-module-file): When MODULE cannot be
found, raise an error instead of returning #f. This is more useful to
the user.
This commit is contained in:
@@ -136,7 +136,7 @@ and normalizing it."
|
||||
(define (find-module-file directory module)
|
||||
"Lookup module NAME under DIRECTORY, and return its absolute file name.
|
||||
NAME can be a file name with or without '.ko', or it can be a module name.
|
||||
Return #f if it could not be found.
|
||||
Raise an error if it could not be found.
|
||||
|
||||
Module names can differ from file names in interesting ways; for instance,
|
||||
module names usually (always?) use underscores as the inter-word separator,
|
||||
@@ -162,7 +162,7 @@ whereas file names often, but not always, use hyphens. Examples:
|
||||
((file)
|
||||
file)
|
||||
(()
|
||||
#f)
|
||||
(error "kernel module not found" module directory))
|
||||
((_ ...)
|
||||
(error "several modules by that name" module directory))))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user