summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorgraysky2023-08-03 14:40:06 -0400
committergraysky2023-08-03 14:40:06 -0400
commit09e415fa9cd494a8864b6b05093e0eb76cbf3af5 (patch)
tree7f255a23ea924d740b0fb56efbbbf5a01c2f871f
parent9a7ad2720c089978b8526ec37257eeb84af43259 (diff)
downloadaur-09e415fa9cd494a8864b6b05093e0eb76cbf3af5.tar.gz
Update to 6.4.8-1
-rw-r--r--.SRCINFO14
-rw-r--r--0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch2
-rw-r--r--0002-drivers-firmware-skip-simpledrm-if-nvidia-drm.modese.patch90
-rw-r--r--PKGBUILD10
-rw-r--r--config12
5 files changed, 111 insertions, 17 deletions
diff --git a/.SRCINFO b/.SRCINFO
index e15e3c2a28ec..151078259f1e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,5 +1,5 @@
pkgbase = linux-ck
- pkgver = 6.4.7
+ pkgver = 6.4.8
pkgrel = 1
url = https://wiki.archlinux.org/index.php/Linux-ck
arch = x86_64
@@ -15,20 +15,22 @@ pkgbase = linux-ck
makedepends = tar
makedepends = xz
options = !strip
- source = https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.4.7.tar.xz
- source = https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.4.7.tar.sign
+ source = https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.4.8.tar.xz
+ source = https://www.kernel.org/pub/linux/kernel/v6.x/linux-6.4.8.tar.sign
source = config
source = more-uarches-20221217.tar.gz::https://github.com/graysky2/kernel_compiler_patch/archive/20221217.tar.gz
source = ck-hrtimer-2870d6ac146aa658af60bb18a9c7503efe5992d4.tar.gz::https://github.com/graysky2/linux-patches/archive/2870d6ac146aa658af60bb18a9c7503efe5992d4.tar.gz
source = 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
+ source = 0002-drivers-firmware-skip-simpledrm-if-nvidia-drm.modese.patch
validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886
validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E
- sha256sums = de143cb61dcaa756c05f56ff35144316d810615819518a33e34754f064c4a7d8
+ sha256sums = c59f34e19e84db30206b9373041abf893f9d8a08765d163586570a5238c458b6
sha256sums = SKIP
- sha256sums = f9b4320b074f279d666e86870f950bcea68f9f1912093626036410b8b3152a6d
+ sha256sums = dad89a5db7c4e19ae29c60861000f3669e86c2e957d445a675596c1e85a57464
sha256sums = f1d586e111932890ad5e0df15d092fb9b3f87bae4ea17812aae9b0ec98fe2db0
sha256sums = ed0b8773d66079198edd1ecdbe0564d6ad33c641e82d85375e50a2d9e0275144
- sha256sums = 123e9bdc5e28f9cac322c271cf0edd010036d2b2b1fdaba8adecf1be7ed1eb72
+ sha256sums = 58d09bed6204c41bdc2220740a90e974b999e779da9b8f2dd5a049247f193327
+ sha256sums = 63ba7146381b0117bc3b5813c6df6374e68307e089dd81aad769993e5af95983
pkgname = linux-ck
pkgdesc = The Linux kernel and modules with ck's hrtimer patches
diff --git a/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch b/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
index 6be38bbe122a..279c0057fc25 100644
--- a/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
+++ b/0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
@@ -1,4 +1,4 @@
-From 0ae15203e67e6a8d3f76fb05caafdc3e90968e4c Mon Sep 17 00:00:00 2001
+From 8d210c9529a46d6cd07027286714805b7c7e0c30 Mon Sep 17 00:00:00 2001
From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
Date: Mon, 16 Sep 2019 04:53:20 +0200
Subject: [PATCH 1/3] ZEN: Add sysctl and CONFIG to disallow unprivileged
diff --git a/0002-drivers-firmware-skip-simpledrm-if-nvidia-drm.modese.patch b/0002-drivers-firmware-skip-simpledrm-if-nvidia-drm.modese.patch
new file mode 100644
index 000000000000..77e56de559ad
--- /dev/null
+++ b/0002-drivers-firmware-skip-simpledrm-if-nvidia-drm.modese.patch
@@ -0,0 +1,90 @@
+From e65a5fe09577d17e2fded61067f759f2bf02f6c0 Mon Sep 17 00:00:00 2001
+From: Javier Martinez Canillas <javierm@redhat.com>
+Date: Thu, 19 May 2022 14:40:07 +0200
+Subject: [PATCH 2/3] drivers/firmware: skip simpledrm if nvidia-drm.modeset=1
+ is set
+
+The Nvidia proprietary driver has some bugs that leads to issues if used
+with the simpledrm driver. The most noticeable is that does not register
+an emulated fbdev device.
+
+It just relies on a fbdev to be registered by another driver, that could
+be that could be attached to the framebuffer console. On UEFI machines,
+this is the efifb driver.
+
+This means that disabling the efifb driver will cause virtual consoles to
+not be present in the system when using the Nvidia driver. Legacy BIOS is
+not affected just because fbcon is not used there, but instead vgacon.
+
+Unless a VGA mode is specified using the vga= kernel command line option,
+in that case the vesafb driver is used instead and its fbdev attached to
+the fbcon.
+
+This is a problem because with CONFIG_SYSFB_SIMPLEFB=y, the sysfb platform
+code attempts to register a "simple-framebuffer" platform device (that is
+matched against simpledrm) and only registers either an "efi-framebuffer"
+or "vesa-framebuffer" if this fails to be registered due the video modes
+not being compatible.
+
+The Nvidia driver relying on another driver to register the fbdev is quite
+fragile, since it can't really assume those will stick around. For example
+there are patches posted to remove the EFI and VESA platform devices once
+a real DRM or fbdev driver probes.
+
+But in any case, moving to a simpledrm + emulated fbdev only breaks this
+assumption and causes users to not have VT if the Nvidia driver is used.
+
+So to prevent this, let's add a workaround and make the sysfb to skip the
+"simple-framebuffer" registration when nvidia-drm.modeset=1 option is set.
+
+This is quite horrible, but honestly I can't think of any other approach.
+
+For this to work, the CONFIG_FB_EFI and CONFIG_FB_VESA config options must
+be enabled besides CONFIG_DRM_SIMPLEDRM.
+
+Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
+(cherry picked from commit 811fe0e4dcfd86a0db5135d3bfef4936794efdb6)
+For: https://bugs.archlinux.org/task/73720
+---
+ drivers/firmware/sysfb.c | 18 +++++++++++++++++-
+ 1 file changed, 17 insertions(+), 1 deletion(-)
+
+diff --git a/drivers/firmware/sysfb.c b/drivers/firmware/sysfb.c
+index 3c197db42c9d..16e4a2e90fae 100644
+--- a/drivers/firmware/sysfb.c
++++ b/drivers/firmware/sysfb.c
+@@ -34,6 +34,22 @@
+ #include <linux/screen_info.h>
+ #include <linux/sysfb.h>
+
++static int skip_simpledrm;
++
++static int __init simpledrm_disable(char *opt)
++{
++ if (!opt)
++ return -EINVAL;
++
++ get_option(&opt, &skip_simpledrm);
++
++ if (skip_simpledrm)
++ pr_info("The simpledrm driver will not be probed\n");
++
++ return 0;
++}
++early_param("nvidia-drm.modeset", simpledrm_disable);
++
+ static struct platform_device *pd;
+ static DEFINE_MUTEX(disable_lock);
+ static bool disabled;
+@@ -85,7 +101,7 @@ static __init int sysfb_init(void)
+
+ /* try to create a simple-framebuffer device */
+ compatible = sysfb_parse_mode(si, &mode);
+- if (compatible) {
++ if (compatible && !skip_simpledrm) {
+ pd = sysfb_create_simplefb(si, &mode);
+ if (!IS_ERR(pd))
+ goto unlock_mutex;
+--
+2.41.0
+
diff --git a/PKGBUILD b/PKGBUILD
index eac961f86c48..281d963a65a2 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -71,7 +71,7 @@ _subarch=
### IMPORTANT: Do no edit below this line unless you know what you're doing
pkgbase=linux-ck
-pkgver=6.4.7
+pkgver=6.4.8
pkgrel=1
arch=(x86_64)
url="https://wiki.archlinux.org/index.php/Linux-ck"
@@ -103,17 +103,19 @@ source=(
"more-uarches-$_gcc_more_v.tar.gz::https://github.com/graysky2/kernel_compiler_patch/archive/$_gcc_more_v.tar.gz"
"ck-hrtimer-$_commit.tar.gz::https://github.com/graysky2/linux-patches/archive/$_commit.tar.gz"
0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
+ 0002-drivers-firmware-skip-simpledrm-if-nvidia-drm.modese.patch
)
validpgpkeys=(
ABAF11C65A2970B130ABE3C479BE3E4300411886 # Linus Torvalds
647F28654894E3BD457199BE38DBBDC86092693E # Greg Kroah-Hartman
)
-sha256sums=('de143cb61dcaa756c05f56ff35144316d810615819518a33e34754f064c4a7d8'
+sha256sums=('c59f34e19e84db30206b9373041abf893f9d8a08765d163586570a5238c458b6'
'SKIP'
- 'f9b4320b074f279d666e86870f950bcea68f9f1912093626036410b8b3152a6d'
+ 'dad89a5db7c4e19ae29c60861000f3669e86c2e957d445a675596c1e85a57464'
'f1d586e111932890ad5e0df15d092fb9b3f87bae4ea17812aae9b0ec98fe2db0'
'ed0b8773d66079198edd1ecdbe0564d6ad33c641e82d85375e50a2d9e0275144'
- '123e9bdc5e28f9cac322c271cf0edd010036d2b2b1fdaba8adecf1be7ed1eb72')
+ '58d09bed6204c41bdc2220740a90e974b999e779da9b8f2dd5a049247f193327'
+ '63ba7146381b0117bc3b5813c6df6374e68307e089dd81aad769993e5af95983')
_make() {
test -s version
make KERNELRELEASE="$(<version)" "$@"
diff --git a/config b/config
index 5b1515d24203..88ac7d0fdb24 100644
--- a/config
+++ b/config
@@ -1,15 +1,15 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 6.4.4-arch1 Kernel Configuration
+# Linux/x86 6.4.8-arch1 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="gcc (GCC) 13.1.1 20230714"
+CONFIG_CC_VERSION_TEXT="gcc (GCC) 13.2.1 20230801"
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=130101
+CONFIG_GCC_VERSION=130201
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
-CONFIG_AS_VERSION=24000
+CONFIG_AS_VERSION=24100
CONFIG_LD_IS_BFD=y
-CONFIG_LD_VERSION=24000
+CONFIG_LD_VERSION=24100
CONFIG_LLD_VERSION=0
CONFIG_CC_CAN_LINK=y
CONFIG_CC_CAN_LINK_STATIC=y
@@ -2335,7 +2335,7 @@ CONFIG_ISCSI_IBFT=m
CONFIG_FW_CFG_SYSFS=m
# CONFIG_FW_CFG_SYSFS_CMDLINE is not set
CONFIG_SYSFB=y
-# CONFIG_SYSFB_SIMPLEFB is not set
+CONFIG_SYSFB_SIMPLEFB=y
CONFIG_FW_CS_DSP=m
CONFIG_GOOGLE_FIRMWARE=y
# CONFIG_GOOGLE_SMI is not set