From 1a6f494ab44415fb4a9846058ed05f6e30824b07 Mon Sep 17 00:00:00 2001 From: Wolfgang Müller Date: Fri, 21 Jun 2024 12:13:53 +0200 Subject: kernel-5.10: Retire profile --- kernel-5.10/package.accept_keywords/70-kernel-5.10 | 1 - kernel-5.10/package.mask/70-kernel-5.10 | 2 - .../0001-iommu-vt-d-Fix-kernel-panic-on-boot.patch | 71 ---------------------- 3 files changed, 74 deletions(-) delete mode 100644 kernel-5.10/package.accept_keywords/70-kernel-5.10 delete mode 100644 kernel-5.10/package.mask/70-kernel-5.10 delete mode 100644 kernel-5.10/patches/sys-kernel/gentoo-sources-5.10.37/0001-iommu-vt-d-Fix-kernel-panic-on-boot.patch diff --git a/kernel-5.10/package.accept_keywords/70-kernel-5.10 b/kernel-5.10/package.accept_keywords/70-kernel-5.10 deleted file mode 100644 index a7b064b..0000000 --- a/kernel-5.10/package.accept_keywords/70-kernel-5.10 +++ /dev/null @@ -1 +0,0 @@ -=sys-kernel/gentoo-sources-5.10* diff --git a/kernel-5.10/package.mask/70-kernel-5.10 b/kernel-5.10/package.mask/70-kernel-5.10 deleted file mode 100644 index f606306..0000000 --- a/kernel-5.10/package.mask/70-kernel-5.10 +++ /dev/null @@ -1,2 +0,0 @@ ->=sys-kernel/gentoo-sources-5.11 - -Date: Mon, 17 May 2021 10:27:49 +0200 -Subject: [PATCH] iommu/vt-d: Fix kernel panic on boot - -The LTS release 5.10.37 would panic immediately on boot with the -following backtrace: - -Call Trace: - domain_mapping+0x16/0x90 - __iommu_map+0xcd/0x120 - iommu_create_device_direct_mappins.isra.0+0x175/0x210 - bus_iommu_probe+0x15a/0x290 - bus_set_iommu+0x7e/0xd0 - intel_iommu_init+0xf84/0x112b - ? e820__memblock_setup+0x76/0x76 - pci_iommu_init+0x11/0x3a - do_one_initcall+0x5a/0x190 - kernel_init_freeable+0x140/0x185 - ? rest_init+0xa4/0xa4 - kernel_init+0x5/0xfc - ret_from_fork+0x22/0x30 -Modules linked in: -CR2: 0000000000000000 ----[ end trace 0904a2a0169baf8a ]-- -RIP: 0010:__domain_mapping+0xa1/0x3a0 - -Commit 416fa531c816 (iommu/vt-d: Preset Access/Dirty bits for IOVA over -FL, 2021-01-15) seemed to have introduced this problem by changing the -conditional: - -if (!sg) { ... - sg_res = nr_pages; - pteval = ((phys_addr_t)phys_pfn << VTD_PAGE_SHIFT) | attr; -} - -to an unconditional: - -pteval = ((phys_addr_t)phys_pfn << VTD_PAGE_SHIFT) | attr; - -Whilst we do not know exactly what went wrong, this patch was proposed -in [1] and then reworked into fixing the original commit in [2]. - -See also [3] for our initial report. - -[1] https://bugzilla.kernel.org/show_bug.cgi?id=213077#c7 -[2] https://lore.kernel.org/lkml/20210517034913.3432-1-baolu.lu@linux.intel.com/ -[3] https://lore.kernel.org/lkml/20210515132855.4bn7ve2ozvdhpnj4@nabokov.fritz.box/ ---- - drivers/iommu/intel/iommu.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c -index db9bf5ac0722..eececdeaa40f 100644 ---- a/drivers/iommu/intel/iommu.c -+++ b/drivers/iommu/intel/iommu.c -@@ -2373,7 +2373,10 @@ static int __domain_mapping(struct dmar_domain *domain, unsigned long iov_pfn, - } - } - -- pteval = ((phys_addr_t)phys_pfn << VTD_PAGE_SHIFT) | attr; -+ if (!sg) { -+ sg_res = nr_pages; -+ pteval = ((phys_addr_t)phys_pfn << VTD_PAGE_SHIFT) | attr; -+ } - - while (nr_pages > 0) { - uint64_t tmp; --- -2.31.1 - -- cgit v1.2.3-2-gb3c3