summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjc_gargma <jc_gargma@iserlohn-fortress.net>2022-03-25 20:37:39 -0700
committerjc_gargma <jc_gargma@iserlohn-fortress.net>2022-03-25 20:37:39 -0700
commit258a9d41a91ba33906a4250287a9b34a05d26b83 (patch)
treec03fb8e607a8b169d33dcbb1b1773eb258ffe32f
parentUpdated to 5.15.30 (diff)
downloadlinux-258a9d41a91ba33906a4250287a9b34a05d26b83.tar.xz
Updated to 5.16.17
-rw-r--r--0002-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch (renamed from 0005-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch)14
-rw-r--r--0002-PCI-Add-more-NVIDIA-controllers-to-the-MSI-masking-q.patch24
-rw-r--r--0003-Bluetooth-Read-codec-capabilities-only-if-supported.patch56
-rw-r--r--0003-iommu-intel-do-deep-dma-unmapping-to-avoid-kernel-fl.patch88
-rw-r--r--0004-Bluetooth-fix-deadlock-for-RFCOMM-sk-state-change.patch231
-rw-r--r--0004-cpufreq-intel_pstate-ITMT-support-for-overclocked-sy.patch55
-rw-r--r--0005-mt76-mt7921-add-support-for-PCIe-ID-0x0608-0x0616.patch29
-rw-r--r--0006-lg-laptop-Recognize-more-models.patch39
-rw-r--r--0006-mt76-mt7921-reduce-log-severity-levels-for-informati.patch45
-rw-r--r--0007-Revert-NFSv4.1-query-for-fs_location-attr-on-a-new-f.patch236
-rw-r--r--PKGBUILD58
-rw-r--r--config158
12 files changed, 764 insertions, 269 deletions
diff --git a/0005-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch b/0002-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch
index e84d183..7b891a9 100644
--- a/0005-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch
+++ b/0002-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch
@@ -1,7 +1,7 @@
-From ae3386d67597db29ad2ba2685815e224a39897bc Mon Sep 17 00:00:00 2001
+From 44e76e54009b9033fe9c98b9a6c32ce9c1cef59b Mon Sep 17 00:00:00 2001
From: Kiran K <kiran.k@intel.com>
Date: Wed, 13 Oct 2021 13:35:11 +0530
-Subject: [PATCH 5/8] Bluetooth: btintel: Fix bdaddress comparison with garbage
+Subject: [PATCH 2/8] Bluetooth: btintel: Fix bdaddress comparison with garbage
value
Intel Read Verision(TLV) data is parsed into a local structure variable
@@ -11,15 +11,17 @@ only if controller is present in boot loader mode.
Signed-off-by: Kiran K <kiran.k@intel.com>
Reviewed-by: Tedd Ho-Jeong An <tedd.an@intel.com>
+Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
+(cherry picked from commit 893505319c74cf3faa45a5ed9d5338ff03b66949)
---
drivers/bluetooth/btintel.c | 22 ++++++++++++++--------
1 file changed, 14 insertions(+), 8 deletions(-)
diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
-index f1705b46fc88..b9055a3e61ed 100644
+index 851a0c9b8fae..1a4f8b227eac 100644
--- a/drivers/bluetooth/btintel.c
+++ b/drivers/bluetooth/btintel.c
-@@ -2006,14 +2006,16 @@ static int btintel_prepare_fw_download_tlv(struct hci_dev *hdev,
+@@ -2081,14 +2081,16 @@ static int btintel_prepare_fw_download_tlv(struct hci_dev *hdev,
if (ver->img_type == 0x03) {
btintel_clear_flag(hdev, INTEL_BOOTLOADER);
btintel_check_bdaddr(hdev);
@@ -44,7 +46,7 @@ index f1705b46fc88..b9055a3e61ed 100644
}
btintel_get_fw_name_tlv(ver, fwname, sizeof(fwname), "sfi");
-@@ -2303,6 +2305,10 @@ static int btintel_setup_combined(struct hci_dev *hdev)
+@@ -2467,6 +2469,10 @@ static int btintel_setup_combined(struct hci_dev *hdev)
goto exit_error;
}
@@ -56,5 +58,5 @@ index f1705b46fc88..b9055a3e61ed 100644
err = btintel_parse_version_tlv(hdev, &ver_tlv, skb);
if (err) {
--
-2.33.1
+2.35.1
diff --git a/0002-PCI-Add-more-NVIDIA-controllers-to-the-MSI-masking-q.patch b/0002-PCI-Add-more-NVIDIA-controllers-to-the-MSI-masking-q.patch
deleted file mode 100644
index 11fa658..0000000
--- a/0002-PCI-Add-more-NVIDIA-controllers-to-the-MSI-masking-q.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 1ac8f753e4249e6864c1c42070ba957ceef1f82a Mon Sep 17 00:00:00 2001
-From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org>
-Date: Thu, 18 Nov 2021 22:53:31 +0100
-Subject: [PATCH 2/8] PCI: Add more NVIDIA controllers to the MSI masking quirk
-
-For: https://bugs.archlinux.org/task/72734
-For: https://bugs.archlinux.org/task/72777
----
- drivers/pci/quirks.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
-index 208fa03acdda..7fdb7e9c2e12 100644
---- a/drivers/pci/quirks.c
-+++ b/drivers/pci/quirks.c
-@@ -5802,3 +5802,5 @@ static void nvidia_ion_ahci_fixup(struct pci_dev *pdev)
- pdev->dev_flags |= PCI_DEV_FLAGS_HAS_MSI_MASKING;
- }
- DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, 0x0ab8, nvidia_ion_ahci_fixup);
-+DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, 0x0ab9, nvidia_ion_ahci_fixup);
-+DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_NVIDIA, 0x0d88, nvidia_ion_ahci_fixup);
---
-2.33.1
-
diff --git a/0003-Bluetooth-Read-codec-capabilities-only-if-supported.patch b/0003-Bluetooth-Read-codec-capabilities-only-if-supported.patch
new file mode 100644
index 0000000..57a23cc
--- /dev/null
+++ b/0003-Bluetooth-Read-codec-capabilities-only-if-supported.patch
@@ -0,0 +1,56 @@
+From f1ee8c1a0c5c57f5fa606c74e80d20514aa1b93d Mon Sep 17 00:00:00 2001
+From: Kiran K <kiran.k@intel.com>
+Date: Tue, 5 Oct 2021 20:15:56 +0530
+Subject: [PATCH 3/8] Bluetooth: Read codec capabilities only if supported
+
+Read codec capabilities only if HCI_READ_LOCAL_CODEC_CAPABILITIES
+command is supported. If capablities are not supported, then
+cache codec data without caps.
+
+Signed-off-by: Kiran K <kiran.k@intel.com>
+Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
+For: https://bugs.archlinux.org/task/73454
+---
+ net/bluetooth/hci_codec.c | 18 ++++++++++++++++--
+ 1 file changed, 16 insertions(+), 2 deletions(-)
+
+diff --git a/net/bluetooth/hci_codec.c b/net/bluetooth/hci_codec.c
+index f0421d0edaa3..38201532f58e 100644
+--- a/net/bluetooth/hci_codec.c
++++ b/net/bluetooth/hci_codec.c
+@@ -25,9 +25,11 @@ static int hci_codec_list_add(struct list_head *list,
+ }
+ entry->transport = sent->transport;
+ entry->len = len;
+- entry->num_caps = rp->num_caps;
+- if (rp->num_caps)
++ entry->num_caps = 0;
++ if (rp) {
++ entry->num_caps = rp->num_caps;
+ memcpy(entry->caps, caps, len);
++ }
+ list_add(&entry->list, list);
+
+ return 0;
+@@ -58,6 +60,18 @@ static void hci_read_codec_capabilities(struct hci_dev *hdev, __u8 transport,
+ __u32 len;
+
+ cmd->transport = i;
++
++ /* If Read_Codec_Capabilities command is not supported
++ * then just add codec to the list without caps
++ */
++ if (!(hdev->commands[45] & 0x08)) {
++ hci_dev_lock(hdev);
++ hci_codec_list_add(&hdev->local_codecs, cmd,
++ NULL, NULL, 0);
++ hci_dev_unlock(hdev);
++ continue;
++ }
++
+ skb = __hci_cmd_sync(hdev, HCI_OP_READ_LOCAL_CODEC_CAPS,
+ sizeof(*cmd), cmd,
+ HCI_CMD_TIMEOUT);
+--
+2.35.1
+
diff --git a/0003-iommu-intel-do-deep-dma-unmapping-to-avoid-kernel-fl.patch b/0003-iommu-intel-do-deep-dma-unmapping-to-avoid-kernel-fl.patch
deleted file mode 100644
index 8038a54..0000000
--- a/0003-iommu-intel-do-deep-dma-unmapping-to-avoid-kernel-fl.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From 74db74ec6ce112c6137d51610429e7ac9ea5b6c1 Mon Sep 17 00:00:00 2001
-From: Ajay Garg <ajaygargnsit@gmail.com>
-Date: Tue, 12 Oct 2021 19:26:53 +0530
-Subject: [PATCH 3/8] iommu: intel: do deep dma-unmapping, to avoid
- kernel-flooding.
-
-Origins at :
-https://lists.linuxfoundation.org/pipermail/iommu/2021-October/thread.html
-
-=== Changes from v1 => v2 ===
-
-a)
-Improved patch-description.
-
-b)
-A more root-level fix, as suggested by
-
- 1.
- Alex Williamson <alex.williamson@redhat.com>
-
- 2.
- Lu Baolu <baolu.lu@linux.intel.com>
-
-=== Issue ===
-
-Kernel-flooding is seen, when an x86_64 L1 guest (Ubuntu-21) is booted in qemu/kvm
-on a x86_64 host (Ubuntu-21), with a host-pci-device attached.
-
-Following kind of logs, along with the stacktraces, cause the flood :
-
-......
- DMAR: ERROR: DMA PTE for vPFN 0x428ec already set (to 3f6ec003 not 3f6ec003)
- DMAR: ERROR: DMA PTE for vPFN 0x428ed already set (to 3f6ed003 not 3f6ed003)
- DMAR: ERROR: DMA PTE for vPFN 0x428ee already set (to 3f6ee003 not 3f6ee003)
- DMAR: ERROR: DMA PTE for vPFN 0x428ef already set (to 3f6ef003 not 3f6ef003)
- DMAR: ERROR: DMA PTE for vPFN 0x428f0 already set (to 3f6f0003 not 3f6f0003)
-......
-
-=== Current Behaviour, leading to the issue ===
-
-Currently, when we do a dma-unmapping, we unmap/unlink the mappings, but
-the pte-entries are not cleared.
-
-Thus, following sequencing would flood the kernel-logs :
-
-i)
-A dma-unmapping makes the real/leaf-level pte-slot invalid, but the
-pte-content itself is not cleared.
-
-ii)
-Now, during some later dma-mapping procedure, as the pte-slot is about
-to hold a new pte-value, the intel-iommu checks if a prior
-pte-entry exists in the pte-slot. If it exists, it logs a kernel-error,
-along with a corresponding stacktrace.
-
-iii)
-Step ii) runs in abundance, and the kernel-logs run insane.
-
-=== Fix ===
-
-We ensure that as part of a dma-unmapping, each (unmapped) pte-slot
-is also cleared of its value/content (at the leaf-level, where the
-real mapping from a iova => pfn mapping is stored).
-
-This completes a "deep" dma-unmapping.
-
-Signed-off-by: Ajay Garg <ajaygargnsit@gmail.com>
-Link: https://lore.kernel.org/linux-iommu/20211012135653.3852-1-ajaygargnsit@gmail.com/
----
- drivers/iommu/intel/iommu.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c
-index 78f8c8e6803e..d8da48a91ba3 100644
---- a/drivers/iommu/intel/iommu.c
-+++ b/drivers/iommu/intel/iommu.c
-@@ -5092,6 +5092,8 @@ static size_t intel_iommu_unmap(struct iommu_domain *domain,
- gather->freelist = domain_unmap(dmar_domain, start_pfn,
- last_pfn, gather->freelist);
-
-+ dma_pte_clear_range(dmar_domain, start_pfn, last_pfn);
-+
- if (dmar_domain->max_addr == iova + size)
- dmar_domain->max_addr = iova;
-
---
-2.33.1
-
diff --git a/0004-Bluetooth-fix-deadlock-for-RFCOMM-sk-state-change.patch b/0004-Bluetooth-fix-deadlock-for-RFCOMM-sk-state-change.patch
new file mode 100644
index 0000000..20e2674
--- /dev/null
+++ b/0004-Bluetooth-fix-deadlock-for-RFCOMM-sk-state-change.patch
@@ -0,0 +1,231 @@
+From a5ab2842cf12aad4c7691c100b38917f9f3b6770 Mon Sep 17 00:00:00 2001
+From: Desmond Cheong Zhi Xi <desmondcheongzx@gmail.com>
+Date: Mon, 4 Oct 2021 14:07:34 -0400
+Subject: [PATCH 4/8] Bluetooth: fix deadlock for RFCOMM sk state change
+
+Syzbot reports the following task hang [1]:
+
+INFO: task syz-executor255:8499 blocked for more than 143 seconds.
+ Not tainted 5.14.0-rc7-syzkaller #0
+
+Call Trace:
+ context_switch kernel/sched/core.c:4681 [inline]
+ __schedule+0x93a/0x26f0 kernel/sched/core.c:5938
+ schedule+0xd3/0x270 kernel/sched/core.c:6017
+ __lock_sock+0x13d/0x260 net/core/sock.c:2644
+ lock_sock_nested+0xf6/0x120 net/core/sock.c:3185
+ lock_sock include/net/sock.h:1612 [inline]
+ rfcomm_sk_state_change+0xb4/0x390 net/bluetooth/rfcomm/sock.c:73
+ __rfcomm_dlc_close+0x1b6/0x8a0 net/bluetooth/rfcomm/core.c:489
+ rfcomm_dlc_close+0x1ea/0x240 net/bluetooth/rfcomm/core.c:520
+ __rfcomm_sock_close+0xac/0x260 net/bluetooth/rfcomm/sock.c:220
+ rfcomm_sock_shutdown+0xe9/0x210 net/bluetooth/rfcomm/sock.c:931
+ rfcomm_sock_release+0x5f/0x140 net/bluetooth/rfcomm/sock.c:951
+ __sock_release+0xcd/0x280 net/socket.c:649
+ sock_close+0x18/0x20 net/socket.c:1314
+ __fput+0x288/0x920 fs/file_table.c:280
+ task_work_run+0xdd/0x1a0 kernel/task_work.c:164
+ exit_task_work include/linux/task_work.h:32 [inline]
+ do_exit+0xbd4/0x2a60 kernel/exit.c:825
+ do_group_exit+0x125/0x310 kernel/exit.c:922
+ get_signal+0x47f/0x2160 kernel/signal.c:2808
+ arch_do_signal_or_restart+0x2a9/0x1c40 arch/x86/kernel/signal.c:865
+ handle_signal_work kernel/entry/common.c:148 [inline]
+ exit_to_user_mode_loop kernel/entry/common.c:172 [inline]
+ exit_to_user_mode_prepare+0x17d/0x290 kernel/entry/common.c:209
+ __syscall_exit_to_user_mode_work kernel/entry/common.c:291 [inline]
+ syscall_exit_to_user_mode+0x19/0x60 kernel/entry/common.c:302
+ do_syscall_64+0x42/0xb0 arch/x86/entry/common.c:86
+ entry_SYSCALL_64_after_hwframe+0x44/0xae
+
+Showing all locks held in the system:
+1 lock held by khungtaskd/1653:
+ #0: ffffffff8b97c280 (rcu_read_lock){....}-{1:2}, at:
+ debug_show_all_locks+0x53/0x260 kernel/locking/lockdep.c:6446
+1 lock held by krfcommd/4781:
+ #0: ffffffff8d306528 (rfcomm_mutex){+.+.}-{3:3}, at:
+ rfcomm_process_sessions net/bluetooth/rfcomm/core.c:1979 [inline]
+ #0: ffffffff8d306528 (rfcomm_mutex){+.+.}-{3:3}, at:
+ rfcomm_run+0x2ed/0x4a20 net/bluetooth/rfcomm/core.c:2086
+2 locks held by in:imklog/8206:
+ #0: ffff8880182ce5f0 (&f->f_pos_lock){+.+.}-{3:3}, at:
+ __fdget_pos+0xe9/0x100 fs/file.c:974
+ #1: ffff8880b9c51a58 (&rq->__lock){-.-.}-{2:2}, at:
+ raw_spin_rq_lock_nested kernel/sched/core.c:460 [inline]
+ #1: ffff8880b9c51a58 (&rq->__lock){-.-.}-{2:2}, at: raw_spin_rq_lock
+ kernel/sched/sched.h:1307 [inline]
+ #1: ffff8880b9c51a58 (&rq->__lock){-.-.}-{2:2}, at: rq_lock
+ kernel/sched/sched.h:1610 [inline]
+ #1: ffff8880b9c51a58 (&rq->__lock){-.-.}-{2:2}, at:
+ __schedule+0x233/0x26f0 kernel/sched/core.c:5852
+4 locks held by syz-executor255/8499:
+ #0: ffff888039a83690 (&sb->s_type->i_mutex_key#13){+.+.}-{3:3}, at:
+ inode_lock include/linux/fs.h:774 [inline]
+ #0: ffff888039a83690 (&sb->s_type->i_mutex_key#13){+.+.}-{3:3}, at:
+ __sock_release+0x86/0x280 net/socket.c:648
+ #1:
+ ffff88802fa31120 (sk_lock-AF_BLUETOOTH-BTPROTO_RFCOMM){+.+.}-{0:0},
+ at: lock_sock include/net/sock.h:1612 [inline]
+ #1:
+ ffff88802fa31120 (sk_lock-AF_BLUETOOTH-BTPROTO_RFCOMM){+.+.}-{0:0},
+ at: rfcomm_sock_shutdown+0x54/0x210 net/bluetooth/rfcomm/sock.c:928
+ #2: ffffffff8d306528 (rfcomm_mutex){+.+.}-{3:3}, at:
+ rfcomm_dlc_close+0x34/0x240 net/bluetooth/rfcomm/core.c:507
+ #3: ffff888141bd6d28 (&d->lock){+.+.}-{3:3}, at:
+ __rfcomm_dlc_close+0x162/0x8a0 net/bluetooth/rfcomm/core.c:487
+==================================================================
+
+The task hangs because of a deadlock that occurs when lock_sock() is
+called in rfcomm_sk_state_change(). One such call stack is:
+
+ rfcomm_sock_shutdown():
+ lock_sock();
+ __rfcomm_sock_close():
+ rfcomm_dlc_close():
+ __rfcomm_dlc_close():
+ rfcomm_dlc_lock();
+ rfcomm_sk_state_change():
+ lock_sock();
+
+lock_sock() has to be called when the sk state is changed because the
+lock is not always held when rfcomm_sk_state_change() is
+called. However, besides the recursive deadlock, there is also an
+issue of a lock hierarchy inversion between rfcomm_dlc_lock() and
+lock_sock() if the socket is locked in rfcomm_sk_state_change().
+
+To avoid these issues, we can instead schedule the sk state change in
+the global workqueue. This is already the implicit assumption about
+how sk state changes happen. For example, in rfcomm_sock_shutdown(),
+the call to __rfcomm_sock_close() is followed by
+bt_sock_wait_state().
+
+Additionally, the call to rfcomm_sock_kill() inside
+rfcomm_sk_state_change() should be removed. The socket shouldn't be
+killed here because only rfcomm_sock_release() calls sock_orphan(),
+which it already follows up with a call to rfcomm_sock_kill().
+
+Fixes: b7ce436a5d79 ("Bluetooth: switch to lock_sock in RFCOMM")
+Link: https://syzkaller.appspot.com/bug?extid=7d51f807c81b190a127d [1]
+Reported-by: syzbot+7d51f807c81b190a127d@syzkaller.appspotmail.com
+Tested-by: syzbot+7d51f807c81b190a127d@syzkaller.appspotmail.com
+Signed-off-by: Desmond Cheong Zhi Xi <desmondcheongzx@gmail.com>
+Cc: Hillf Danton <hdanton@sina.com>
+---
+ include/net/bluetooth/rfcomm.h | 3 +++
+ net/bluetooth/rfcomm/core.c | 2 ++
+ net/bluetooth/rfcomm/sock.c | 34 ++++++++++++++++++++++------------
+ 3 files changed, 27 insertions(+), 12 deletions(-)
+
+diff --git a/include/net/bluetooth/rfcomm.h b/include/net/bluetooth/rfcomm.h
+index 99d26879b02a..a92799fc5e74 100644
+--- a/include/net/bluetooth/rfcomm.h
++++ b/include/net/bluetooth/rfcomm.h
+@@ -171,6 +171,7 @@ struct rfcomm_dlc {
+ struct rfcomm_session *session;
+ struct sk_buff_head tx_queue;
+ struct timer_list timer;
++ struct work_struct state_change_work;
+
+ struct mutex lock;
+ unsigned long state;
+@@ -186,6 +187,7 @@ struct rfcomm_dlc {
+ u8 sec_level;
+ u8 role_switch;
+ u32 defer_setup;
++ int err;
+
+ uint mtu;
+ uint cfc;
+@@ -310,6 +312,7 @@ struct rfcomm_pinfo {
+ u8 role_switch;
+ };
+
++void __rfcomm_sk_state_change(struct work_struct *work);
+ int rfcomm_init_sockets(void);
+ void rfcomm_cleanup_sockets(void);
+
+diff --git a/net/bluetooth/rfcomm/core.c b/net/bluetooth/rfcomm/core.c
+index 7324764384b6..c6494e85cd68 100644
+--- a/net/bluetooth/rfcomm/core.c
++++ b/net/bluetooth/rfcomm/core.c
+@@ -289,6 +289,7 @@ static void rfcomm_dlc_clear_state(struct rfcomm_dlc *d)
+ d->flags = 0;
+ d->mscex = 0;
+ d->sec_level = BT_SECURITY_LOW;
++ d->err = 0;
+ d->mtu = RFCOMM_DEFAULT_MTU;
+ d->v24_sig = RFCOMM_V24_RTC | RFCOMM_V24_RTR | RFCOMM_V24_DV;
+
+@@ -306,6 +307,7 @@ struct rfcomm_dlc *rfcomm_dlc_alloc(gfp_t prio)
+ timer_setup(&d->timer, rfcomm_dlc_timeout, 0);
+
+ skb_queue_head_init(&d->tx_queue);
++ INIT_WORK(&d->state_change_work, __rfcomm_sk_state_change);
+ mutex_init(&d->lock);
+ refcount_set(&d->refcnt, 1);
+
+diff --git a/net/bluetooth/rfcomm/sock.c b/net/bluetooth/rfcomm/sock.c
+index 4bf4ea6cbb5e..4850dafbaa05 100644
+--- a/net/bluetooth/rfcomm/sock.c
++++ b/net/bluetooth/rfcomm/sock.c
+@@ -61,19 +61,22 @@ static void rfcomm_sk_data_ready(struct rfcomm_dlc *d, struct sk_buff *skb)
+ rfcomm_dlc_throttle(d);
+ }
+
+-static void rfcomm_sk_state_change(struct rfcomm_dlc *d, int err)
++void __rfcomm_sk_state_change(struct work_struct *work)
+ {
++ struct rfcomm_dlc *d = container_of(work, struct rfcomm_dlc,
++ state_change_work);
+ struct sock *sk = d->owner, *parent;
+
+ if (!sk)
+ return;
+
+- BT_DBG("dlc %p state %ld err %d", d, d->state, err);
+-
+ lock_sock(sk);
++ rfcomm_dlc_lock(d);
+
+- if (err)
+- sk->sk_err = err;
++ BT_DBG("dlc %p state %ld err %d", d, d->state, d->err);
++
++ if (d->err)
++ sk->sk_err = d->err;
+
+ sk->sk_state = d->state;
+
+@@ -91,15 +94,22 @@ static void rfcomm_sk_state_change(struct rfcomm_dlc *d, int err)
+ sk->sk_state_change(sk);
+ }
+
++ rfcomm_dlc_unlock(d);
+ release_sock(sk);
++ sock_put(sk);
++}
+
+- if (parent && sock_flag(sk, SOCK_ZAPPED)) {
+- /* We have to drop DLC lock here, otherwise
+- * rfcomm_sock_destruct() will dead lock. */
+- rfcomm_dlc_unlock(d);
+- rfcomm_sock_kill(sk);
+- rfcomm_dlc_lock(d);
+- }
++static void rfcomm_sk_state_change(struct rfcomm_dlc *d, int err)
++{
++ struct sock *sk = d->owner;
++
++ if (!sk)
++ return;
++
++ d->err = err;
++ sock_hold(sk);
++ if (!schedule_work(&d->state_change_work))
++ sock_put(sk);
+ }
+
+ /* ---- Socket functions ---- */
+--
+2.35.1
+
diff --git a/0004-cpufreq-intel_pstate-ITMT-support-for-overclocked-sy.patch b/0004-cpufreq-intel_pstate-ITMT-support-for-overclocked-sy.patch
deleted file mode 100644
index 886f0f2..0000000
--- a/0004-cpufreq-intel_pstate-ITMT-support-for-overclocked-sy.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From 62f1f7606485d450b23f86bc18dab101e7a2443d Mon Sep 17 00:00:00 2001
-From: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
-Date: Thu, 18 Nov 2021 21:18:01 -0800
-Subject: [PATCH 4/8] cpufreq: intel_pstate: ITMT support for overclocked
- system
-
-On systems with overclocking enabled, CPPC Highest Performance can be
-hard coded to 0xff. In this case even if we have cores with different
-highest performance, ITMT can't be enabled as the current implementation
-depends on CPPC Highest Performance.
-
-On such systems we can use MSR_HWP_CAPABILITIES maximum performance field
-when CPPC.Highest Performance is 0xff.
-
-Due to legacy reasons, we can't solely depend on MSR_HWP_CAPABILITIES as
-in some older systems CPPC Highest Performance is the only way to identify
-different performing cores.
-
-Reported-by: Michael Larabel <Michael@MichaelLarabel.com>
-Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
----
- drivers/cpufreq/intel_pstate.c | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/drivers/cpufreq/intel_pstate.c b/drivers/cpufreq/intel_pstate.c
-index e15c3bc17a55..8a2c6b58b652 100644
---- a/drivers/cpufreq/intel_pstate.c
-+++ b/drivers/cpufreq/intel_pstate.c
-@@ -335,6 +335,8 @@ static void intel_pstste_sched_itmt_work_fn(struct work_struct *work)
-
- static DECLARE_WORK(sched_itmt_work, intel_pstste_sched_itmt_work_fn);
-
-+#define CPPC_MAX_PERF U8_MAX
-+
- static void intel_pstate_set_itmt_prio(int cpu)
- {
- struct cppc_perf_caps cppc_perf;
-@@ -345,6 +347,14 @@ static void intel_pstate_set_itmt_prio(int cpu)
- if (ret)
- return;
-
-+ /*
-+ * On some systems with overclocking enabled, CPPC.highest_perf is hardcoded to 0xff.
-+ * In this case we can't use CPPC.highest_perf to enable ITMT.
-+ * In this case we can look at MSR_HWP_CAPABILITIES bits [8:0] to decide.
-+ */
-+ if (cppc_perf.highest_perf == CPPC_MAX_PERF)
-+ cppc_perf.highest_perf = HWP_HIGHEST_PERF(READ_ONCE(all_cpu_data[cpu]->hwp_cap_cached));
-+
- /*
- * The priorities can be set regardless of whether or not
- * sched_set_itmt_support(true) has been called and it is valid to
---
-2.33.1
-
diff --git a/0005-mt76-mt7921-add-support-for-PCIe-ID-0x0608-0x0616.patch b/0005-mt76-mt7921-add-support-for-PCIe-ID-0x0608-0x0616.patch
new file mode 100644
index 0000000..c818224
--- /dev/null
+++ b/0005-mt76-mt7921-add-support-for-PCIe-ID-0x0608-0x0616.patch
@@ -0,0 +1,29 @@
+From f5d699ec84aff0f1f705c8a1ac4a5710054d1eff Mon Sep 17 00:00:00 2001
+From: Deren Wu <deren.wu@mediatek.com>
+Date: Sun, 14 Nov 2021 10:46:57 +0800
+Subject: [PATCH 5/8] mt76: mt7921: add support for PCIe ID 0x0608/0x0616
+
+New mt7921 serials chip support
+
+Signed-off-by: Deren Wu <deren.wu@mediatek.com>
+Signed-off-by: Felix Fietkau <nbd@nbd.name>
+---
+ drivers/net/wireless/mediatek/mt76/mt7921/pci.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/drivers/net/wireless/mediatek/mt76/mt7921/pci.c b/drivers/net/wireless/mediatek/mt76/mt7921/pci.c
+index 40186e6cd865..1212b803b1c8 100644
+--- a/drivers/net/wireless/mediatek/mt76/mt7921/pci.c
++++ b/drivers/net/wireless/mediatek/mt76/mt7921/pci.c
+@@ -15,6 +15,8 @@
+ static const struct pci_device_id mt7921_pci_device_table[] = {
+ { PCI_DEVICE(PCI_VENDOR_ID_MEDIATEK, 0x7961) },
+ { PCI_DEVICE(PCI_VENDOR_ID_MEDIATEK, 0x7922) },
++ { PCI_DEVICE(PCI_VENDOR_ID_MEDIATEK, 0x0608) },
++ { PCI_DEVICE(PCI_VENDOR_ID_MEDIATEK, 0x0616) },
+ { },
+ };
+
+--
+2.35.1
+
diff --git a/0006-lg-laptop-Recognize-more-models.patch b/0006-lg-laptop-Recognize-more-models.patch
deleted file mode 100644
index 812b041..0000000
--- a/0006-lg-laptop-Recognize-more-models.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 675d4b66de78eec370cf5053eecdf00b26780af3 Mon Sep 17 00:00:00 2001
-From: Matan Ziv-Av <matan@svgalib.org>
-Date: Tue, 23 Nov 2021 22:14:55 +0200
-Subject: [PATCH 6/8] lg-laptop: Recognize more models
-
-LG uses 5 instead of 0 in the third digit (second digit after 2019) of the year string to indicate newer models in the same year. Handle this case as well.
-
-Signed-off-by: Matan Ziv-Av <matan@svgalib.org>
-For: https://bugs.archlinux.org/task/71772
----
- drivers/platform/x86/lg-laptop.c | 12 ++++++++++++
- 1 file changed, 12 insertions(+)
-
-diff --git a/drivers/platform/x86/lg-laptop.c b/drivers/platform/x86/lg-laptop.c
-index 88b551caeaaf..d6f74d3a7605 100644
---- a/drivers/platform/x86/lg-laptop.c
-+++ b/drivers/platform/x86/lg-laptop.c
-@@ -658,6 +658,18 @@ static int acpi_add(struct acpi_device *device)
- if (product && strlen(product) > 4)
- switch (product[4]) {
- case '5':
-+ if (strlen(product) > 5)
-+ switch (product[5]) {
-+ case 'N':
-+ year = 2021;
-+ break;
-+ case '0':
-+ year = 2016;
-+ break;
-+ default:
-+ year = 2022;
-+ }
-+ break;
- case '6':
- year = 2016;
- break;
---
-2.33.1
-
diff --git a/0006-mt76-mt7921-reduce-log-severity-levels-for-informati.patch b/0006-mt76-mt7921-reduce-log-severity-levels-for-informati.patch
new file mode 100644
index 0000000..eeffb6e
--- /dev/null
+++ b/0006-mt76-mt7921-reduce-log-severity-levels-for-informati.patch
@@ -0,0 +1,45 @@
+From 180567f393d36b2f7367b044bfc409e984bb9e5a Mon Sep 17 00:00:00 2001
+From: Tzung-Bi Shih <tzungbi@google.com>
+Date: Fri, 10 Dec 2021 17:17:46 +0800
+Subject: [PATCH 6/8] mt76: mt7921: reduce log severity levels for informative
+ messages
+
+"ASIC revision" and "Firmware init done" shouldn't be error messages.
+Reduces the severity levels.
+
+Signed-off-by: Tzung-Bi Shih <tzungbi@google.com>
+Signed-off-by: Felix Fietkau <nbd@nbd.name>
+---
+ drivers/net/wireless/mediatek/mt76/mt7921/mcu.c | 2 +-
+ drivers/net/wireless/mediatek/mt76/mt7921/pci.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c b/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c
+index 4c6adbb96955..ea4edf187e0a 100644
+--- a/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c
++++ b/drivers/net/wireless/mediatek/mt76/mt7921/mcu.c
+@@ -869,7 +869,7 @@ static int mt7921_load_firmware(struct mt7921_dev *dev)
+ dev->mt76.hw->wiphy->wowlan = &mt76_connac_wowlan_support;
+ #endif /* CONFIG_PM */
+
+- dev_err(dev->mt76.dev, "Firmware init done\n");
++ dev_dbg(dev->mt76.dev, "Firmware init done\n");
+
+ return 0;
+ }
+diff --git a/drivers/net/wireless/mediatek/mt76/mt7921/pci.c b/drivers/net/wireless/mediatek/mt76/mt7921/pci.c
+index 1212b803b1c8..9dae2f5972bf 100644
+--- a/drivers/net/wireless/mediatek/mt76/mt7921/pci.c
++++ b/drivers/net/wireless/mediatek/mt76/mt7921/pci.c
+@@ -190,7 +190,7 @@ static int mt7921_pci_probe(struct pci_dev *pdev,
+ tasklet_init(&dev->irq_tasklet, mt7921_irq_tasklet, (unsigned long)dev);
+ mdev->rev = (mt7921_l1_rr(dev, MT_HW_CHIPID) << 16) |
+ (mt7921_l1_rr(dev, MT_HW_REV) & 0xff);
+- dev_err(mdev->dev, "ASIC revision: %04x\n", mdev->rev);
++ dev_info(mdev->dev, "ASIC revision: %04x\n", mdev->rev);
+
+ mt76_wr(dev, MT_WFDMA0_HOST_INT_ENA, 0);
+
+--
+2.35.1
+
diff --git a/0007-Revert-NFSv4.1-query-for-fs_location-attr-on-a-new-f.patch b/0007-Revert-NFSv4.1-query-for-fs_location-attr-on-a-new-f.patch
new file mode 100644
index 0000000..6c7ed61
--- /dev/null
+++ b/0007-Revert-NFSv4.1-query-for-fs_location-attr-on-a-new-f.patch
@@ -0,0 +1,236 @@
+From 70ec06b389f1b35a0fae51ca1698034c00f994df Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org>
+Date: Thu, 24 Feb 2022 03:14:51 +0100
+Subject: [PATCH 7/8] Revert "NFSv4.1 query for fs_location attr on a new file
+ system"
+
+This reverts commit 55b35b43a16ebed88df3ffac11e17ad0909bdf19.
+
+For: https://bugs.archlinux.org/task/73838
+For: https://bugs.archlinux.org/task/73860
+---
+ fs/nfs/client.c | 7 ----
+ fs/nfs/nfs4_fs.h | 9 +++--
+ fs/nfs/nfs4proc.c | 76 ++++++-----------------------------------
+ fs/nfs/nfs4state.c | 3 +-
+ include/linux/nfs_xdr.h | 1 -
+ 5 files changed, 15 insertions(+), 81 deletions(-)
+
+diff --git a/fs/nfs/client.c b/fs/nfs/client.c
+index a1e87419f3a4..2d2f2c091c65 100644
+--- a/fs/nfs/client.c
++++ b/fs/nfs/client.c
+@@ -860,13 +860,6 @@ static int nfs_probe_fsinfo(struct nfs_server *server, struct nfs_fh *mntfh, str
+ server->namelen = pathinfo.max_namelen;
+ }
+
+- if (clp->rpc_ops->discover_trunking != NULL &&
+- (server->caps & NFS_CAP_FS_LOCATIONS)) {
+- error = clp->rpc_ops->discover_trunking(server, mntfh);
+- if (error < 0)
+- return error;
+- }
+-
+ return 0;
+ }
+
+diff --git a/fs/nfs/nfs4_fs.h b/fs/nfs/nfs4_fs.h
+index 85c5d08dfa9c..2364661a6a08 100644
+--- a/fs/nfs/nfs4_fs.h
++++ b/fs/nfs/nfs4_fs.h
+@@ -260,8 +260,8 @@ struct nfs4_state_maintenance_ops {
+ };
+
+ struct nfs4_mig_recovery_ops {
+- int (*get_locations)(struct nfs_server *, struct nfs_fh *,
+- struct nfs4_fs_locations *, struct page *, const struct cred *);
++ int (*get_locations)(struct inode *, struct nfs4_fs_locations *,
++ struct page *, const struct cred *);
+ int (*fsid_present)(struct inode *, const struct cred *);
+ };
+
+@@ -303,9 +303,8 @@ extern int nfs4_do_close(struct nfs4_state *state, gfp_t gfp_mask, int wait);
+ extern int nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *fhandle);
+ extern int nfs4_proc_fs_locations(struct rpc_clnt *, struct inode *, const struct qstr *,
+ struct nfs4_fs_locations *, struct page *);
+-extern int nfs4_proc_get_locations(struct nfs_server *, struct nfs_fh *,
+- struct nfs4_fs_locations *,
+- struct page *page, const struct cred *);
++extern int nfs4_proc_get_locations(struct inode *, struct nfs4_fs_locations *,
++ struct page *page, const struct cred *);
+ extern int nfs4_proc_fsid_present(struct inode *, const struct cred *);
+ extern struct rpc_clnt *nfs4_proc_lookup_mountpoint(struct inode *,
+ struct dentry *,
+diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
+index 0abbbf5d2bdf..ba3aa4575d25 100644
+--- a/fs/nfs/nfs4proc.c
++++ b/fs/nfs/nfs4proc.c
+@@ -3933,60 +3933,6 @@ int nfs4_server_capabilities(struct nfs_server *server, struct nfs_fh *fhandle)
+ return err;
+ }
+
+-static int _nfs4_discover_trunking(struct nfs_server *server,
+- struct nfs_fh *fhandle)
+-{
+- struct nfs4_fs_locations *locations = NULL;
+- struct page *page;
+- const struct cred *cred;
+- struct nfs_client *clp = server->nfs_client;
+- const struct nfs4_state_maintenance_ops *ops =
+- clp->cl_mvops->state_renewal_ops;
+- int status = -ENOMEM;
+-
+- cred = ops->get_state_renewal_cred(clp);
+- if (cred == NULL) {
+- cred = nfs4_get_clid_cred(clp);
+- if (cred == NULL)
+- return -ENOKEY;
+- }
+-
+- page = alloc_page(GFP_KERNEL);
+- locations = kmalloc(sizeof(struct nfs4_fs_locations), GFP_KERNEL);
+- if (page == NULL || locations == NULL)
+- goto out;
+-
+- status = nfs4_proc_get_locations(server, fhandle, locations, page,
+- cred);
+- if (status)
+- goto out;
+-out:
+- if (page)
+- __free_page(page);
+- kfree(locations);
+- return status;
+-}
+-
+-static int nfs4_discover_trunking(struct nfs_server *server,
+- struct nfs_fh *fhandle)
+-{
+- struct nfs4_exception exception = {
+- .interruptible = true,
+- };
+- struct nfs_client *clp = server->nfs_client;
+- int err = 0;
+-
+- if (!nfs4_has_session(clp))
+- goto out;
+- do {
+- err = nfs4_handle_exception(server,
+- _nfs4_discover_trunking(server, fhandle),
+- &exception);
+- } while (exception.retry);
+-out:
+- return err;
+-}
+-
+ static int _nfs4_lookup_root(struct nfs_server *server, struct nfs_fh *fhandle,
+ struct nfs_fsinfo *info)
+ {
+@@ -7873,18 +7819,18 @@ int nfs4_proc_fs_locations(struct rpc_clnt *client, struct inode *dir,
+ * appended to this compound to identify the client ID which is
+ * performing recovery.
+ */
+-static int _nfs40_proc_get_locations(struct nfs_server *server,
+- struct nfs_fh *fhandle,
++static int _nfs40_proc_get_locations(struct inode *inode,
+ struct nfs4_fs_locations *locations,
+ struct page *page, const struct cred *cred)
+ {
++ struct nfs_server *server = NFS_SERVER(inode);
+ struct rpc_clnt *clnt = server->client;
+ u32 bitmask[2] = {
+ [0] = FATTR4_WORD0_FSID | FATTR4_WORD0_FS_LOCATIONS,
+ };
+ struct nfs4_fs_locations_arg args = {
+ .clientid = server->nfs_client->cl_clientid,
+- .fh = fhandle,
++ .fh = NFS_FH(inode),
+ .page = page,
+ .bitmask = bitmask,
+ .migration = 1, /* skip LOOKUP */
+@@ -7930,17 +7876,17 @@ static int _nfs40_proc_get_locations(struct nfs_server *server,
+ * When the client supports GETATTR(fs_locations_info), it can
+ * be plumbed in here.
+ */
+-static int _nfs41_proc_get_locations(struct nfs_server *server,
+- struct nfs_fh *fhandle,
++static int _nfs41_proc_get_locations(struct inode *inode,
+ struct nfs4_fs_locations *locations,
+ struct page *page, const struct cred *cred)
+ {
++ struct nfs_server *server = NFS_SERVER(inode);
+ struct rpc_clnt *clnt = server->client;
+ u32 bitmask[2] = {
+ [0] = FATTR4_WORD0_FSID | FATTR4_WORD0_FS_LOCATIONS,
+ };
+ struct nfs4_fs_locations_arg args = {
+- .fh = fhandle,
++ .fh = NFS_FH(inode),
+ .page = page,
+ .bitmask = bitmask,
+ .migration = 1, /* skip LOOKUP */
+@@ -7989,11 +7935,11 @@ static int _nfs41_proc_get_locations(struct nfs_server *server,
+ * -NFS4ERR_LEASE_MOVED is returned if the server still has leases
+ * from this client that require migration recovery.
+ */
+-int nfs4_proc_get_locations(struct nfs_server *server,
+- struct nfs_fh *fhandle,
++int nfs4_proc_get_locations(struct inode *inode,
+ struct nfs4_fs_locations *locations,
+ struct page *page, const struct cred *cred)
+ {
++ struct nfs_server *server = NFS_SERVER(inode);
+ struct nfs_client *clp = server->nfs_client;
+ const struct nfs4_mig_recovery_ops *ops =
+ clp->cl_mvops->mig_recovery_ops;
+@@ -8006,11 +7952,10 @@ int nfs4_proc_get_locations(struct nfs_server *server,
+ (unsigned long long)server->fsid.major,
+ (unsigned long long)server->fsid.minor,
+ clp->cl_hostname);
+- nfs_display_fhandle(fhandle, __func__);
++ nfs_display_fhandle(NFS_FH(inode), __func__);
+
+ do {
+- status = ops->get_locations(server, fhandle, locations, page,
+- cred);
++ status = ops->get_locations(inode, locations, page, cred);
+ if (status != -NFS4ERR_DELAY)
+ break;
+ nfs4_handle_exception(server, status, &exception);
+@@ -10479,7 +10424,6 @@ const struct nfs_rpc_ops nfs_v4_clientops = {
+ .free_client = nfs4_free_client,
+ .create_server = nfs4_create_server,
+ .clone_server = nfs_clone_server,
+- .discover_trunking = nfs4_discover_trunking,
+ };
+
+ static const struct xattr_handler nfs4_xattr_nfs4_acl_handler = {
+diff --git a/fs/nfs/nfs4state.c b/fs/nfs/nfs4state.c
+index 499bef9fe118..f3265575c28d 100644
+--- a/fs/nfs/nfs4state.c
++++ b/fs/nfs/nfs4state.c
+@@ -2098,8 +2098,7 @@ static int nfs4_try_migration(struct nfs_server *server, const struct cred *cred
+ }
+
+ inode = d_inode(server->super->s_root);
+- result = nfs4_proc_get_locations(server, NFS_FH(inode), locations,
+- page, cred);
++ result = nfs4_proc_get_locations(inode, locations, page, cred);
+ if (result) {
+ dprintk("<-- %s: failed to retrieve fs_locations: %d\n",
+ __func__, result);
+diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h
+index 695fa84611b6..967a0098f0a9 100644
+--- a/include/linux/nfs_xdr.h
++++ b/include/linux/nfs_xdr.h
+@@ -1795,7 +1795,6 @@ struct nfs_rpc_ops {
+ struct nfs_server *(*create_server)(struct fs_context *);
+ struct nfs_server *(*clone_server)(struct nfs_server *, struct nfs_fh *,
+ struct nfs_fattr *, rpc_authflavor_t);
+- int (*discover_trunking)(struct nfs_server *, struct nfs_fh *);
+ };
+
+ /*
+--
+2.35.1
+
diff --git a/PKGBUILD b/PKGBUILD
index 5186b0f..2eef5c8 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,8 +8,8 @@
# Arch version lacks ath9k regdom and raid6 algo patches
# Arch version is 300 Hz
# Arch version does not disable lockdown eee
-# Arch version does not disable hdcp
-# Arch version does not disable IME/PSP/TEE/SEV
+# Arch version does not disable HDCP
+# Arch version does not disable IME/PSP and SGX/SEV and TXT/TEE and PXP
# Arch version uses git
# set _custom to 0 when using mkchrootpkg
@@ -17,8 +17,8 @@ _custom=0
pkgbase=linux
_supver=5
-_majver=15
-_minver=30
+_majver=16
+_minver=17
_gccpatchver='20220315'
_gccpatchker='5.15-5.16'
if [ "$_minver" == "0" ]; then
@@ -42,11 +42,12 @@ source=(
https://www.kernel.org/pub/linux/kernel/v${_supver}.x/${_srcname}.tar.{xz,sign}
config # the main kernel config file
0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
- 0002-PCI-Add-more-NVIDIA-controllers-to-the-MSI-masking-q.patch
- 0003-iommu-intel-do-deep-dma-unmapping-to-avoid-kernel-fl.patch
- 0004-cpufreq-intel_pstate-ITMT-support-for-overclocked-sy.patch
- 0005-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch
- 0006-lg-laptop-Recognize-more-models.patch
+ 0002-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch
+ 0003-Bluetooth-Read-codec-capabilities-only-if-supported.patch
+ 0004-Bluetooth-fix-deadlock-for-RFCOMM-sk-state-change.patch
+ 0005-mt76-mt7921-add-support-for-PCIe-ID-0x0608-0x0616.patch
+ 0006-mt76-mt7921-reduce-log-severity-levels-for-informati.patch
+ 0007-Revert-NFSv4.1-query-for-fs_location-attr-on-a-new-f.patch
kernel_compiler_patch-${_gccpatchver}.tar.gz::https://github.com/graysky2/kernel_compiler_patch/archive/${_gccpatchver}.tar.gz
ath9k-regdom-hack.patch
raid6-default-algo.patch
@@ -56,15 +57,29 @@ validpgpkeys=(
'647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman
)
# https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc
-b2sums=('1b2bec2b71e7f5fdb983207e1203a47e7246d89bf09b851433548dfdb53d231dc73c4b679c9c68d6a1e7b3f2b9a2b10ed65df790e1a7ee92881a11917d7f020c'
+sha256sums=('ceee4d905b47f30140c6f9b815930da90bc09ac4a317e7623fe7e86cc637f1fc'
+ 'SKIP'
+ '335cc2e5a617cf4dbd9973bd512cedeaa491718366395f97f3bd764e59a74cf8'
+ '0ea6013565896bf9c77a3edb89d88ab1f6751c65545e1a0b28e2a895ae7a291d'
+ 'f101077e6b6196eefc187218c0c11308c87bdf779fd6fcf7e42111aa4d348ce7'
+ '558e1e3426db12ac3ae6b9afdc361fe415d235e306e08e587b91a74b371c1002'
+ 'c8801d00c7f179730169b1065581cce89a3c9ddd553c4a813f039582e1bbe6be'
+ '9a291b74a838a26b737e52415e4fb4fa27a69a252f94971208375cd02712f42f'
+ 'a918ccc4b339720679ca262fa08fbd1ad3f5a2c071cb06250e8ea8ed7d52acaa'
+ '0953dcf941e3b979ab35551e670598dbfde098503e97925738bcb730892b90de'
+ '5a29d172d442a3f31a402d7d306aaa292b0b5ea29139d05080a55e2425f48c5c'
+ 'e9e0d289170b7fb598b572d9c892ae8d1420952034aa415e8b3334f20a58edcc'
+ '0f81d6e4158b7beeb0eb514f1b9401f7e23699cb0f7b0d513e25dae1815daaeb')
+b2sums=('ba48ac26f61ee5614ebf8cd57e3c6e26aac188068216912308e3666d9529be8812e725c9448ef7413a2de36ff35c9cb2bddc3c11c7afd339a722d48a4cf998c2'
'SKIP'
- '1fd793f410461ec97e530cbaf3197333323b525f8b4054354d3aa96a695cfd7132e32906165b626724fdde38f268a15d6e918f6e54aaf8ab7c3de248084a1625'
+ '1051ee98791aee9b9ea1ca5c5de35ce4863a2b10ba5af0b55b444e53abb010a9bd1ee0414598d0c6cdd55e4b258d8c63edc019abafe500bba92b5dddebdb055b'
'f1e7205c4033abe680c5ddc9542a677f27b725f2d8b9b84133d877b1d60d5c373ed2873445202bdd7e15b6f56c96ffa2427fc1e36b485c25ae69907f486c4603'
- 'ac15c66f8ca31bc051766ad8321111f8a6b3d2c0ad2b26cc654a54a707a0dfcdd4a22f21f96f7d0395b9afb3ad1c6f9cca043fb055d62ab3706f63e746316c94'
- '6c52152b263816f116d4a5bfe47a41a781056db2b18afaf3bd1db4e5839d57a8f8bddb340879f734642f967c8686146c6fdb0af852e5144e6c15216d5b6ee7fd'
- '087676835d15d3c13da86a37e2de922a461b973931ecf29f1ddefddfa23df3ea045799db1f62aa3be70d57df4436ae5fe4f2ef99c05258a1aa9944c00724cdc5'
- 'b693e06413968585a18b1d504768433420588764485eee298b70d5ca622197d7d134bf42d4f517b0f8367a188f90580825d1c3f8a55099ec69fc14be66465f16'
- 'ac8502cd579880d05108aad23b844633a67ff9d8b83b63d2a0fc7fa1031aa3b09ee52989415cc27a0ef13f8a9e3f035bf27b33ed1dafc5132c4edc371800c061'
+ '1a2f35736e6066f20ee299cf1cc2efa9c76a9ebf3c17f0bc23b2852fe5618a82f87397187e3e0aa0b09ca9bea35ec0db8fbf28a6f6194d73a573a522ed4ce10d'
+ '2a40fbad8386519b35397269cfb3a8f7dca3e7742e31f79553a129b3de478c89ea09684ea70cbbced3e157bd5df921e6712195e477e12467e729759232a4ebcc'
+ '29bbe0deb754d03160690533229498f943cc542ef002035640950fa51d778c9188817f63d888fd07b45c6e24b4eec867fff3d8f81d1e3d766f240494ac88d3dd'
+ '5272cfe0453d9ac59d3a5b092af66621f558b0137c3710b20a95c14ac58a7e260de906c3b265b427026fd1ed6e2bfdb54729883dbe183551b7e7243059945098'
+ '2b9711e2085ed8b5d9fa440a751a7e31ec097383aeded739dbd8985c799b8a62e1e562f8af96692e33970fd2e463b87483af50a00adb1b98085210d080871fcf'
+ '9a3f8a69dbd27d5e97c187362c6c8bfc9c4b8a7b60cca8d710ff93a0996e3e0d3dffe2e698a3bf430b57a9c83dc05ed4dedbd7b4fde440c1ab0eccfadf2ba16a'
'20674a8fcc0a85726e06460a7dbccfe731c46bf377cc3bf511b7591175e7df892f271bc1909e77d9a02913c753d241493502c5ab15d9f78e95f31aa4399c2c27'
'b6ef77035611139fa9a6d5b8d30570e2781bb4da483bb569884b0bd0129b62e0b82a5a6776fefe43fee801c70d39de1ea4d4c177f7cedd5ac135e3c64f7b895a'
'fde132f3705d908e6f2147c78a2193289916d72304ca5efa2229d79fc3e57a857314ce94e71425caef2f7f7b6cf87f05ef86335dc8bd4be78e7035afe608005a')
@@ -87,11 +102,12 @@ prepare() {
# Hotfixes
echo "Applying hotfixes"
patch -p1 -i ../0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
- patch -p1 -i ../0002-PCI-Add-more-NVIDIA-controllers-to-the-MSI-masking-q.patch
- patch -p1 -i ../0003-iommu-intel-do-deep-dma-unmapping-to-avoid-kernel-fl.patch
- patch -p1 -i ../0004-cpufreq-intel_pstate-ITMT-support-for-overclocked-sy.patch
- patch -p1 -i ../0005-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch
- patch -p1 -i ../0006-lg-laptop-Recognize-more-models.patch
+ patch -p1 -i ../0002-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch
+ patch -p1 -i ../0003-Bluetooth-Read-codec-capabilities-only-if-supported.patch
+ patch -p1 -i ../0004-Bluetooth-fix-deadlock-for-RFCOMM-sk-state-change.patch
+ patch -p1 -i ../0005-mt76-mt7921-add-support-for-PCIe-ID-0x0608-0x0616.patch
+ patch -p1 -i ../0006-mt76-mt7921-reduce-log-severity-levels-for-informati.patch
+ patch -p1 -i ../0007-Revert-NFSv4.1-query-for-fs_location-attr-on-a-new-f.patch
# graysky gcc patch
diff --git a/config b/config
index f5b6ef0..84d352b 100644
--- a/config
+++ b/config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/x86 5.15.25 Kernel Configuration
+# Linux/x86 5.16.17 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (GCC) 11.2.0"
CONFIG_CC_IS_GCC=y
@@ -116,13 +116,14 @@ CONFIG_BPF_SYSCALL=y
CONFIG_BPF_JIT=y
CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT_DEFAULT_ON=y
-# CONFIG_BPF_UNPRIV_DEFAULT_OFF is not set
+CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
CONFIG_USERMODE_DRIVER=y
CONFIG_BPF_PRELOAD=y
CONFIG_BPF_PRELOAD_UMD=m
CONFIG_BPF_LSM=y
# end of BPF subsystem
+CONFIG_PREEMPT_BUILD=y
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
CONFIG_PREEMPT=y
@@ -193,6 +194,7 @@ CONFIG_UCLAMP_BUCKETS_COUNT=5
CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y
CONFIG_CC_HAS_INT128=y
+CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5"
CONFIG_ARCH_SUPPORTS_INT128=y
CONFIG_NUMA_BALANCING=y
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
@@ -338,7 +340,7 @@ CONFIG_ARCH_NR_GPIO=1024
CONFIG_ARCH_SUSPEND_POSSIBLE=y
CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
CONFIG_AUDIT_ARCH=y
-CONFIG_HAVE_INTEL_TXT=y
+# CONFIG_HAVE_INTEL_TXT is not set
CONFIG_X86_64_SMP=y
CONFIG_ARCH_SUPPORTS_UPROBES=y
CONFIG_FIX_EARLYCON_MEM=y
@@ -453,6 +455,7 @@ CONFIG_NR_CPUS_RANGE_BEGIN=2
CONFIG_NR_CPUS_RANGE_END=512
CONFIG_NR_CPUS_DEFAULT=64
CONFIG_NR_CPUS=320
+CONFIG_SCHED_CLUSTER=y
CONFIG_SCHED_SMT=y
CONFIG_SCHED_MC=y
CONFIG_SCHED_MC_PRIO=y
@@ -519,8 +522,8 @@ CONFIG_X86_UMIP=y
CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS=y
# CONFIG_X86_INTEL_TSX_MODE_OFF is not set
# CONFIG_X86_INTEL_TSX_MODE_ON is not set
-CONFIG_X86_INTEL_TSX_MODE_AUTO=y
-CONFIG_X86_SGX=y
+CONFIG_X86_INTEL_TSX_MODE_AUTO is not set
+# CONFIG_X86_SGX is not set
CONFIG_EFI=y
CONFIG_EFI_STUB=y
CONFIG_EFI_MIXED=y
@@ -553,6 +556,7 @@ CONFIG_LEGACY_VSYSCALL_XONLY=y
# CONFIG_LEGACY_VSYSCALL_NONE is not set
# CONFIG_CMDLINE_BOOL is not set
CONFIG_MODIFY_LDT_SYSCALL=y
+# CONFIG_STRICT_SIGALTSTACK_SIZE is not set
CONFIG_HAVE_LIVEPATCH=y
# CONFIG_LIVEPATCH is not set
# end of Processor type and features
@@ -759,6 +763,7 @@ CONFIG_KVM_INTEL=m
CONFIG_KVM_AMD=m
CONFIG_KVM_XEN=y
CONFIG_KVM_MMU_AUDIT=y
+CONFIG_KVM_EXTERNAL_WRITE_TRACKING=y
CONFIG_AS_AVX512=y
CONFIG_AS_SHA1_NI=y
CONFIG_AS_SHA256_NI=y
@@ -787,6 +792,7 @@ CONFIG_HAVE_KPROBES=y
CONFIG_HAVE_KRETPROBES=y
CONFIG_HAVE_OPTPROBES=y
CONFIG_HAVE_KPROBES_ON_FTRACE=y
+CONFIG_ARCH_CORRECT_STACKTRACE_ON_KRETPROBE=y
CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y
CONFIG_HAVE_NMI=y
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
@@ -855,6 +861,7 @@ CONFIG_ARCH_MMAP_RND_BITS=28
CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y
CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8
CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y
+CONFIG_PAGE_SIZE_LESS_THAN_64KB=y
CONFIG_HAVE_STACK_VALIDATION=y
CONFIG_HAVE_RELIABLE_STACKTRACE=y
CONFIG_ISA_BUS_API=y
@@ -880,6 +887,7 @@ CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y
CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
CONFIG_ARCH_HAS_ELFCORE_COMPAT=y
CONFIG_ARCH_HAS_PARANOID_L1D_FLUSH=y
+CONFIG_DYNAMIC_SIGFRAME=y
#
# GCOV-based kernel profiling
@@ -1027,10 +1035,10 @@ CONFIG_SPARSEMEM_VMEMMAP=y
CONFIG_HAVE_FAST_GUP=y
CONFIG_NUMA_KEEP_MEMINFO=y
CONFIG_MEMORY_ISOLATION=y
+CONFIG_EXCLUSIVE_SYSTEM_RAM=y
CONFIG_HAVE_BOOTMEM_INFO_NODE=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_MEMORY_HOTPLUG=y
-CONFIG_MEMORY_HOTPLUG_SPARSE=y
CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE=y
CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
CONFIG_MEMORY_HOTREMOVE=y
@@ -1110,7 +1118,11 @@ CONFIG_SECRETMEM=y
#
# Data Access Monitoring
#
-# CONFIG_DAMON is not set
+CONFIG_DAMON=y
+CONFIG_DAMON_VADDR=y
+CONFIG_DAMON_PADDR=y
+CONFIG_DAMON_DBGFS=y
+CONFIG_DAMON_RECLAIM=y
# end of Data Access Monitoring
# end of Memory Management options
@@ -1255,6 +1267,8 @@ CONFIG_BRIDGE_NETFILTER=m
# Core Netfilter Configuration
#
CONFIG_NETFILTER_INGRESS=y
+CONFIG_NETFILTER_EGRESS=y
+CONFIG_NETFILTER_SKIP_EGRESS=y
CONFIG_NETFILTER_NETLINK=m
CONFIG_NETFILTER_FAMILY_BRIDGE=y
CONFIG_NETFILTER_FAMILY_ARP=y
@@ -1653,10 +1667,11 @@ CONFIG_NET_DSA_TAG_DSA=m
CONFIG_NET_DSA_TAG_EDSA=m
CONFIG_NET_DSA_TAG_MTK=m
CONFIG_NET_DSA_TAG_KSZ=m
-CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_OCELOT_8021Q=m
CONFIG_NET_DSA_TAG_QCA=m
+CONFIG_NET_DSA_TAG_RTL4_A=m
+CONFIG_NET_DSA_TAG_RTL8_4=m
CONFIG_NET_DSA_TAG_LAN9303=m
CONFIG_NET_DSA_TAG_SJA1105=m
CONFIG_NET_DSA_TAG_TRAILER=m
@@ -2012,7 +2027,7 @@ CONFIG_AF_RXRPC_DEBUG=y
CONFIG_RXKAD=y
CONFIG_AF_KCM=m
CONFIG_STREAM_PARSER=y
-CONFIG_MCTP=m
+CONFIG_MCTP=y
CONFIG_FIB_RULES=y
CONFIG_WIRELESS=y
CONFIG_WIRELESS_EXT=y
@@ -2309,7 +2324,8 @@ 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_CS_DSP=m
CONFIG_GOOGLE_FIRMWARE=y
# CONFIG_GOOGLE_SMI is not set
CONFIG_GOOGLE_COREBOOT_TABLE=m
@@ -2526,7 +2542,6 @@ CONFIG_ZRAM_WRITEBACK=y
# CONFIG_ZRAM_MEMORY_TRACKING is not set
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_LOOP_MIN_COUNT=0
-CONFIG_BLK_DEV_CRYPTOLOOP=m
CONFIG_BLK_DEV_DRBD=m
# CONFIG_DRBD_FAULT_INJECTION is not set
CONFIG_BLK_DEV_NBD=m
@@ -2739,6 +2754,7 @@ CONFIG_SCSI_UFS_CDNS_PLATFORM=m
CONFIG_SCSI_UFS_BSG=y
CONFIG_SCSI_UFS_CRYPTO=y
CONFIG_SCSI_UFS_HPB=y
+CONFIG_SCSI_UFS_HWMON=y
CONFIG_SCSI_HPTIOP=m
CONFIG_SCSI_BUSLOGIC=m
CONFIG_SCSI_FLASHPOINT=y
@@ -2957,6 +2973,7 @@ CONFIG_DM_SWITCH=m
CONFIG_DM_LOG_WRITES=m
CONFIG_DM_INTEGRITY=m
CONFIG_DM_ZONED=m
+CONFIG_DM_AUDIT=y
CONFIG_TARGET_CORE=m
CONFIG_TCM_IBLOCK=m
CONFIG_TCM_FILEIO=m
@@ -3013,6 +3030,7 @@ CONFIG_VXLAN=m
CONFIG_GENEVE=m
CONFIG_BAREUDP=m
CONFIG_GTP=m
+CONFIG_AMT=m
CONFIG_MACSEC=m
CONFIG_NETCONSOLE=m
CONFIG_NETCONSOLE_DYNAMIC=y
@@ -3133,6 +3151,9 @@ CONFIG_AMD_XGBE_HAVE_ECC=y
CONFIG_NET_VENDOR_AQUANTIA=y
CONFIG_AQTION=m
CONFIG_NET_VENDOR_ARC=y
+CONFIG_NET_VENDOR_ASIX=y
+CONFIG_SPI_AX88796C=m
+CONFIG_SPI_AX88796C_COMPRESSION=y
CONFIG_NET_VENDOR_ATHEROS=y
CONFIG_ATL2=m
CONFIG_ATL1=m
@@ -3243,6 +3264,8 @@ CONFIG_I40E_DCB=y
CONFIG_IAVF=m
CONFIG_I40EVF=m
CONFIG_ICE=m
+CONFIG_ICE_SWITCHDEV=y
+CONFIG_ICE_HWTS=y
CONFIG_FM10K=m
CONFIG_IGC=m
CONFIG_NET_VENDOR_MICROSOFT=y
@@ -3685,6 +3708,7 @@ CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
# CONFIG_B43LEGACY_PIO_MODE is not set
CONFIG_BRCMUTIL=m
CONFIG_BRCMSMAC=m
+CONFIG_BRCMSMAC_LEDS=y
CONFIG_BRCMFMAC=m
CONFIG_BRCMFMAC_PROTO_BCDC=y
CONFIG_BRCMFMAC_PROTO_MSGBUF=y
@@ -3795,7 +3819,9 @@ CONFIG_MT7663_USB_SDIO_COMMON=m
CONFIG_MT7663U=m
CONFIG_MT7663S=m
CONFIG_MT7915E=m
+CONFIG_MT7921_COMMON=m
CONFIG_MT7921E=m
+CONFIG_MT7921S=m
CONFIG_WLAN_VENDOR_MICROCHIP=y
CONFIG_WILC1000=m
CONFIG_WILC1000_SDIO=m
@@ -3867,6 +3893,13 @@ CONFIG_RTW88_8723DE=m
CONFIG_RTW88_8821CE=m
CONFIG_RTW88_DEBUG=y
CONFIG_RTW88_DEBUGFS=y
+CONFIG_RTW89=m
+CONFIG_RTW89_CORE=m
+CONFIG_RTW89_PCI=m
+CONFIG_RTW89_8852AE=m
+CONFIG_RTW89_DEBUG=y
+CONFIG_RTW89_DEBUGMSG=y
+CONFIG_RTW89_DEBUGFS=y
CONFIG_WLAN_VENDOR_RSI=y
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4010,6 +4043,7 @@ CONFIG_KEYBOARD_TWL4030=m
CONFIG_KEYBOARD_XTKBD=m
CONFIG_KEYBOARD_CROS_EC=m
CONFIG_KEYBOARD_MTK_PMIC=m
+CONFIG_KEYBOARD_CYPRESS_SF=m
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=m
CONFIG_MOUSE_PS2_ALPS=y
@@ -4375,6 +4409,7 @@ CONFIG_HVC_DRIVER=y
CONFIG_HVC_IRQ=y
CONFIG_HVC_XEN=y
CONFIG_HVC_XEN_FRONTEND=y
+CONFIG_RPMSG_TTY=m
CONFIG_SERIAL_DEV_BUS=y
CONFIG_SERIAL_DEV_CTRL_TTYPORT=y
# CONFIG_TTY_PRINTK is not set
@@ -4389,6 +4424,7 @@ CONFIG_IPMI_PLAT_DATA=y
CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
+CONFIG_IPMI_IPMB=m
CONFIG_IPMI_WATCHDOG=m
CONFIG_IPMI_POWEROFF=m
CONFIG_IPMB_DEVICE_INTERFACE=m
@@ -4647,6 +4683,16 @@ CONFIG_PINCTRL_MCP23S08_I2C=m
CONFIG_PINCTRL_MCP23S08_SPI=m
CONFIG_PINCTRL_MCP23S08=m
CONFIG_PINCTRL_SX150X=y
+CONFIG_PINCTRL_MADERA=m
+CONFIG_PINCTRL_CS47L15=y
+CONFIG_PINCTRL_CS47L35=y
+CONFIG_PINCTRL_CS47L85=y
+CONFIG_PINCTRL_CS47L90=y
+CONFIG_PINCTRL_CS47L92=y
+
+#
+# Intel pinctrl drivers
+#
CONFIG_PINCTRL_BAYTRAIL=y
CONFIG_PINCTRL_CHERRYVIEW=y
CONFIG_PINCTRL_LYNXPOINT=y
@@ -4665,24 +4711,18 @@ CONFIG_PINCTRL_LAKEFIELD=y
CONFIG_PINCTRL_LEWISBURG=y
CONFIG_PINCTRL_SUNRISEPOINT=y
CONFIG_PINCTRL_TIGERLAKE=y
+# end of Intel pinctrl drivers
#
# Renesas pinctrl drivers
#
# end of Renesas pinctrl drivers
-CONFIG_PINCTRL_MADERA=m
-CONFIG_PINCTRL_CS47L15=y
-CONFIG_PINCTRL_CS47L35=y
-CONFIG_PINCTRL_CS47L85=y
-CONFIG_PINCTRL_CS47L90=y
-CONFIG_PINCTRL_CS47L92=y
CONFIG_GPIOLIB=y
CONFIG_GPIOLIB_FASTPATH_LIMIT=512
CONFIG_GPIO_ACPI=y
CONFIG_GPIOLIB_IRQCHIP=y
# CONFIG_DEBUG_GPIO is not set
-# CONFIG_GPIO_SYSFS is not set
CONFIG_GPIO_CDEV=y
CONFIG_GPIO_CDEV_V1=y
CONFIG_GPIO_GENERIC=m
@@ -5552,12 +5592,15 @@ CONFIG_IR_TTUSBIR=m
CONFIG_RC_LOOPBACK=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
-CONFIG_IR_SIR=m
CONFIG_RC_XBOX_DVD=m
CONFIG_IR_TOY=m
CONFIG_CEC_CORE=y
CONFIG_CEC_NOTIFIER=y
CONFIG_CEC_PIN=y
+
+#
+# CEC support
+#
CONFIG_MEDIA_CEC_RC=y
# CONFIG_CEC_PIN_ERROR_INJ is not set
CONFIG_MEDIA_CEC_SUPPORT=y
@@ -5568,6 +5611,8 @@ CONFIG_CEC_SECO=m
CONFIG_CEC_SECO_RC=y
CONFIG_USB_PULSE8_CEC=m
CONFIG_USB_RAINSHADOW_CEC=m
+# end of CEC support
+
CONFIG_MEDIA_SUPPORT=m
CONFIG_MEDIA_SUPPORT_FILTER=y
CONFIG_MEDIA_SUBDRV_AUTOSELECT=y
@@ -5611,10 +5656,6 @@ CONFIG_VIDEOBUF_VMALLOC=m
#
CONFIG_MEDIA_CONTROLLER_DVB=y
CONFIG_MEDIA_CONTROLLER_REQUEST_API=y
-
-#
-# Please notice that the enabled Media controller Request API is EXPERIMENTAL
-#
# end of Media controller options
#
@@ -6053,6 +6094,7 @@ CONFIG_VIDEO_M52790=m
CONFIG_VIDEO_APTINA_PLL=m
CONFIG_VIDEO_CCS_PLL=m
CONFIG_VIDEO_HI556=m
+CONFIG_VIDEO_HI846=m
CONFIG_VIDEO_IMX208=m
CONFIG_VIDEO_IMX214=m
CONFIG_VIDEO_IMX219=m
@@ -6072,6 +6114,7 @@ CONFIG_VIDEO_OV5648=m
CONFIG_VIDEO_OV6650=m
CONFIG_VIDEO_OV5670=m
CONFIG_VIDEO_OV5675=m
+CONFIG_VIDEO_OV5693=m
CONFIG_VIDEO_OV5695=m
CONFIG_VIDEO_OV7251=m
CONFIG_VIDEO_OV772X=m
@@ -6084,6 +6127,7 @@ CONFIG_VIDEO_OV9640=m
CONFIG_VIDEO_OV9650=m
CONFIG_VIDEO_OV9734=m
CONFIG_VIDEO_OV13858=m
+CONFIG_VIDEO_OV13B10=m
CONFIG_VIDEO_VS6624=m
CONFIG_VIDEO_MT9M001=m
CONFIG_VIDEO_MT9M032=m
@@ -6441,6 +6485,7 @@ CONFIG_DRM_I915_COMPRESS_ERROR=y
CONFIG_DRM_I915_USERPTR=y
CONFIG_DRM_I915_GVT=y
CONFIG_DRM_I915_GVT_KVMGT=m
+# CONFIG_DRM_I915_PXP is not set
#
# drm/i915 Debugging
@@ -6883,6 +6928,17 @@ CONFIG_SND_SOC_AMD_RV_RT5682_MACH=m
CONFIG_SND_SOC_AMD_RENOIR=m
CONFIG_SND_SOC_AMD_RENOIR_MACH=m
CONFIG_SND_SOC_AMD_ACP5x=m
+CONFIG_SND_SOC_AMD_VANGOGH_MACH=m
+CONFIG_SND_SOC_AMD_ACP6x=m
+CONFIG_SND_SOC_AMD_YC_MACH=m
+CONFIG_SND_AMD_ACP_CONFIG=m
+CONFIG_SND_SOC_AMD_ACP_COMMON=m
+CONFIG_SND_SOC_AMD_ACP_I2S=m
+CONFIG_SND_SOC_AMD_ACP_PCM=m
+CONFIG_SND_AMD_ASOC_RENOIR=m
+CONFIG_SND_SOC_AMD_MACH_COMMON=m
+CONFIG_SND_SOC_AMD_LEGACY_MACH=m
+CONFIG_SND_SOC_AMD_SOF_MACH=m
CONFIG_SND_ATMEL_SOC=m
# CONFIG_SND_BCM63XX_I2S_WHISTLER is not set
CONFIG_SND_DESIGNWARE_I2S=m
@@ -6973,6 +7029,8 @@ CONFIG_SND_SOC_INTEL_SKL_HDA_DSP_GENERIC_MACH=m
CONFIG_SND_SOC_INTEL_SOF_RT5682_MACH=m
CONFIG_SND_SOC_INTEL_SOF_CS42L42_MACH=m
CONFIG_SND_SOC_INTEL_SOF_PCM512x_MACH=m
+CONFIG_SND_SOC_INTEL_SOF_ES8336_MACH=m
+CONFIG_SND_SOC_INTEL_SOF_NAU8825_MACH=m
CONFIG_SND_SOC_INTEL_CML_LP_DA7219_MAX98357A_MACH=m
CONFIG_SND_SOC_INTEL_SOF_CML_RT1011_RT5682_MACH=m
CONFIG_SND_SOC_INTEL_SOF_DA7219_MAX98373_MACH=m
@@ -7065,6 +7123,10 @@ CONFIG_SND_SOC_CS35L33=m
CONFIG_SND_SOC_CS35L34=m
CONFIG_SND_SOC_CS35L35=m
CONFIG_SND_SOC_CS35L36=m
+CONFIG_SND_SOC_CS35L41_LIB=m
+CONFIG_SND_SOC_CS35L41=m
+CONFIG_SND_SOC_CS35L41_SPI=m
+CONFIG_SND_SOC_CS35L41_I2C=m
CONFIG_SND_SOC_CS42L42=m
CONFIG_SND_SOC_CS42L51=m
CONFIG_SND_SOC_CS42L51_I2C=m
@@ -7105,6 +7167,7 @@ CONFIG_SND_SOC_MAX98357A=m
CONFIG_SND_SOC_MAX98504=m
CONFIG_SND_SOC_MAX9867=m
CONFIG_SND_SOC_MAX98927=m
+CONFIG_SND_SOC_MAX98520=m
CONFIG_SND_SOC_MAX98373=m
CONFIG_SND_SOC_MAX98373_I2C=m
CONFIG_SND_SOC_MAX98373_SDW=m
@@ -7138,6 +7201,7 @@ CONFIG_SND_SOC_RT298=m
CONFIG_SND_SOC_RT1011=m
CONFIG_SND_SOC_RT1015=m
CONFIG_SND_SOC_RT1015P=m
+CONFIG_SND_SOC_RT1019=m
CONFIG_SND_SOC_RT1308=m
CONFIG_SND_SOC_RT1308_SDW=m
CONFIG_SND_SOC_RT1316_SDW=m
@@ -7157,6 +7221,7 @@ CONFIG_SND_SOC_RT5677_SPI=m
CONFIG_SND_SOC_RT5682=m
CONFIG_SND_SOC_RT5682_I2C=m
CONFIG_SND_SOC_RT5682_SDW=m
+CONFIG_SND_SOC_RT5682S=m
CONFIG_SND_SOC_RT700=m
CONFIG_SND_SOC_RT700_SDW=m
CONFIG_SND_SOC_RT711=m
@@ -7165,6 +7230,7 @@ CONFIG_SND_SOC_RT711_SDCA_SDW=m
CONFIG_SND_SOC_RT715=m
CONFIG_SND_SOC_RT715_SDW=m
CONFIG_SND_SOC_RT715_SDCA_SDW=m
+CONFIG_SND_SOC_RT9120=m
# CONFIG_SND_SOC_SDW_MOCKUP is not set
CONFIG_SND_SOC_SGTL5000=m
CONFIG_SND_SOC_SI476X=m
@@ -7194,6 +7260,7 @@ CONFIG_SND_SOC_TAS6424=m
CONFIG_SND_SOC_TDA7419=m
CONFIG_SND_SOC_TFA9879=m
CONFIG_SND_SOC_TFA989X=m
+CONFIG_SND_SOC_TLV320ADC3XXX=m
CONFIG_SND_SOC_TLV320AIC23=m
CONFIG_SND_SOC_TLV320AIC23_I2C=m
CONFIG_SND_SOC_TLV320AIC23_SPI=m
@@ -7248,6 +7315,7 @@ CONFIG_SND_SOC_MT6660=m
CONFIG_SND_SOC_NAU8315=m
CONFIG_SND_SOC_NAU8540=m
CONFIG_SND_SOC_NAU8810=m
+CONFIG_SND_SOC_NAU8821=m
CONFIG_SND_SOC_NAU8822=m
CONFIG_SND_SOC_NAU8824=m
CONFIG_SND_SOC_NAU8825=m
@@ -7321,6 +7389,7 @@ CONFIG_HID_KYE=m
CONFIG_HID_UCLOGIC=m
CONFIG_HID_WALTOP=m
CONFIG_HID_VIEWSONIC=m
+CONFIG_HID_XIAOMI=m
CONFIG_HID_GYRATION=m
CONFIG_HID_ICADE=m
CONFIG_HID_ITE=m
@@ -7344,6 +7413,8 @@ CONFIG_HID_REDRAGON=m
CONFIG_HID_MICROSOFT=m
CONFIG_HID_MONTEREY=m
CONFIG_HID_MULTITOUCH=m
+CONFIG_HID_NINTENDO=m
+CONFIG_NINTENDO_FF=y
CONFIG_HID_NTI=m
CONFIG_HID_NTRIG=m
CONFIG_HID_ORTEK=m
@@ -8130,7 +8201,6 @@ CONFIG_RTC_DRV_BQ32K=m
CONFIG_RTC_DRV_PALMAS=m
CONFIG_RTC_DRV_TPS6586X=m
CONFIG_RTC_DRV_TPS65910=m
-CONFIG_RTC_DRV_TPS80031=m
CONFIG_RTC_DRV_RC5T583=m
CONFIG_RTC_DRV_S35390A=m
CONFIG_RTC_DRV_FM3130=m
@@ -8303,6 +8373,7 @@ CONFIG_ACRN_HSM=m
CONFIG_VIRTIO=y
CONFIG_ARCH_HAS_RESTRICTED_VIRTIO_MEMORY_ACCESS=y
CONFIG_VIRTIO_PCI_LIB=m
+CONFIG_VIRTIO_PCI_LIB_LEGACY=m
CONFIG_VIRTIO_MENU=y
CONFIG_VIRTIO_PCI=m
CONFIG_VIRTIO_PCI_LEGACY=y
@@ -8323,6 +8394,7 @@ CONFIG_IFCVF=m
CONFIG_MLX5_VDPA=y
CONFIG_MLX5_VDPA_NET=m
CONFIG_VP_VDPA=m
+CONFIG_ALIBABA_ENI_VDPA=m
CONFIG_VHOST_IOTLB=m
CONFIG_VHOST_RING=m
CONFIG_VHOST=m
@@ -8360,6 +8432,7 @@ CONFIG_XEN_GNTDEV_DMABUF=y
CONFIG_XEN_GRANT_DEV_ALLOC=m
CONFIG_XEN_GRANT_DMA_ALLOC=y
CONFIG_SWIOTLB_XEN=y
+CONFIG_XEN_PCI_STUB=y
CONFIG_XEN_PCIDEV_BACKEND=m
CONFIG_XEN_PVCALLS_FRONTEND=m
CONFIG_XEN_PVCALLS_BACKEND=y
@@ -8390,7 +8463,6 @@ CONFIG_RTL8192E=m
CONFIG_RTL8723BS=m
CONFIG_R8712U=m
CONFIG_R8188EU=m
-CONFIG_88EU_AP_MODE=y
CONFIG_RTS5208=m
CONFIG_VT6655=m
CONFIG_VT6656=m
@@ -8506,6 +8578,7 @@ CONFIG_WMI_BMOF=m
CONFIG_HUAWEI_WMI=m
CONFIG_MXM_WMI=m
CONFIG_PEAQ_WMI=m
+CONFIG_NVIDIA_WMI_EC_BACKLIGHT=m
CONFIG_XIAOMI_WMI=m
CONFIG_GIGABYTE_WMI=m
CONFIG_ACERHDF=m
@@ -8581,6 +8654,7 @@ CONFIG_INTEL_INT0002_VGPIO=m
CONFIG_INTEL_OAKTRAIL=m
CONFIG_INTEL_BXTWC_PMIC_TMU=m
CONFIG_INTEL_CHTDC_TI_PWRBTN=m
+CONFIG_INTEL_ISHTP_ECLITE=m
CONFIG_INTEL_MRFLD_PWRBTN=m
CONFIG_INTEL_PUNIT_IPC=m
CONFIG_INTEL_RST=m
@@ -8590,6 +8664,7 @@ CONFIG_INTEL_UNCORE_FREQ_CONTROL=m
CONFIG_MSI_LAPTOP=m
CONFIG_MSI_WMI=m
CONFIG_PCENGINES_APU2=m
+CONFIG_BARCO_P50_GPIO=m
CONFIG_SAMSUNG_LAPTOP=m
CONFIG_SAMSUNG_Q10=m
CONFIG_ACPI_TOSHIBA=m
@@ -8641,6 +8716,7 @@ CONFIG_WILCO_EC_TELEMETRY=m
CONFIG_MELLANOX_PLATFORM=y
CONFIG_MLXREG_HOTPLUG=m
CONFIG_MLXREG_IO=m
+CONFIG_MLXREG_LC=m
CONFIG_SURFACE_PLATFORMS=y
CONFIG_SURFACE3_WMI=m
CONFIG_SURFACE_3_BUTTON=m
@@ -8660,14 +8736,6 @@ CONFIG_HAVE_CLK=y
CONFIG_HAVE_CLK_PREPARE=y
CONFIG_COMMON_CLK=y
CONFIG_COMMON_CLK_WM831X=m
-
-#
-# Clock driver for ARM Reference designs
-#
-# CONFIG_ICST is not set
-# CONFIG_CLK_SP810 is not set
-# end of Clock driver for ARM Reference designs
-
CONFIG_LMK04832=m
CONFIG_COMMON_CLK_MAX9485=m
CONFIG_COMMON_CLK_SI5341=m
@@ -8853,6 +8921,12 @@ CONFIG_IIO_TRIGGERED_EVENT=m
#
CONFIG_ADIS16201=m
CONFIG_ADIS16209=m
+CONFIG_ADXL313=m
+CONFIG_ADXL313_I2C=m
+CONFIG_ADXL313_SPI=m
+CONFIG_ADXL355=m
+CONFIG_ADXL355_I2C=m
+CONFIG_ADXL355_SPI=m
CONFIG_ADXL372=m
CONFIG_ADXL372_SPI=m
CONFIG_ADXL372_I2C=m
@@ -9001,11 +9075,13 @@ CONFIG_PMS7003=m
CONFIG_SCD30_CORE=m
CONFIG_SCD30_I2C=m
CONFIG_SCD30_SERIAL=m
+CONFIG_SCD4X=m
CONFIG_SENSIRION_SGP30=m
CONFIG_SENSIRION_SGP40=m
CONFIG_SPS30=m
CONFIG_SPS30_I2C=m
CONFIG_SPS30_SERIAL=m
+CONFIG_SENSEAIR_SUNRISE_CO2=m
CONFIG_VZ89X=m
# end of Chemical Sensors
@@ -9041,6 +9117,7 @@ CONFIG_IIO_ST_SENSORS_CORE=m
#
# Digital to analog converters
#
+CONFIG_AD3552R=m
CONFIG_AD5064=m
CONFIG_AD5360=m
CONFIG_AD5380=m
@@ -9069,6 +9146,7 @@ CONFIG_LTC1660=m
CONFIG_LTC2632=m
CONFIG_M62332=m
CONFIG_MAX517=m
+CONFIG_MAX5821=m
CONFIG_MCP4725=m
CONFIG_MCP4922=m
CONFIG_TI_DAC082S085=m
@@ -9441,7 +9519,13 @@ CONFIG_RESET_TI_SYSCON=m
CONFIG_GENERIC_PHY=y
CONFIG_USB_LGM_PHY=m
CONFIG_PHY_CAN_TRANSCEIVER=m
+
+#
+# PHY drivers for Broadcom platforms
+#
CONFIG_BCM_KONA_USB2_PHY=m
+# end of PHY drivers for Broadcom platforms
+
CONFIG_PHY_PXA_28NM_HSIC=m
CONFIG_PHY_PXA_28NM_USB2=m
CONFIG_PHY_CPCAP_USB=m
@@ -9834,6 +9918,7 @@ CONFIG_EROFS_FS_XATTR=y
CONFIG_EROFS_FS_POSIX_ACL=y
CONFIG_EROFS_FS_SECURITY=y
CONFIG_EROFS_FS_ZIP=y
+CONFIG_EROFS_FS_ZIP_LZMA=y
CONFIG_VBOXSF_FS=m
CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NFS_FS=m
@@ -9992,7 +10077,6 @@ CONFIG_SECURITY_PATH=y
CONFIG_LSM_MMAP_MIN_ADDR=65536
CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y
CONFIG_HARDENED_USERCOPY=y
-CONFIG_HARDENED_USERCOPY_FALLBACK=y
# CONFIG_HARDENED_USERCOPY_PAGESPAN is not set
CONFIG_FORTIFY_SOURCE=y
# CONFIG_STATIC_USERMODEHELPER is not set
@@ -10051,7 +10135,7 @@ CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL=y
CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y
# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
-CONFIG_ZERO_CALL_USED_REGS=y
+# CONFIG_ZERO_CALL_USED_REGS is not set
# end of Memory initialization
# end of Kernel hardening options
# end of Security options
@@ -10381,6 +10465,7 @@ CONFIG_XZ_DEC_IA64=y
CONFIG_XZ_DEC_ARM=y
CONFIG_XZ_DEC_ARMTHUMB=y
CONFIG_XZ_DEC_SPARC=y
+CONFIG_XZ_DEC_MICROLZMA=y
CONFIG_XZ_DEC_BCJ=y
# CONFIG_XZ_DEC_TEST is not set
CONFIG_DECOMPRESS_GZIP=y
@@ -10732,6 +10817,8 @@ CONFIG_HIST_TRIGGERS=y
# CONFIG_HIST_TRIGGERS_DEBUG is not set
# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
# CONFIG_SAMPLES is not set
+CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y
+CONFIG_HAVE_SAMPLE_FTRACE_DIRECT_MULTI=y
CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y
CONFIG_STRICT_DEVMEM=y
CONFIG_IO_STRICT_DEVMEM=y
@@ -10778,7 +10865,6 @@ CONFIG_RUNTIME_TESTING_MENU=y
# CONFIG_LKDTM is not set
# CONFIG_TEST_MIN_HEAP is not set
# CONFIG_TEST_DIV64 is not set
-# CONFIG_KPROBES_SANITY_TEST is not set
# CONFIG_BACKTRACE_SELF_TEST is not set
# CONFIG_RBTREE_TEST is not set
# CONFIG_REED_SOLOMON_TEST is not set