From: "pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de>
To: "Ludovic Courtès" <ludo@gnu.org>
Cc: 60010@debbugs.gnu.org
Subject: bug#60010: [version 1.4.0] AMD screen stays black; modprobe fails
Date: Thu, 15 Dec 2022 18:42:59 +0100 [thread overview]
Message-ID: <875yec5zrw.fsf@pelzflorian.de> (raw)
In-Reply-To: <87y1r9r2cj.fsf@gnu.org> ("Ludovic Courtès"'s message of "Thu, 15 Dec 2022 00:29:32 +0100")
[-- Attachment #1: Type: text/plain, Size: 1057 bytes --]
Hello Ludo, sorry to say I attempted your modprobe patch that uses
(parameterize ((default-environment-variables …
No good. Screen is black. Same [ modprobe ] failure in dmesg on QEMU
and on real AMD hardware.
There are workarounds by surrounding modprobe within strace or
alternatively using kernel-module-loader-service (attached; but again,
without the file-exists? check, this would cause new issues on some
machines that dont need uvesafb).
A stupid
diff --git a/gnu/system/install.scm b/gnu/system/install.scm
index f6f1923121..a99cf09e31 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -289,6 +289,7 @@ (define (uvesafb-shepherd-service _)
(provision '(maybe-uvesafb))
(requirement '(file-systems))
(start #~(lambda ()
+ (sleep 1)
(or (file-exists? "/dev/fb0")
(invoke #+(file-append kmod "/bin/modprobe")
"uvesafb"
fails though.
All bad…
Regards,
Florian
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: use-kernel-module-loader.patch --]
[-- Type: text/x-patch, Size: 2925 bytes --]
diff --git a/gnu/system/install.scm b/gnu/sysdiff --git a/gnu/system/install.scm b/gnu/system/install.scm
index f6f1923121..2a1f401536 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -40,6 +40,7 @@ (define-module (gnu system install)
#:use-module (gnu system locale)
#:use-module (gnu services avahi)
#:use-module (gnu services dbus)
+ #:use-module (gnu services linux)
#:use-module (gnu services networking)
#:use-module (gnu services shepherd)
#:use-module (gnu services ssh)
@@ -283,29 +284,22 @@ (define %nscd-minimal-caches
;; These define a service to load the uvesafb kernel module with the
;; appropriate options. The GUI installer needs it when the machine does not
;; support Kernel Mode Setting. Otherwise kmscon is missing /dev/fb0.
-(define (uvesafb-shepherd-service _)
- (list (shepherd-service
- (documentation "Load the uvesafb kernel module if needed.")
- (provision '(maybe-uvesafb))
- (requirement '(file-systems))
- (start #~(lambda ()
- (or (file-exists? "/dev/fb0")
- (invoke #+(file-append kmod "/bin/modprobe")
- "uvesafb"
- (string-append "v86d=" #$v86d "/sbin/v86d")
- "mode_option=1024x768"))))
- (respawn? #f)
- (one-shot? #t))))
-
-(define uvesafb-service-type
- (service-type
- (name 'uvesafb)
- (extensions
- (list (service-extension shepherd-root-service-type
- uvesafb-shepherd-service)))
- (description
- "Load the @code{uvesafb} kernel module with the right options.")
- (default-value #t)))
+(define uvesafb-config
+ (computed-file "uvesafb.conf"
+ #~(with-output-to-file #$output
+ (lambda ()
+ (display
+ (string-append "options uvesafb"
+ " " "v86d=" #$v86d "/sbin/v86d"
+ " " "mode_option=1024x768"))))))
+
+(define uvesafb-services
+ (list (service kernel-module-loader-service-type
+ '("uvesafb"))
+ (simple-service 'uvesafb-config etc-service-type
+ (list `("modprobe.d/uvesafb.conf"
+ ,uvesafb-config)))))
+
(define* (%installation-services #:key (system (or (and=>
(%current-target-system)
@@ -450,8 +444,7 @@ (define bare-bones-os
;; installer. Some may also need a kernel parameter like nomodeset
;; or vga=793, but we leave that for the user to specify in GRUB.
`(,@(if (supported-package? v86d system)
- (list (service uvesafb-service-type))
- '())))))
+ uvesafb-services)))))
(define %issue
;; Greeting.
next prev parent reply other threads:[~2022-12-15 17:44 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-12 16:27 bug#60010: [version 1.4.0] AMD screen stays black; modprobe fails pelzflorian (Florian Pelz)
2022-12-12 20:11 ` Josselin Poiret via Bug reports for GNU Guix
2022-12-13 12:29 ` pelzflorian (Florian Pelz)
2022-12-12 23:18 ` Ludovic Courtès
2022-12-13 10:00 ` Ludovic Courtès
2022-12-13 12:50 ` pelzflorian (Florian Pelz)
2022-12-13 13:03 ` Ludovic Courtès
2022-12-14 13:49 ` pelzflorian (Florian Pelz)
2022-12-14 23:29 ` Ludovic Courtès
2022-12-15 17:42 ` pelzflorian (Florian Pelz) [this message]
2022-12-15 23:37 ` Ludovic Courtès
2022-12-16 11:48 ` pelzflorian (Florian Pelz)
2022-12-13 13:51 ` pelzflorian (Florian Pelz)
2022-12-13 16:37 ` Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=875yec5zrw.fsf@pelzflorian.de \
--to=pelzflorian@pelzflorian.de \
--cc=60010@debbugs.gnu.org \
--cc=ludo@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).