summaryrefslogtreecommitdiff
path: root/gnu/build/linux-modules.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/build/linux-modules.scm')
-rw-r--r--gnu/build/linux-modules.scm10
1 files changed, 6 insertions, 4 deletions
diff --git a/gnu/build/linux-modules.scm b/gnu/build/linux-modules.scm
index 3a47322065..053720574b 100644
--- a/gnu/build/linux-modules.scm
+++ b/gnu/build/linux-modules.scm
@@ -354,11 +354,13 @@ appears in BLACK-LIST are not loaded."
(close-fdes fd)
#t)
(lambda args
- ;; If this module was already loaded and we're in modprobe style, ignore
- ;; the error.
(when fd (close-fdes fd))
- (or (and recursive? (= EEXIST (system-error-errno args)))
- (apply throw args)))))))
+ (let ((errno (system-error-errno args)))
+ (or (and recursive? ; we're operating in ‘modprobe’ style
+ (member errno
+ (list EEXIST ; already loaded
+ EINVAL))) ; unsupported by hardware
+ (apply throw args))))))))
(define (load-linux-modules-from-directory modules directory)
"Load MODULES and their dependencies from DIRECTORY, a directory containing