From 8ed431c18d8c8b44607a266a7bc4c8cb48e2c56d Mon Sep 17 00:00:00 2001 From: Timo Wilken Date: Sat, 24 Aug 2024 14:10:43 +0200 Subject: Try to fix Minecraft crashes --- tw/system.scm | 12 +++++++----- tw/system/btl.scm | 19 ++++++++++++++++++- 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/tw/system.scm b/tw/system.scm index d38109af..2c1cdac0 100644 --- a/tw/system.scm +++ b/tw/system.scm @@ -206,14 +206,16 @@ ACTION!=\"remove\", SUBSYSTEM==\"leds\", GROUP=\"video\", MODE=\"0664\" (wayland? #f) (work-system? #f) (xorg-extra-modules '()) - (xorg-drivers '())) + (xorg-drivers '()) + (xorg-extra-config '())) (unless (and (string? host-name) (number? cores) (string? wireless-interface) (string? backlight-device) (list? xorg-extra-modules) - (list? xorg-drivers)) + (list? xorg-drivers) + (list? xorg-extra-config)) (error "Invalid argument type")) (cons* @@ -362,7 +364,7 @@ ACTION!=\"remove\", SUBSYSTEM==\"leds\", GROUP=\"video\", MODE=\"0664\" (if wayland? (wayland-enduser-base-services) - (x11-enduser-base-services work-system? xorg-extra-modules xorg-drivers)))) + (x11-enduser-base-services work-system? xorg-extra-modules xorg-drivers xorg-extra-config)))) (define enduser-base-services (modify-services (append %system-channel-services %desktop-services) @@ -385,11 +387,11 @@ ACTION!=\"remove\", SUBSYSTEM==\"leds\", GROUP=\"video\", MODE=\"0664\" (login-service-type config => (tw-login-configuration config)))) -(define (x11-enduser-base-services work-system? xorg-extra-modules xorg-drivers) +(define (x11-enduser-base-services work-system? xorg-extra-modules xorg-drivers xorg-extra-config) (define xorg-config (xorg-configuration (keyboard-layout %british-keyboard) - (extra-config (list touchpad-xorg-config)) + (extra-config (cons touchpad-xorg-config xorg-extra-config)) (modules (append xorg-extra-modules %default-xorg-modules)) (drivers xorg-drivers))) diff --git a/tw/system/btl.scm b/tw/system/btl.scm index a7389de9..ce0af3ac 100644 --- a/tw/system/btl.scm +++ b/tw/system/btl.scm @@ -35,6 +35,22 @@ (define data-partition ; /dev/nvme0n1p1 (uuid "cd4b7af3-f5ce-44a0-a986-3271078fb1d6" 'btrfs)) +;; This may fix AMDGPU crashes in Minecraft with the following errors in dmesg: +;; [drm:amdgpu_dm_plane_helper_prepare_fb [amdgpu]] *ERROR* Failed to pin framebuffer with error -22 +;; and the following errors in the Minecraft log: +;; amdgpu: amdgpu_cs_query_fence_status failed. +;; amdgpu: The CS has been rejected (-125). +;; https://old.reddit.com/r/AMDHelp/comments/17yn72h/page_flip_fails_error22game_crash/ +(define amdgpu-reduced-output-latency "\ +Section \"OutputClass\" + Identifier \"AMDgpu\" + MatchDriver \"amdgpu\" + Driver \"amdgpu\" + Option \"EnablePageFlip\" \"off\" + Option \"TearFree\" \"false\" +EndSection +") + (define-public %btl-system (operating-system (host-name "btl.twilken.net") @@ -148,7 +164,8 @@ #:host-name host-name #:cores 24 #:wireless-interface "wlp15s0" - #:backlight-device "amdgpu_bl0") + #:backlight-device "amdgpu_bl0" + #:xorg-extra-config (list amdgpu-reduced-output-latency)) (delete thermald-service-type)))))) %btl-system -- cgit v1.2.3