summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Pelz <pelzflorian@pelzflorian.de>2020-04-29 17:17:55 +0200
committerFlorian Pelz <pelzflorian@pelzflorian.de>2020-05-01 08:46:59 +0000
commite06664da02a829c7fa8fd084aac47c837451d57a (patch)
tree81516d0a20df13d69350d8a0a8fc3816aa98bb46
parent73ddcab6075f60ef9b3cd72a35fbf7f5d622b6ef (diff)
downloadpatches-e06664da02a829c7fa8fd084aac47c837451d57a.tar
patches-e06664da02a829c7fa8fd084aac47c837451d57a.tar.gz
system: Blacklist usbmouse kernel module in default kernel-arguments.
This avoids a race with the bcm5974 kernel module. Fixes <https://bugs.gnu.org/35574>. * gnu/system.scm (%default-modprobe-blacklist): New variable. (<operating-system>)[kernel-arguments]: Default to ... (%default-kernel-arguments): ... this new variable. * doc/guix.texi (operating-system Reference): Document the change.
-rw-r--r--doc/guix.texi2
-rw-r--r--gnu/system.scm16
2 files changed, 15 insertions, 3 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 26b4652f67..bdae451875 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -11274,7 +11274,7 @@ possible to use the GNU@tie{}Hurd.}.
A list of objects (usually packages) to collect loadable kernel modules
from--e.g. @code{(list ddcci-driver-linux)}.
-@item @code{kernel-arguments} (default: @code{'("quiet")})
+@item @code{kernel-arguments} (default: @code{%default-kernel-arguments})
List of strings or gexps representing additional arguments to pass on
the command-line of the kernel---e.g., @code{("console=ttyS0")}.
diff --git a/gnu/system.scm b/gnu/system.scm
index 3c511f4089..ab6982ef5e 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -7,6 +7,7 @@
;;; Copyright © 2019 Meiyo Peng <meiyo.peng@gmail.com>
;;; Copyright © 2020 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
+;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -148,7 +149,8 @@
%base-packages-linux
%base-packages-networking
%base-packages-utils
- %base-firmware))
+ %base-firmware
+ %default-kernel-arguments))
;;; Commentary:
;;;
@@ -179,7 +181,7 @@
(kernel-loadable-modules operating-system-kernel-loadable-modules
(default '())) ; list of packages
(kernel-arguments operating-system-user-kernel-arguments
- (default '("quiet"))) ; list of gexps/strings
+ (default %default-kernel-arguments)) ; list of gexps/strings
(bootloader operating-system-bootloader) ; <bootloader-configuration>
(label operating-system-label ; string
(thunked)
@@ -488,6 +490,16 @@ possible (that is if there's a LINUX keyword argument in the build system)."
((#:linux kernel #f)
target-kernel)))))
+(define %default-modprobe-blacklist
+ ;; List of kernel modules to blacklist by default.
+ '("usbmouse")) ;see <https://bugs.gnu.org/35574>
+
+(define %default-kernel-arguments
+ ;; Default arguments passed to the kernel.
+ (list (string-append "modprobe.blacklist="
+ (string-join %default-modprobe-blacklist ","))
+ "quiet"))
+
(define* (operating-system-directory-base-entries os)
"Return the basic entries of the 'system' directory of OS for use as the
value of the SYSTEM-SERVICE-TYPE service."