aboutsummarylogtreecommitdiffstats
diff options
context:
space:
mode:
authoralegru2022-08-07 10:30:29 +0200
committeralegru2022-08-07 10:30:29 +0200
commite0bb178c782f9f1c575d73afa6467a2700c39d87 (patch)
tree3b2870014574cb7784607ede077e45ee2f70ad9e
parent3ab9de6cbf68312e148ebe3ea9a5300ee5abada9 (diff)
downloadaur-e0bb178c782f9f1c575d73afa6467a2700c39d87.tar.gz
Update to 5.15.59-2
-rw-r--r--.SRCINFO27
-rw-r--r--0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch18
-rw-r--r--0002-PCI-Add-more-NVIDIA-controllers-to-the-MSI-masking-q.patch (renamed from 0002-PCI_Add_more_NVIDIA_controllers_to_the_MSI_masking_quirk.patch)6
-rw-r--r--0003-iommu-intel-do-deep-dma-unmapping-to-avoid-kernel-fl.patch (renamed from 0003-iommu_intel_do_deep_dma-unmapping_to_avoid_kernel-flooding.patch)6
-rw-r--r--0004-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch (renamed from 0004-Bluetooth_btintel_Fix_bdaddress_comparison_with_garbage_value.patch)6
-rw-r--r--0005-lg-laptop-Recognize-more-models.patch (renamed from 0005-lg-laptop_Recognize_more_models.patch)4
-rw-r--r--0006-Fix-NFSv4-mount-regression.patch238
-rw-r--r--0006_fix_NFSv4_mount_regression.diff243
-rw-r--r--PKGBUILD42
-rw-r--r--config42
-rw-r--r--fix-gpu-hang.diff40
11 files changed, 318 insertions, 354 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 8f00fae084ed..45a5eb607962 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = linux-vfio-lts
pkgdesc = LTS Linux VFIO
pkgver = 5.15.59
- pkgrel = 1
+ pkgrel = 2
url = https://www.kernel.org/
arch = x86_64
license = GPL2
@@ -23,24 +23,24 @@ pkgbase = linux-vfio-lts
source = https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.15.59.tar.sign
source = config
source = 0001-ZEN-Add-sysctl-and-CONFIG-to-disallow-unprivileged-C.patch
- source = 0002-PCI_Add_more_NVIDIA_controllers_to_the_MSI_masking_quirk.patch
- source = 0003-iommu_intel_do_deep_dma-unmapping_to_avoid_kernel-flooding.patch
- source = 0004-Bluetooth_btintel_Fix_bdaddress_comparison_with_garbage_value.patch
- source = 0005-lg-laptop_Recognize_more_models.patch
- source = 0006_fix_NFSv4_mount_regression.diff
+ source = 0002-PCI-Add-more-NVIDIA-controllers-to-the-MSI-masking-q.patch
+ source = 0003-iommu-intel-do-deep-dma-unmapping-to-avoid-kernel-fl.patch
+ source = 0004-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch
+ source = 0005-lg-laptop-Recognize-more-models.patch
+ source = 0006-Fix-NFSv4-mount-regression.patch
source = add-acs-overrides.patch
source = i915-vga-arbiter.patch
validpgpkeys = ABAF11C65A2970B130ABE3C479BE3E4300411886
validpgpkeys = 647F28654894E3BD457199BE38DBBDC86092693E
sha256sums = e6ddc642057340db06b3b921c2b31bfed2c611359e8f144c3e5cf9c3ac33bccb
sha256sums = SKIP
- sha256sums = 52f0a13ca48e36032d3d4df06ec8a477d5ae151af992441a5fc68ab07f33c45d
- sha256sums = 99df282c594cc269d9a5d19bb86ea887892d3654cfc53c4ce94a644cf3278423
- sha256sums = c35018601f04ae81e0a2018a8597595db6ae053158c206845399cdebb2d2b706
- sha256sums = 7c7707c738983f3683d76295b496f578996b7341fa39ad334ec2833bfe4b966e
- sha256sums = 3fa8a4af66d5a3b99b48ca979a247c61e81c9b2d3bcdffa9d3895a5532a420b4
- sha256sums = 79266c6cc970733fd35881d9a8f0a74c25c00b4d81741b8d4bba6827c48f7c78
- sha256sums = e9527ad81d5b1821a7b17c56cb3abaec85785563f51e448cb3c06f1c68e2966f
+ sha256sums = d54ffc9e42ceed0a6b53b9ce0c707743c60986fd0919e282aedcca9a7746160c
+ sha256sums = 7bd64ff894475b3415d792ba8466ba7e8f872af56dbf1aeed0d261fe4008b8b5
+ sha256sums = 39649dc1dfcb06b411ad124e123769e955a78961b4ea17538c0919a930925549
+ sha256sums = 56c12551e859cc67520909e64feecbf1b190cee8addef150c5b9d1bb1d40981e
+ sha256sums = 5c1ee81fdd5818442af6081de987f9c1a9ce3c8d183566b3dfc19a8433aa3dde
+ sha256sums = 067e8995fcd6f6ed25e0253e9374c0e179a000c154da3e59ce62634945ac5be9
+ sha256sums = 95dad02b01937681af0a207e22a6bf64c33e067bf7a14cb98262dd8f69194eb8
sha256sums = b90be7b79652be61f7d50691000f6a8c75a240dc2eee2667b68d984f67583f77
sha256sums = 856230cfbdc2bb53a4920dfbcb6fb2d58427b7b184e5f94e21f08011d0a2fcc6
@@ -53,6 +53,7 @@ pkgname = linux-vfio-lts
optdepends = linux-firmware: firmware images needed for some devices
provides = VIRTUALBOX-GUEST-MODULES
provides = WIREGUARD-MODULE
+ provides = KSMBD-MODULE
replaces = wireguard-lts
pkgname = linux-vfio-lts-headers
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 ddfbd03b02ac..63b676786294 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 0948f6ce6d898c598f8fe88240954e578fdc8387 Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 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] ZEN: Add sysctl and CONFIG to disallow unprivileged
@@ -14,7 +14,7 @@ Our default behavior continues to match the vanilla kernel.
5 files changed, 53 insertions(+)
diff --git a/include/linux/user_namespace.h b/include/linux/user_namespace.h
-index 33a4240e6a6f1..82213f9c4c17f 100644
+index 33a4240e6a6f..82213f9c4c17 100644
--- a/include/linux/user_namespace.h
+++ b/include/linux/user_namespace.h
@@ -139,6 +139,8 @@ static inline void set_rlimit_ucount_max(struct user_namespace *ns,
@@ -36,10 +36,10 @@ index 33a4240e6a6f1..82213f9c4c17f 100644
{
return &init_user_ns;
diff --git a/init/Kconfig b/init/Kconfig
-index 11f8a845f259d..02b7a0e455a5d 100644
+index d19ed66aba3b..a67689ca1929 100644
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -1226,6 +1226,22 @@ config USER_NS
+@@ -1231,6 +1231,22 @@ config USER_NS
If unsure, say N.
@@ -63,7 +63,7 @@ index 11f8a845f259d..02b7a0e455a5d 100644
bool "PID Namespaces"
default y
diff --git a/kernel/fork.c b/kernel/fork.c
-index 10885c649ca42..e0fe98e1afbdb 100644
+index 89475c994ca9..a00b3f26f241 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -98,6 +98,10 @@
@@ -88,7 +88,7 @@ index 10885c649ca42..e0fe98e1afbdb 100644
/*
* Thread groups must share signals as well, and detached threads
* can only be started up within the thread group.
-@@ -3056,6 +3064,12 @@ int ksys_unshare(unsigned long unshare_flags)
+@@ -3066,6 +3074,12 @@ int ksys_unshare(unsigned long unshare_flags)
if (unshare_flags & CLONE_NEWNS)
unshare_flags |= CLONE_FS;
@@ -102,7 +102,7 @@ index 10885c649ca42..e0fe98e1afbdb 100644
if (err)
goto bad_unshare_out;
diff --git a/kernel/sysctl.c b/kernel/sysctl.c
-index 083be6af29d70..42aa3c7835b96 100644
+index 23c08bf3db58..63ab60778e5d 100644
--- a/kernel/sysctl.c
+++ b/kernel/sysctl.c
@@ -105,6 +105,9 @@
@@ -115,7 +115,7 @@ index 083be6af29d70..42aa3c7835b96 100644
#if defined(CONFIG_SYSCTL)
-@@ -1949,6 +1952,15 @@ static struct ctl_table kern_table[] = {
+@@ -1953,6 +1956,15 @@ static struct ctl_table kern_table[] = {
.proc_handler = proc_dointvec,
},
#endif
@@ -132,7 +132,7 @@ index 083be6af29d70..42aa3c7835b96 100644
{
.procname = "tainted",
diff --git a/kernel/user_namespace.c b/kernel/user_namespace.c
-index 6b2e3ca7ee993..0253002184f1d 100644
+index 5481ba44a8d6..423ab2563ad7 100644
--- a/kernel/user_namespace.c
+++ b/kernel/user_namespace.c
@@ -21,6 +21,13 @@
diff --git a/0002-PCI_Add_more_NVIDIA_controllers_to_the_MSI_masking_quirk.patch b/0002-PCI-Add-more-NVIDIA-controllers-to-the-MSI-masking-q.patch
index fa304d649823..297f364ae92d 100644
--- a/0002-PCI_Add_more_NVIDIA_controllers_to_the_MSI_masking_quirk.patch
+++ b/0002-PCI-Add-more-NVIDIA-controllers-to-the-MSI-masking-q.patch
@@ -1,4 +1,4 @@
-From 0bb6e4f104167b1e283269b46f3bbd30b2d979a7 Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 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] PCI: Add more NVIDIA controllers to the MSI masking quirk
@@ -10,10 +10,10 @@ For: https://bugs.archlinux.org/task/72777
1 file changed, 2 insertions(+)
diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
-index 208fa03acdda0..7fdb7e9c2e12c 100644
+index 4893b1e82403..6ac303124b69 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)
+@@ -5821,3 +5821,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);
diff --git a/0003-iommu_intel_do_deep_dma-unmapping_to_avoid_kernel-flooding.patch b/0003-iommu-intel-do-deep-dma-unmapping-to-avoid-kernel-fl.patch
index 13aa5a09cd9c..b8216ae3d70e 100644
--- a/0003-iommu_intel_do_deep_dma-unmapping_to_avoid_kernel-flooding.patch
+++ b/0003-iommu-intel-do-deep-dma-unmapping-to-avoid-kernel-fl.patch
@@ -1,4 +1,4 @@
-From 32803dc7c2ffc29db15a46034d818f6e6c5775ef Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Ajay Garg <ajaygargnsit@gmail.com>
Date: Tue, 12 Oct 2021 19:26:53 +0530
Subject: [PATCH] iommu: intel: do deep dma-unmapping, to avoid
@@ -71,10 +71,10 @@ Link: https://lore.kernel.org/linux-iommu/20211012135653.3852-1-ajaygargnsit@gma
1 file changed, 2 insertions(+)
diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c
-index 78f8c8e6803e9..d8da48a91ba3b 100644
+index a1ffb3d6d901..c41788ea1a03 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,
+@@ -5113,6 +5113,8 @@ static size_t intel_iommu_unmap(struct iommu_domain *domain,
gather->freelist = domain_unmap(dmar_domain, start_pfn,
last_pfn, gather->freelist);
diff --git a/0004-Bluetooth_btintel_Fix_bdaddress_comparison_with_garbage_value.patch b/0004-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch
index 3697425a2afa..26ae0efbdfc1 100644
--- a/0004-Bluetooth_btintel_Fix_bdaddress_comparison_with_garbage_value.patch
+++ b/0004-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch
@@ -1,4 +1,4 @@
-From a6d4fb4f5e7fe795d9e3b28b261a0f86f1026d03 Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 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] Bluetooth: btintel: Fix bdaddress comparison with garbage
@@ -16,7 +16,7 @@ Reviewed-by: Tedd Ho-Jeong An <tedd.an@intel.com>
1 file changed, 14 insertions(+), 8 deletions(-)
diff --git a/drivers/bluetooth/btintel.c b/drivers/bluetooth/btintel.c
-index f1705b46fc889..b9055a3e61ed7 100644
+index d122cc973917..a828fcd05d83 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,
@@ -44,7 +44,7 @@ index f1705b46fc889..b9055a3e61ed7 100644
}
btintel_get_fw_name_tlv(ver, fwname, sizeof(fwname), "sfi");
-@@ -2303,6 +2305,10 @@ static int btintel_setup_combined(struct hci_dev *hdev)
+@@ -2309,6 +2311,10 @@ static int btintel_setup_combined(struct hci_dev *hdev)
goto exit_error;
}
diff --git a/0005-lg-laptop_Recognize_more_models.patch b/0005-lg-laptop-Recognize-more-models.patch
index 9031085506ce..663e4be26472 100644
--- a/0005-lg-laptop_Recognize_more_models.patch
+++ b/0005-lg-laptop-Recognize-more-models.patch
@@ -1,4 +1,4 @@
-From 72edf8c167268bb68d701f46006ccfdfa5490db8 Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 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] lg-laptop: Recognize more models
@@ -12,7 +12,7 @@ For: https://bugs.archlinux.org/task/71772
1 file changed, 12 insertions(+)
diff --git a/drivers/platform/x86/lg-laptop.c b/drivers/platform/x86/lg-laptop.c
-index 88b551caeaaf4..d6f74d3a7605e 100644
+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)
diff --git a/0006-Fix-NFSv4-mount-regression.patch b/0006-Fix-NFSv4-mount-regression.patch
new file mode 100644
index 000000000000..470822db1b0f
--- /dev/null
+++ b/0006-Fix-NFSv4-mount-regression.patch
@@ -0,0 +1,238 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org>
+Date: Sat, 6 Aug 2022 22:54:33 +0200
+Subject: [PATCH] Fix NFSv4 mount regression
+
+This reverts commit 6f2836341d8a (NFSv4.1 query for fs_location attr on
+a new file system, 2022-01-12).
+
+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 090b16890e3d..551833862171 100644
+--- a/fs/nfs/client.c
++++ b/fs/nfs/client.c
+@@ -860,13 +860,6 @@ int nfs_probe_fsinfo(struct nfs_server *server, struct nfs_fh *mntfh, struct nfs
+ 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;
+ }
+ EXPORT_SYMBOL_GPL(nfs_probe_fsinfo);
+diff --git a/fs/nfs/nfs4_fs.h b/fs/nfs/nfs4_fs.h
+index f8672a34fd63..36471dd0e82b 100644
+--- a/fs/nfs/nfs4_fs.h
++++ b/fs/nfs/nfs4_fs.h
+@@ -261,8 +261,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 *);
+ };
+
+@@ -304,9 +304,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 cbb39aff8182..3d4dee10cb11 100644
+--- a/fs/nfs/nfs4proc.c
++++ b/fs/nfs/nfs4proc.c
+@@ -3963,60 +3963,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)
+ {
+@@ -7952,18 +7898,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 */
+@@ -8009,17 +7955,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 */
+@@ -8068,28 +8014,27 @@ 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;
+ struct nfs4_exception exception = {
+ .interruptible = true,
+ };
+ int status;
+
+ dprintk("%s: FSID %llx:%llx on \"%s\"\n", __func__,
+ (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);
+@@ -10586,7 +10531,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 83c88b54d712..42707e12d35c 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 ecd74cc34797..e9698b6278a5 100644
+--- a/include/linux/nfs_xdr.h
++++ b/include/linux/nfs_xdr.h
+@@ -1805,7 +1805,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 *);
+ };
+
+ /*
diff --git a/0006_fix_NFSv4_mount_regression.diff b/0006_fix_NFSv4_mount_regression.diff
deleted file mode 100644
index c2f126008b8e..000000000000
--- a/0006_fix_NFSv4_mount_regression.diff
+++ /dev/null
@@ -1,243 +0,0 @@
-From 6f2836341d8a39e1e000572b10959347d7e61fd9 Mon Sep 17 00:00:00 2001
-From: Olga Kornievskaia <kolga@netapp.com>
-Date: Wed, 12 Jan 2022 10:27:38 -0500
-Subject: NFSv4.1 query for fs_location attr on a new file system
-
-[ Upstream commit 1976b2b31462151403c9fc110204fcc2a77bdfd1 ]
-
-Query the server for other possible trunkable locations for a given
-file system on a 4.1+ mount.
-
-v2:
--- added missing static to nfs4_discover_trunking,
-reported by the kernel test robot
-
-Signed-off-by: Olga Kornievskaia <kolga@netapp.com>
-Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- 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, 81 insertions(+), 15 deletions(-)
-
-diff --git a/fs/nfs/client.c b/fs/nfs/client.c
-index 551833862171f..090b16890e3d6 100644
---- a/fs/nfs/client.c
-+++ b/fs/nfs/client.c
-@@ -860,6 +860,13 @@ int nfs_probe_fsinfo(struct nfs_server *server, struct nfs_fh *mntfh, struct nfs
- 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;
- }
- EXPORT_SYMBOL_GPL(nfs_probe_fsinfo);
-diff --git a/fs/nfs/nfs4_fs.h b/fs/nfs/nfs4_fs.h
-index ba78df4b13d94..1a048ee653a11 100644
---- a/fs/nfs/nfs4_fs.h
-+++ b/fs/nfs/nfs4_fs.h
-@@ -261,8 +261,8 @@ struct nfs4_state_maintenance_ops {
- };
-
- struct nfs4_mig_recovery_ops {
-- int (*get_locations)(struct inode *, struct nfs4_fs_locations *,
-- struct page *, const struct cred *);
-+ int (*get_locations)(struct nfs_server *, struct nfs_fh *,
-+ struct nfs4_fs_locations *, struct page *, const struct cred *);
- int (*fsid_present)(struct inode *, const struct cred *);
- };
-
-@@ -303,8 +303,9 @@ 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 inode *, struct nfs4_fs_locations *,
-- struct page *page, const struct cred *);
-+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_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 367a1b99b7550..389fa72d4ca98 100644
---- a/fs/nfs/nfs4proc.c
-+++ b/fs/nfs/nfs4proc.c
-@@ -3952,6 +3952,60 @@ 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)
- {
-@@ -7886,18 +7940,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 inode *inode,
-+static int _nfs40_proc_get_locations(struct nfs_server *server,
-+ struct nfs_fh *fhandle,
- 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 = NFS_FH(inode),
-+ .fh = fhandle,
- .page = page,
- .bitmask = bitmask,
- .migration = 1, /* skip LOOKUP */
-@@ -7943,17 +7997,17 @@ static int _nfs40_proc_get_locations(struct inode *inode,
- * When the client supports GETATTR(fs_locations_info), it can
- * be plumbed in here.
- */
--static int _nfs41_proc_get_locations(struct inode *inode,
-+static int _nfs41_proc_get_locations(struct nfs_server *server,
-+ struct nfs_fh *fhandle,
- 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 = NFS_FH(inode),
-+ .fh = fhandle,
- .page = page,
- .bitmask = bitmask,
- .migration = 1, /* skip LOOKUP */
-@@ -8002,11 +8056,11 @@ static int _nfs41_proc_get_locations(struct inode *inode,
- * -NFS4ERR_LEASE_MOVED is returned if the server still has leases
- * from this client that require migration recovery.
- */
--int nfs4_proc_get_locations(struct inode *inode,
-+int nfs4_proc_get_locations(struct nfs_server *server,
-+ struct nfs_fh *fhandle,
- 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;
-@@ -8019,10 +8073,11 @@ int nfs4_proc_get_locations(struct inode *inode,
- (unsigned long long)server->fsid.major,
- (unsigned long long)server->fsid.minor,
- clp->cl_hostname);
-- nfs_display_fhandle(NFS_FH(inode), __func__);
-+ nfs_display_fhandle(fhandle, __func__);
-
- do {
-- status = ops->get_locations(inode, locations, page, cred);
-+ status = ops->get_locations(server, fhandle, locations, page,
-+ cred);
- if (status != -NFS4ERR_DELAY)
- break;
- nfs4_handle_exception(server, status, &exception);
-@@ -10516,6 +10571,7 @@ 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 acc1cd3e63a48..51f5cb41e87a4 100644
---- a/fs/nfs/nfs4state.c
-+++ b/fs/nfs/nfs4state.c
-@@ -2097,7 +2097,8 @@ 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(inode, locations, page, cred);
-+ result = nfs4_proc_get_locations(server, NFS_FH(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 e9698b6278a52..ecd74cc347974 100644
---- a/include/linux/nfs_xdr.h
-+++ b/include/linux/nfs_xdr.h
-@@ -1805,6 +1805,7 @@ 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 *);
- };
-
- /*
---
-cgit
-
diff --git a/PKGBUILD b/PKGBUILD
index f9e61faf19fd..d94024e3a89a 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,7 +2,7 @@
pkgbase=linux-vfio-lts
pkgver=5.15.59
-pkgrel=1
+pkgrel=2
pkgdesc='LTS Linux VFIO'
url="https://www.kernel.org/"
arch=(x86_64)
@@ -17,11 +17,11 @@ source=(
https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.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_quirk.patch
- 0003-iommu_intel_do_deep_dma-unmapping_to_avoid_kernel-flooding.patch
- 0004-Bluetooth_btintel_Fix_bdaddress_comparison_with_garbage_value.patch
- 0005-lg-laptop_Recognize_more_models.patch
- 0006_fix_NFSv4_mount_regression.diff
+ 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-Bluetooth-btintel-Fix-bdaddress-comparison-with-garb.patch
+ 0005-lg-laptop-Recognize-more-models.patch
+ 0006-Fix-NFSv4-mount-regression.patch
add-acs-overrides.patch
i915-vga-arbiter.patch
)
@@ -32,13 +32,13 @@ validpgpkeys=(
# https://www.kernel.org/pub/linux/kernel/v5.x/sha256sums.asc
sha256sums=('e6ddc642057340db06b3b921c2b31bfed2c611359e8f144c3e5cf9c3ac33bccb'
'SKIP'
- '52f0a13ca48e36032d3d4df06ec8a477d5ae151af992441a5fc68ab07f33c45d'
- '99df282c594cc269d9a5d19bb86ea887892d3654cfc53c4ce94a644cf3278423'
- 'c35018601f04ae81e0a2018a8597595db6ae053158c206845399cdebb2d2b706'
- '7c7707c738983f3683d76295b496f578996b7341fa39ad334ec2833bfe4b966e'
- '3fa8a4af66d5a3b99b48ca979a247c61e81c9b2d3bcdffa9d3895a5532a420b4'
- '79266c6cc970733fd35881d9a8f0a74c25c00b4d81741b8d4bba6827c48f7c78'
- 'e9527ad81d5b1821a7b17c56cb3abaec85785563f51e448cb3c06f1c68e2966f'
+ 'd54ffc9e42ceed0a6b53b9ce0c707743c60986fd0919e282aedcca9a7746160c'
+ '7bd64ff894475b3415d792ba8466ba7e8f872af56dbf1aeed0d261fe4008b8b5'
+ '39649dc1dfcb06b411ad124e123769e955a78961b4ea17538c0919a930925549'
+ '56c12551e859cc67520909e64feecbf1b190cee8addef150c5b9d1bb1d40981e'
+ '5c1ee81fdd5818442af6081de987f9c1a9ce3c8d183566b3dfc19a8433aa3dde'
+ '067e8995fcd6f6ed25e0253e9374c0e179a000c154da3e59ce62634945ac5be9'
+ '95dad02b01937681af0a207e22a6bf64c33e067bf7a14cb98262dd8f69194eb8'
'b90be7b79652be61f7d50691000f6a8c75a240dc2eee2667b68d984f67583f77'
'856230cfbdc2bb53a4920dfbcb6fb2d58427b7b184e5f94e21f08011d0a2fcc6')
@@ -49,10 +49,6 @@ export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EP
prepare() {
cd $_srcname
- # fix NFSv4 mounting issue regression - FS#73838 / FS#73860
- # https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/patch/?id=6f2836341d8a39e1e000572b10959347d7e61fd9
- patch -Rp1 -i ../0006_fix_NFSv4_mount_regression.diff
-
echo "Setting version..."
scripts/setlocalversion --save-scmversion
echo "-$pkgrel" > localversion.10-pkgrel
@@ -70,6 +66,7 @@ prepare() {
echo "Setting config..."
cp ../config .config
make olddefconfig
+ diff -u ../config .config || :
make -s kernelrelease > version
echo "Prepared $pkgbase version $(<version)"
@@ -77,8 +74,7 @@ prepare() {
build() {
cd $_srcname
- make all
- make htmldocs
+ make htmldocs all
}
_package() {
@@ -86,7 +82,7 @@ _package() {
depends=(coreutils kmod initramfs)
optdepends=('wireless-regdb: to set the correct wireless channels of your country'
'linux-firmware: firmware images needed for some devices')
- provides=(VIRTUALBOX-GUEST-MODULES WIREGUARD-MODULE)
+ provides=(VIRTUALBOX-GUEST-MODULES WIREGUARD-MODULE KSMBD-MODULE)
replaces=(wireguard-lts)
cd $_srcname
@@ -123,11 +119,11 @@ _package-headers() {
install -Dt "$builddir/arch/x86" -m644 arch/x86/Makefile
cp -t "$builddir" -a scripts
- # add objtool for external module building and enabled VALIDATION_STACK option
+ # required when STACK_VALIDATION is enabled
install -Dt "$builddir/tools/objtool" tools/objtool/objtool
- # add xfs and shmem for aufs building
- mkdir -p "$builddir"/{fs/xfs,mm}
+ # required when DEBUG_INFO_BTF_MODULES is enabled
+ install -Dt "$builddir/tools/bpf/resolve_btfids" tools/bpf/resolve_btfids/resolve_btfids
echo "Installing headers..."
cp -t "$builddir" -a include
diff --git a/config b/config
index 2c9b49464b7c..6973c72358c6 100644
--- a/config
+++ b/config
@@ -117,7 +117,7 @@ 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
@@ -127,7 +127,7 @@ CONFIG_BPF_LSM=y
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
-# CONFIG_SCHED_CORE is not set
+CONFIG_SCHED_CORE=y
#
# CPU/Task time and stats accounting
@@ -486,7 +486,9 @@ CONFIG_SCHED_HRTICK=y
CONFIG_KEXEC=y
CONFIG_KEXEC_FILE=y
CONFIG_ARCH_HAS_KEXEC_PURGATORY=y
-# CONFIG_KEXEC_SIG is not set
+CONFIG_KEXEC_SIG=y
+# CONFIG_KEXEC_SIG_FORCE is not set
+CONFIG_KEXEC_BZIMAGE_VERIFY_SIG=y
CONFIG_CRASH_DUMP=y
CONFIG_KEXEC_JUMP=y
CONFIG_PHYSICAL_START=0x1000000
@@ -519,7 +521,7 @@ CONFIG_RETHUNK=y
CONFIG_CPU_UNRET_ENTRY=y
CONFIG_CPU_IBPB_ENTRY=y
CONFIG_CPU_IBRS_ENTRY=y
-# CONFIG_SLS is not set
+CONFIG_SLS=y
CONFIG_ARCH_HAS_ADD_PAGES=y
CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
CONFIG_USE_PERCPU_NUMA_NODE_ID=y
@@ -712,7 +714,7 @@ CONFIG_HAVE_KVM_PM_NOTIFIER=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=m
CONFIG_KVM_INTEL=m
-# CONFIG_X86_SGX_KVM is not set
+CONFIG_X86_SGX_KVM=y
CONFIG_KVM_AMD=m
CONFIG_KVM_AMD_SEV=y
CONFIG_KVM_XEN=y
@@ -1070,7 +1072,9 @@ CONFIG_SECRETMEM=y
#
# Data Access Monitoring
#
-# CONFIG_DAMON is not set
+CONFIG_DAMON=y
+CONFIG_DAMON_VADDR=y
+CONFIG_DAMON_DBGFS=y
# end of Data Access Monitoring
# end of Memory Management options
@@ -9584,7 +9588,7 @@ CONFIG_TMPFS_INODE64=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
CONFIG_HUGETLB_PAGE_FREE_VMEMMAP=y
-CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON=y
+# CONFIG_HUGETLB_PAGE_FREE_VMEMMAP_DEFAULT_ON is not set
CONFIG_MEMFD_CREATE=y
CONFIG_ARCH_HAS_GIGANTIC_PAGE=y
CONFIG_CONFIGFS_FS=y
@@ -9879,19 +9883,27 @@ CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y
# CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set
# CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY is not set
CONFIG_SECURITY_LANDLOCK=y
-# CONFIG_INTEGRITY is not set
+CONFIG_INTEGRITY=y
+CONFIG_INTEGRITY_SIGNATURE=y
+CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
+CONFIG_INTEGRITY_TRUSTED_KEYRING=y
+CONFIG_INTEGRITY_PLATFORM_KEYRING=y
+CONFIG_LOAD_UEFI_KEYS=y
+CONFIG_INTEGRITY_AUDIT=y
+# CONFIG_IMA is not set
+# CONFIG_IMA_KEYRINGS_PERMIT_SIGNED_BY_BUILTIN_OR_SECONDARY is not set
# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set
+# CONFIG_EVM is not set
# CONFIG_DEFAULT_SECURITY_SELINUX is not set
# CONFIG_DEFAULT_SECURITY_SMACK is not set
# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
# CONFIG_DEFAULT_SECURITY_APPARMOR is not set
CONFIG_DEFAULT_SECURITY_DAC=y
-CONFIG_LSM="landlock,lockdown,yama,bpf"
+CONFIG_LSM="landlock,lockdown,yama,integrity,bpf"
#
# Kernel hardening options
#
-CONFIG_GCC_PLUGIN_STRUCTLEAK=y
#
# Memory initialization
@@ -9901,10 +9913,9 @@ CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
# CONFIG_INIT_STACK_NONE is not set
# CONFIG_GCC_PLUGIN_STRUCTLEAK_USER is not set
# CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF is not set
-CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL=y
+# CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL is not set
# CONFIG_INIT_STACK_ALL_PATTERN is not set
-# CONFIG_INIT_STACK_ALL_ZERO is not set
-# CONFIG_GCC_PLUGIN_STRUCTLEAK_VERBOSE is not set
+CONFIG_INIT_STACK_ALL_ZERO=y
# CONFIG_GCC_PLUGIN_STACKLEAK is not set
CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y
# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
@@ -10296,6 +10307,7 @@ CONFIG_LRU_CACHE=m
CONFIG_CLZ_TAB=y
CONFIG_IRQ_POLL=y
CONFIG_MPILIB=y
+CONFIG_SIGNATURE=y
CONFIG_DIMLIB=y
CONFIG_OID_REGISTRY=y
CONFIG_UCS2_STRING=y
@@ -10431,7 +10443,7 @@ CONFIG_HAVE_ARCH_KASAN=y
CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
CONFIG_CC_HAS_KASAN_GENERIC=y
CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
-CONFIG_KASAN=y
+# CONFIG_KASAN is not set
CONFIG_HAVE_ARCH_KFENCE=y
CONFIG_KFENCE=y
CONFIG_KFENCE_SAMPLE_INTERVAL=100
@@ -10684,7 +10696,7 @@ CONFIG_ASYNC_RAID6_TEST=m
# CONFIG_TEST_FPU is not set
# CONFIG_TEST_CLOCKSOURCE_WATCHDOG is not set
CONFIG_ARCH_USE_MEMTEST=y
-# CONFIG_MEMTEST is not set
+CONFIG_MEMTEST=y
# CONFIG_HYPERV_TESTING is not set
# end of Kernel Testing and Coverage
# end of Kernel hacking
diff --git a/fix-gpu-hang.diff b/fix-gpu-hang.diff
deleted file mode 100644
index a8045afeb2df..000000000000
--- a/fix-gpu-hang.diff
+++ /dev/null
@@ -1,40 +0,0 @@
-From c21b4002214c1c7e7b627b9b53375612f7aab6db Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
-Date: Wed, 20 Oct 2021 19:19:46 +0200
-Subject: drm/ttm: fix memleak in ttm_transfered_destroy
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-commit 0db55f9a1bafbe3dac750ea669de9134922389b5 upstream.
-
-We need to cleanup the fences for ghost objects as well.
-
-Signed-off-by: Christian König <christian.koenig@amd.com>
-Reported-by: Erhard F. <erhard_f@mailbox.org>
-Tested-by: Erhard F. <erhard_f@mailbox.org>
-Reviewed-by: Huang Rui <ray.huang@amd.com>
-Bug: https://bugzilla.kernel.org/show_bug.cgi?id=214029
-Bug: https://bugzilla.kernel.org/show_bug.cgi?id=214447
-CC: <stable@vger.kernel.org>
-Link: https://patchwork.freedesktop.org/patch/msgid/20211020173211.2247-1-christian.koenig@amd.com
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- drivers/gpu/drm/ttm/ttm_bo_util.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/drivers/gpu/drm/ttm/ttm_bo_util.c b/drivers/gpu/drm/ttm/ttm_bo_util.c
-index fb2a25f8408fc..8fba425a76268 100644
---- a/drivers/gpu/drm/ttm/ttm_bo_util.c
-+++ b/drivers/gpu/drm/ttm/ttm_bo_util.c
-@@ -322,6 +322,7 @@ static void ttm_transfered_destroy(struct ttm_buffer_object *bo)
- struct ttm_transfer_obj *fbo;
-
- fbo = container_of(bo, struct ttm_transfer_obj, base);
-+ dma_resv_fini(&fbo->base.base._resv);
- ttm_bo_put(fbo->bo);
- kfree(fbo);
- }
---
-cgit 1.2.3-1.el7
-