summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeka2023-06-22 23:48:24 +0300
committerJeka2023-06-22 23:48:24 +0300
commit5044b4b52b055721532303f99530dfc38796bc6a (patch)
tree6658588ba0d5db2c9e562c6c9f74b99816b634d6
parent91db949feaecbbdd1f28ddbe1899c2db3261e80d (diff)
downloadaur-5044b4b52b055721532303f99530dfc38796bc6a.tar.gz
kernel release 6.3.9
-rw-r--r--.SRCINFO16
-rw-r--r--0001-nouveau-fix-client-work-fence-deletion-race.patch55
-rw-r--r--PKGBUILD14
-rw-r--r--config2
-rw-r--r--hid-asus-rog-ally.patch38
-rw-r--r--rog_ally_sound.patch71
6 files changed, 127 insertions, 69 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 02d29d3df1d8..2c924638340e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = linux-jcore
pkgdesc = Kernel for Manjaro/EndeavourOS/Arch (ACS override patch include)
- pkgver = 6.3.8
- pkgrel = 2
+ pkgver = 6.3.9
+ pkgrel = 1
url = https://www.kernel.org/
arch = x86_64
license = GPL2
@@ -21,12 +21,13 @@ pkgbase = linux-jcore
replaces = linux-acs-manjaro
replaces = linux-acs-manjaro-headers
options = !strip
- source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.3.8.tar.xz
+ source = https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.3.9.tar.xz
source = config
source = 0101-ZEN_Add_sysctl_and_CONFIG_to_disallow_unprivileged_CLONE_NEWUSER.patch
source = 0103-Bluetooth_fix_deadlock_for_RFCOMM_sk_state_change.patch
- source = 0001-nouveau-fix-client-work-fence-deletion-race.patch
source = mt7921e_Perform_FLR_to_recovery_the_device.patch
+ source = rog_ally_sound.patch
+ source = hid-asus-rog-ally.patch
source = 0301-revert-fbcon-remove-now-unusued-softback_lines-cursor-argument.patch
source = 0302-revert-fbcon-remove-no-op-fbcon_set_origin.patch
source = 0303-revert-fbcon-remove-soft-scrollback-code.patch
@@ -44,12 +45,13 @@ pkgbase = linux-jcore
source = 0412-bootsplash.patch
source = 0413-bootsplash.gitpatch
source = 0999-acs.gitpatch
- sha256sums = 4323d421250e2e444c35d36f4aa8ddb56591dedc25c68d359d19c4ef9dd20955
- sha256sums = b4a5b0172ffb1ed227e72d5504fc2e21fbd7e498e32a10ee993b4aeb3e28cc7a
+ sha256sums = 41ecf21399b17ab85163750ba22347d09b54fa099b80b63d0e2ef0066129b13e
+ sha256sums = 4c355c0f35852dc94ed921ed144407e606097ed2b62d84dab9865c7bc03b06ec
sha256sums = 05f04019d4a2ee072238c32860fa80d673687d84d78ef436ae9332b6fb788467
sha256sums = a8a2d8b402b2877df1a949a106c634b6c366dd33b954c4b735ce1d3778214169
- sha256sums = 0042242bb3348e83d9361c87d90f60d9ac354e9593b59dbd26b074df8f8b75fc
sha256sums = d673d034fbcd80426fd8d9c6af56537c5fe5b55fe49d74e313474d7fc285ecc1
+ sha256sums = 2b64a6f677e3b1278f7ae0080b3e58383e097c28e63672a800272ff66d435976
+ sha256sums = bfb838dc7748af37b29c90fb216c9666a6f49e0f0e6df8827a5dfe84ef62d626
sha256sums = 2b11905b63b05b25807dd64757c779da74dd4c37e36d3f7a46485b1ee5a9d326
sha256sums = 94a8538251ad148f1025cc3de446ce64f73dc32b01815426fb159c722e8fa5bc
sha256sums = 50f4ccc4aeb0ffb8ec648b90a84ff188dbfed5364075cf0c6045c5696caf6ca9
diff --git a/0001-nouveau-fix-client-work-fence-deletion-race.patch b/0001-nouveau-fix-client-work-fence-deletion-race.patch
deleted file mode 100644
index c5073038f440..000000000000
--- a/0001-nouveau-fix-client-work-fence-deletion-race.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 0138bee3c72c96d6aaedce02f5691730ec81571d Mon Sep 17 00:00:00 2001
-From: Dave Airlie <airlied@redhat.com>
-Date: Thu, 15 Jun 2023 12:22:11 +1000
-Subject: [PATCH] nouveau: fix client work fence deletion race
-
-This seems to have existed for ever but is now more apparant after
-9bff18d13473a9fdf81d5158248472a9d8ecf2bd (drm/ttm: use per BO cleanup workers)
-
-My analysis:
-two threads are running,
-one in the irq signalling the fence, in dma_fence_signal_timestamp_locked,
-it has done the DMA_FENCE_FLAG_SIGNALLED_BIT setting, but hasn't yet reached the callbacks.
-
-second thread in nouveau_cli_work_ready, where it sees the fence is signalled, so then puts the
-fence, cleanups the object and frees the work item, which contains the callback.
-
-thread one goes again and tries to call the callback and causes the use-after-free.
-
-Proposed fix:
-lock the fence signalled check in nouveau_cli_work_ready, so either the callbacks are done
-or the memory is freed.
-
-Signed-off-by: Dave Airlie <airlied@redhat.com>
----
- drivers/gpu/drm/nouveau/nouveau_drm.c | 14 ++++++++++----
- 1 file changed, 10 insertions(+), 4 deletions(-)
-
-diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
-index cc7c5b4a05fd..1a45be769848 100644
---- a/drivers/gpu/drm/nouveau/nouveau_drm.c
-+++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
-@@ -137,10 +137,16 @@ nouveau_name(struct drm_device *dev)
- static inline bool
- nouveau_cli_work_ready(struct dma_fence *fence)
- {
-- if (!dma_fence_is_signaled(fence))
-- return false;
-- dma_fence_put(fence);
-- return true;
-+ unsigned long flags;
-+ bool ret = true;
-+ spin_lock_irqsave(fence->lock, flags);
-+ if (!dma_fence_is_signaled_locked(fence))
-+ ret = false;
-+ spin_unlock_irqrestore(fence->lock, flags);
-+
-+ if (ret == true)
-+ dma_fence_put(fence);
-+ return ret;
- }
-
- static void
---
-2.40.1
-
diff --git a/PKGBUILD b/PKGBUILD
index 61ff907e5b3d..4982847e3425 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -12,8 +12,8 @@ pkgbase=linux-jcore
pkgname=('linux-jcore' 'linux-jcore-headers')
_kernelname=-jcore
_hostname=jcore
-pkgver=6.3.8
-pkgrel=2
+pkgver=6.3.9
+pkgrel=1
pkgdesc="Kernel for Manjaro/EndeavourOS/Arch (ACS override patch include)"
arch=('x86_64')
url="https://www.kernel.org/"
@@ -28,8 +28,9 @@ source=("https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-$pkgver.tar.xz"
'0101-ZEN_Add_sysctl_and_CONFIG_to_disallow_unprivileged_CLONE_NEWUSER.patch'
'0103-Bluetooth_fix_deadlock_for_RFCOMM_sk_state_change.patch'
# MANJARO Patches
- '0001-nouveau-fix-client-work-fence-deletion-race.patch'
'mt7921e_Perform_FLR_to_recovery_the_device.patch'
+ 'rog_ally_sound.patch'
+ 'hid-asus-rog-ally.patch'
# Bootsplash
'0301-revert-fbcon-remove-now-unusued-softback_lines-cursor-argument.patch'
'0302-revert-fbcon-remove-no-op-fbcon_set_origin.patch'
@@ -49,12 +50,13 @@ source=("https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-$pkgver.tar.xz"
'0413-bootsplash.gitpatch'
# ACS override patch
'0999-acs.gitpatch')
-sha256sums=('4323d421250e2e444c35d36f4aa8ddb56591dedc25c68d359d19c4ef9dd20955'
- 'b4a5b0172ffb1ed227e72d5504fc2e21fbd7e498e32a10ee993b4aeb3e28cc7a'
+sha256sums=('41ecf21399b17ab85163750ba22347d09b54fa099b80b63d0e2ef0066129b13e'
+ '4c355c0f35852dc94ed921ed144407e606097ed2b62d84dab9865c7bc03b06ec'
'05f04019d4a2ee072238c32860fa80d673687d84d78ef436ae9332b6fb788467'
'a8a2d8b402b2877df1a949a106c634b6c366dd33b954c4b735ce1d3778214169'
- '0042242bb3348e83d9361c87d90f60d9ac354e9593b59dbd26b074df8f8b75fc'
'd673d034fbcd80426fd8d9c6af56537c5fe5b55fe49d74e313474d7fc285ecc1'
+ '2b64a6f677e3b1278f7ae0080b3e58383e097c28e63672a800272ff66d435976'
+ 'bfb838dc7748af37b29c90fb216c9666a6f49e0f0e6df8827a5dfe84ef62d626'
'2b11905b63b05b25807dd64757c779da74dd4c37e36d3f7a46485b1ee5a9d326'
'94a8538251ad148f1025cc3de446ce64f73dc32b01815426fb159c722e8fa5bc'
'50f4ccc4aeb0ffb8ec648b90a84ff188dbfed5364075cf0c6045c5696caf6ca9'
diff --git a/config b/config
index 0e9ce8aa030a..24d3e7324c4c 100644
--- a/config
+++ b/config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 6.3.8-2 Kernel Configuration
+# Linux/x86 6.3.9-1 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (GCC) 13.1.1 20230429"
CONFIG_CC_IS_GCC=y
diff --git a/hid-asus-rog-ally.patch b/hid-asus-rog-ally.patch
new file mode 100644
index 000000000000..b75540bcee5b
--- /dev/null
+++ b/hid-asus-rog-ally.patch
@@ -0,0 +1,38 @@
+diff --git a/drivers/hid/hid-asus.c b/drivers/hid/hid-asus.c
+index 01a27579ec02..cbdf8e1c6960 100644
+--- a/drivers/hid/hid-asus.c
++++ b/drivers/hid/hid-asus.c
+@@ -911,6 +911,11 @@ static int asus_input_mapping(struct hid_device *hdev,
+
+ /* Fn+Right Aura mode next on N-Key keyboard */
+ case 0xb3: asus_map_key_clear(KEY_PROG3); break;
++
++ case 0xa5: asus_map_key_clear(KEY_F15); break; /* ROG Ally left back */
++ case 0xa6: asus_map_key_clear(KEY_F16); break; /* ROG Ally QAM button */
++ case 0xa7: asus_map_key_clear(KEY_F17); break; /* ROG Ally ROG long-press */
++ case 0xa8: asus_map_key_clear(KEY_F18); break; /* ROG Ally ROG long-press-release */
+
+ default:
+ /* ASUS lazily declares 256 usages, ignore the rest,
+@@ -1268,6 +1273,9 @@ static const struct hid_device_id asus_devices[] = {
+ { HID_USB_DEVICE(USB_VENDOR_ID_ASUSTEK,
+ USB_DEVICE_ID_ASUSTEK_ROG_NKEY_KEYBOARD2),
+ QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD },
++ { HID_USB_DEVICE(USB_VENDOR_ID_ASUSTEK,
++ USB_DEVICE_ID_ASUSTEK_ROG_NKEY_ALLY),
++ QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD },
+ { HID_USB_DEVICE(USB_VENDOR_ID_ASUSTEK,
+ USB_DEVICE_ID_ASUSTEK_ROG_CLAYMORE_II_KEYBOARD),
+ QUIRK_ROG_CLAYMORE_II_KEYBOARD },
+diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
+index 5d29abac2300..bf2a125f3d61 100644
+--- a/drivers/hid/hid-ids.h
++++ b/drivers/hid/hid-ids.h
+@@ -207,6 +207,7 @@
+ #define USB_DEVICE_ID_ASUSTEK_ROG_KEYBOARD3 0x1822
+ #define USB_DEVICE_ID_ASUSTEK_ROG_NKEY_KEYBOARD 0x1866
+ #define USB_DEVICE_ID_ASUSTEK_ROG_NKEY_KEYBOARD2 0x19b6
++#define USB_DEVICE_ID_ASUSTEK_ROG_NKEY_ALLY 0x1abe
+ #define USB_DEVICE_ID_ASUSTEK_ROG_CLAYMORE_II_KEYBOARD 0x196b
+ #define USB_DEVICE_ID_ASUSTEK_FX503VD_KEYBOARD 0x1869
+
diff --git a/rog_ally_sound.patch b/rog_ally_sound.patch
new file mode 100644
index 000000000000..dfc24ceb52cc
--- /dev/null
+++ b/rog_ally_sound.patch
@@ -0,0 +1,71 @@
+diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
+index a5d55a7063d3..66b56b3e3c2c 100644
+--- a/sound/pci/hda/patch_realtek.c
++++ b/sound/pci/hda/patch_realtek.c
+@@ -7120,6 +7120,10 @@ enum {
+ ALC294_FIXUP_ASUS_DUAL_SPK,
+ ALC285_FIXUP_THINKPAD_X1_GEN7,
+ ALC285_FIXUP_THINKPAD_HEADSET_JACK,
++ ALC294_FIXUP_ASUS_ALLY,
++ ALC294_FIXUP_ASUS_ALLY_PINS,
++ ALC294_FIXUP_ASUS_ALLY_VERBS,
++ ALC294_FIXUP_ASUS_ALLY_SPEAKER,
+ ALC294_FIXUP_ASUS_HPE,
+ ALC294_FIXUP_ASUS_COEF_1B,
+ ALC294_FIXUP_ASUS_GX502_HP,
+@@ -8419,6 +8423,47 @@ static const struct hda_fixup alc269_fixups[] = {
+ .chained = true,
+ .chain_id = ALC289_FIXUP_DELL_SPK2
+ },
++ [ALC294_FIXUP_ASUS_ALLY] = {
++ .type = HDA_FIXUP_FUNC,
++ .v.func = cs35l41_fixup_i2c_two,
++ .chained = true,
++ .chain_id = ALC294_FIXUP_ASUS_ALLY_PINS
++ },
++ [ALC294_FIXUP_ASUS_ALLY_PINS] = {
++ .type = HDA_FIXUP_PINS,
++ .v.pins = (const struct hda_pintbl[]) {
++ { 0x19, 0x03a11050 },
++ { 0x1a, 0x03a11C30 },
++ { 0x21, 0x03211420 },
++ { }
++ },
++ .chained = true,
++ .chain_id = ALC294_FIXUP_ASUS_ALLY_VERBS
++ },
++ [ALC294_FIXUP_ASUS_ALLY_VERBS] = {
++ .type = HDA_FIXUP_VERBS,
++ .v.verbs = (const struct hda_verb[]) {
++ { 0x20, AC_VERB_SET_COEF_INDEX, 0x45 },
++ { 0x20, AC_VERB_SET_PROC_COEF, 0x5089 },
++ { 0x20, AC_VERB_SET_COEF_INDEX, 0x46 },
++ { 0x20, AC_VERB_SET_PROC_COEF, 0x0004 },
++ { 0x20, AC_VERB_SET_COEF_INDEX, 0x47 },
++ { 0x20, AC_VERB_SET_PROC_COEF, 0xA47A },
++ { 0x20, AC_VERB_SET_COEF_INDEX, 0x49 },
++ { 0x20, AC_VERB_SET_PROC_COEF, 0x0049},
++ { 0x20, AC_VERB_SET_COEF_INDEX, 0x4A },
++ { 0x20, AC_VERB_SET_PROC_COEF, 0x201B },
++ { 0x20, AC_VERB_SET_COEF_INDEX, 0x6B },
++ { 0x20, AC_VERB_SET_PROC_COEF, 0x4278},
++ { }
++ },
++ .chained = true,
++ .chain_id = ALC294_FIXUP_ASUS_ALLY_SPEAKER
++ },
++ [ALC294_FIXUP_ASUS_ALLY_SPEAKER] = {
++ .type = HDA_FIXUP_FUNC,
++ .v.func = alc285_fixup_speaker2_to_dac1,
++ },
+ [ALC294_FIXUP_SPK2_TO_DAC1] = {
+ .type = HDA_FIXUP_FUNC,
+ .v.func = alc285_fixup_speaker2_to_dac1,
+@@ -9596,6 +9641,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = {
+ SND_PCI_QUIRK(0x10ec, 0x1254, "Intel Reference board", ALC295_FIXUP_CHROME_BOOK),
+ SND_PCI_QUIRK(0x10ec, 0x12cc, "Intel Reference board", ALC225_FIXUP_HEADSET_JACK),
+ SND_PCI_QUIRK(0x10f7, 0x8338, "Panasonic CF-SZ6", ALC269_FIXUP_HEADSET_MODE),
++ SND_PCI_QUIRK(0x1043, 0x17F3, "ROG Ally RC71L_RC71L", ALC294_FIXUP_ASUS_ALLY),
+ SND_PCI_QUIRK(0x144d, 0xc109, "Samsung Ativ book 9 (NP900X3G)", ALC269_FIXUP_INV_DMIC),
+ SND_PCI_QUIRK(0x144d, 0xc169, "Samsung Notebook 9 Pen (NP930SBE-K01US)", ALC298_FIXUP_SAMSUNG_AMP),
+ SND_PCI_QUIRK(0x144d, 0xc176, "Samsung Notebook 9 Pro (NP930MBE-K04US)", ALC298_FIXUP_SAMSUNG_AMP),