diff --git a/patches/kernel/0003-pci-Enable-overrides-for-missing-ACS-capabilities-4..patch b/patches/kernel/0003-pci-Enable-overrides-for-missing-ACS-capabilities-4..patch index a5c1097..4040f6f 100644 --- a/patches/kernel/0003-pci-Enable-overrides-for-missing-ACS-capabilities-4..patch +++ b/patches/kernel/0003-pci-Enable-overrides-for-missing-ACS-capabilities-4..patch @@ -55,10 +55,10 @@ Signed-off-by: Thomas Lamprecht 2 files changed, 111 insertions(+) diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt -index ff56a4fe3f95..100342e59f45 100644 +index 7ab595b21b24..87caff8d4561 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt -@@ -4155,6 +4155,15 @@ +@@ -4172,6 +4172,15 @@ Also, it enforces the PCI Local Bus spec rule that those bits should be 0 in system reset events (useful for kexec/kdump cases). diff --git a/patches/kernel/0006-do-not-generate-split-BTF-type-info-per-default.patch b/patches/kernel/0006-do-not-generate-split-BTF-type-info-per-default.patch index 5f60762..48fbf70 100644 --- a/patches/kernel/0006-do-not-generate-split-BTF-type-info-per-default.patch +++ b/patches/kernel/0006-do-not-generate-split-BTF-type-info-per-default.patch @@ -14,7 +14,7 @@ Signed-off-by: Thomas Lamprecht 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug -index 3638b3424be5..43172078db03 100644 +index 12dfe6691dd5..930bbd7ddffd 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug @@ -365,7 +365,7 @@ config PAHOLE_HAS_BTF_TAG diff --git a/patches/kernel/0023-Revert-fortify-Do-not-cast-to-unsigned-char.patch b/patches/kernel/0018-Revert-fortify-Do-not-cast-to-unsigned-char.patch similarity index 100% rename from patches/kernel/0023-Revert-fortify-Do-not-cast-to-unsigned-char.patch rename to patches/kernel/0018-Revert-fortify-Do-not-cast-to-unsigned-char.patch diff --git a/patches/kernel/0018-drm-mgag200-Fix-PLL-setup-for-G200_SE_A-rev-4.patch b/patches/kernel/0018-drm-mgag200-Fix-PLL-setup-for-G200_SE_A-rev-4.patch deleted file mode 100644 index 2dfcacb..0000000 --- a/patches/kernel/0018-drm-mgag200-Fix-PLL-setup-for-G200_SE_A-rev-4.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Jocelyn Falempe -Date: Thu, 13 Oct 2022 15:28:10 +0200 -Subject: [PATCH] drm/mgag200: Fix PLL setup for G200_SE_A rev >=4 - -commit b389286d0234e1edbaf62ed8bc0892a568c33662 upstream. - -For G200_SE_A, PLL M setting is wrong, which leads to blank screen, -or "signal out of range" on VGA display. -previous code had "m |= 0x80" which was changed to -m |= ((pixpllcn & BIT(8)) >> 1); - -Tested on G200_SE_A rev 42 - -This line of code was moved to another file with -commit 877507bb954e ("drm/mgag200: Provide per-device callbacks for -PIXPLLC") but can be easily backported before this commit. - -v2: * put BIT(7) First to respect MSB-to-LSB (Thomas) - * Add a comment to explain that this bit must be set (Thomas) - -Fixes: 2dd040946ecf ("drm/mgag200: Store values (not bits) in struct mgag200_pll_values") -Cc: stable@vger.kernel.org -Signed-off-by: Jocelyn Falempe -Reviewed-by: Thomas Zimmermann -Link: https://patchwork.freedesktop.org/patch/msgid/20221013132810.521945-1-jfalempe@redhat.com -Signed-off-by: Greg Kroah-Hartman -(cherry picked from commit 3650c063f22d03795026bd6f3d473e5bbdabb442) -Signed-off-by: Thomas Lamprecht ---- - drivers/gpu/drm/mgag200/mgag200_g200se.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/drivers/gpu/drm/mgag200/mgag200_g200se.c b/drivers/gpu/drm/mgag200/mgag200_g200se.c -index be389ed91cbd..bd6e573c9a1a 100644 ---- a/drivers/gpu/drm/mgag200/mgag200_g200se.c -+++ b/drivers/gpu/drm/mgag200/mgag200_g200se.c -@@ -284,7 +284,8 @@ static void mgag200_g200se_04_pixpllc_atomic_update(struct drm_crtc *crtc, - pixpllcp = pixpllc->p - 1; - pixpllcs = pixpllc->s; - -- xpixpllcm = pixpllcm | ((pixpllcn & BIT(8)) >> 1); -+ // For G200SE A, BIT(7) should be set unconditionally. -+ xpixpllcm = BIT(7) | pixpllcm; - xpixpllcn = pixpllcn; - xpixpllcp = (pixpllcs << 3) | pixpllcp; - diff --git a/patches/kernel/0019-mm-mremap-fix-mremap-expanding-vma-with-addr-inside-.patch b/patches/kernel/0019-mm-mremap-fix-mremap-expanding-vma-with-addr-inside-.patch deleted file mode 100644 index f7fb8c0..0000000 --- a/patches/kernel/0019-mm-mremap-fix-mremap-expanding-vma-with-addr-inside-.patch +++ /dev/null @@ -1,59 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Vlastimil Babka -Date: Fri, 16 Dec 2022 17:32:27 +0100 -Subject: [PATCH] mm, mremap: fix mremap() expanding vma with addr inside vma -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -commit 6f12be792fde994ed934168f93c2a0d2a0cf0bc5 upstream. - -Since 6.1 we have noticed random rpm install failures that were tracked to -mremap() returning -ENOMEM and to commit ca3d76b0aa80 ("mm: add merging -after mremap resize"). - -The problem occurs when mremap() expands a VMA in place, but using an -starting address that's not vma->vm_start, but somewhere in the middle. -The extension_pgoff calculation introduced by the commit is wrong in that -case, so vma_merge() fails due to pgoffs not being compatible. Fix the -calculation. - -By the way it seems that the situations, where rpm now expands a vma from -the middle, were made possible also due to that commit, thanks to the -improved vma merging. Yet it should work just fine, except for the buggy -calculation. - -Link: https://lkml.kernel.org/r/20221216163227.24648-1-vbabka@suse.cz -Reported-by: Jiri Slaby - Link: https://bugzilla.suse.com/show_bug.cgi?id=1206359 -Fixes: ca3d76b0aa80 ("mm: add merging after mremap resize") -Signed-off-by: Vlastimil Babka -Cc: Jakub Matěna -Cc: "Kirill A . Shutemov" -Cc: Liam Howlett -Cc: Matthew Wilcox -Cc: Mel Gorman -Cc: Michal Hocko -Cc: -Signed-off-by: Andrew Morton -Signed-off-by: Greg Kroah-Hartman -(cherry picked from commit 4d528dab403ba45db24769f5e5a9514ab0890351) -Signed-off-by: Thomas Lamprecht ---- - mm/mremap.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/mm/mremap.c b/mm/mremap.c -index e465ffe279bb..fe587c5d6591 100644 ---- a/mm/mremap.c -+++ b/mm/mremap.c -@@ -1016,7 +1016,8 @@ SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len, - long pages = (new_len - old_len) >> PAGE_SHIFT; - unsigned long extension_start = addr + old_len; - unsigned long extension_end = addr + new_len; -- pgoff_t extension_pgoff = vma->vm_pgoff + (old_len >> PAGE_SHIFT); -+ pgoff_t extension_pgoff = vma->vm_pgoff + -+ ((extension_start - vma->vm_start) >> PAGE_SHIFT); - - if (vma->vm_flags & VM_ACCOUNT) { - if (security_vm_enough_memory_mm(mm, pages)) { diff --git a/patches/kernel/0020-mm-mempolicy-fix-memory-leak-in-set_mempolicy_home_n.patch b/patches/kernel/0020-mm-mempolicy-fix-memory-leak-in-set_mempolicy_home_n.patch deleted file mode 100644 index e37472b..0000000 --- a/patches/kernel/0020-mm-mempolicy-fix-memory-leak-in-set_mempolicy_home_n.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Mathieu Desnoyers -Date: Thu, 15 Dec 2022 14:46:21 -0500 -Subject: [PATCH] mm/mempolicy: fix memory leak in set_mempolicy_home_node - system call - -commit 38ce7c9bdfc228c14d7621ba36d3eebedd9d4f76 upstream. - -When encountering any vma in the range with policy other than MPOL_BIND or -MPOL_PREFERRED_MANY, an error is returned without issuing a mpol_put on -the policy just allocated with mpol_dup(). - -This allows arbitrary users to leak kernel memory. - -Link: https://lkml.kernel.org/r/20221215194621.202816-1-mathieu.desnoyers@efficios.com -Fixes: c6018b4b2549 ("mm/mempolicy: add set_mempolicy_home_node syscall") -Signed-off-by: Mathieu Desnoyers -Reviewed-by: Randy Dunlap -Reviewed-by: "Huang, Ying" -Reviewed-by: Aneesh Kumar K.V -Acked-by: Michal Hocko -Cc: Aneesh Kumar K.V -Cc: Dave Hansen -Cc: Feng Tang -Cc: Michal Hocko -Cc: Andrea Arcangeli -Cc: Mel Gorman -Cc: Mike Kravetz -Cc: Randy Dunlap -Cc: Vlastimil Babka -Cc: Andi Kleen -Cc: Dan Williams -Cc: Huang Ying -Cc: [5.17+] -Signed-off-by: Andrew Morton -Signed-off-by: Greg Kroah-Hartman -(cherry picked from commit 0ce4cc6d269ddc448a825955b495f662f5d9e153) -Signed-off-by: Thomas Lamprecht ---- - mm/mempolicy.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/mm/mempolicy.c b/mm/mempolicy.c -index 61aa9aedb728..02c8a712282f 100644 ---- a/mm/mempolicy.c -+++ b/mm/mempolicy.c -@@ -1540,6 +1540,7 @@ SYSCALL_DEFINE4(set_mempolicy_home_node, unsigned long, start, unsigned long, le - * the home node for vmas we already updated before. - */ - if (new->mode != MPOL_BIND && new->mode != MPOL_PREFERRED_MANY) { -+ mpol_put(new); - err = -EOPNOTSUPP; - break; - } diff --git a/patches/kernel/0021-ACPI-x86-s2idle-Force-AMD-GUID-_REV-2-on-HP-Eliteboo.patch b/patches/kernel/0021-ACPI-x86-s2idle-Force-AMD-GUID-_REV-2-on-HP-Eliteboo.patch deleted file mode 100644 index 6c80511..0000000 --- a/patches/kernel/0021-ACPI-x86-s2idle-Force-AMD-GUID-_REV-2-on-HP-Eliteboo.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Mario Limonciello -Date: Thu, 15 Dec 2022 13:16:15 -0600 -Subject: [PATCH] ACPI: x86: s2idle: Force AMD GUID/_REV 2 on HP Elitebook 865 - -commit 3ea45390e9c0d35805ef8357ace55594fd4233d0 upstream. - -HP Elitebook 865 supports both the AMD GUID w/ _REV 2 and Microsoft -GUID with _REV 0. Both have very similar code but the AMD GUID -has a special workaround that is specific to a problem with -spurious wakeups on systems with Qualcomm WLAN. - -This is believed to be a bug in the Qualcomm WLAN F/W (it doesn't -affect any other WLAN H/W). If this WLAN firmware is fixed this -quirk can be dropped. - -Cc: stable@vger.kernel.org # 6.1 -Signed-off-by: Mario Limonciello -Signed-off-by: Rafael J. Wysocki -Signed-off-by: Greg Kroah-Hartman -(cherry picked from commit 577821f756cf3dfd308906d38610db178268841a) -Signed-off-by: Thomas Lamprecht ---- - drivers/acpi/x86/s2idle.c | 20 ++++++++++++++++++++ - 1 file changed, 20 insertions(+) - -diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c -index 5350c73564b6..422415cb14f4 100644 ---- a/drivers/acpi/x86/s2idle.c -+++ b/drivers/acpi/x86/s2idle.c -@@ -401,6 +401,13 @@ static const struct acpi_device_id amd_hid_ids[] = { - {} - }; - -+static int lps0_prefer_amd(const struct dmi_system_id *id) -+{ -+ pr_debug("Using AMD GUID w/ _REV 2.\n"); -+ rev_id = 2; -+ return 0; -+} -+ - static int lps0_prefer_microsoft(const struct dmi_system_id *id) - { - pr_debug("Preferring Microsoft GUID.\n"); -@@ -462,6 +469,19 @@ static const struct dmi_system_id s2idle_dmi_table[] __initconst = { - DMI_MATCH(DMI_PRODUCT_NAME, "ROG Flow X16 GV601"), - }, - }, -+ { -+ /* -+ * AMD Rembrandt based HP EliteBook 835/845/865 G9 -+ * Contains specialized AML in AMD/_REV 2 path to avoid -+ * triggering a bug in Qualcomm WLAN firmware. This may be -+ * removed in the future if that firmware is fixed. -+ */ -+ .callback = lps0_prefer_amd, -+ .matches = { -+ DMI_MATCH(DMI_BOARD_VENDOR, "HP"), -+ DMI_MATCH(DMI_BOARD_NAME, "8990"), -+ }, -+ }, - {} - }; - diff --git a/patches/kernel/0022-ACPI-x86-s2idle-Stop-using-AMD-specific-codepath-for.patch b/patches/kernel/0022-ACPI-x86-s2idle-Stop-using-AMD-specific-codepath-for.patch deleted file mode 100644 index e127075..0000000 --- a/patches/kernel/0022-ACPI-x86-s2idle-Stop-using-AMD-specific-codepath-for.patch +++ /dev/null @@ -1,190 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Mario Limonciello -Date: Thu, 15 Dec 2022 13:16:16 -0600 -Subject: [PATCH] ACPI: x86: s2idle: Stop using AMD specific codepath for - Rembrandt+ - -commit e555c85792bd5f9828a2fd2ca9761f70efb1c77b upstream. - -After we introduced a module parameter and quirk infrastructure for -picking the Microsoft GUID over the SOC vendor GUID we discovered -that lots and lots of systems are getting this wrong. - -The table continues to grow, and is becoming unwieldy. - -We don't really have any benefit to forcing vendors to populate the -AMD GUID. This is just extra work, and more and more vendors seem -to mess it up. As the Microsoft GUID is used by Windows as well, -it's very likely that it won't be messed up like this. - -So drop all the quirks forcing it and the Rembrandt behavior. This -means that Cezanne or later effectively only run the Microsoft GUID -codepath with the exception of HP Elitebook 8*5 G9. - -Fixes: fd894f05cf30 ("ACPI: x86: s2idle: If a new AMD _HID is missing assume Rembrandt") -Cc: stable@vger.kernel.org # 6.1 -Reported-by: Benjamin Cheng -Reported-by: bilkow@tutanota.com -Reported-by: Paul -Link: https://gitlab.freedesktop.org/drm/amd/-/issues/2292 -Link: https://bugzilla.kernel.org/show_bug.cgi?id=216768 -Signed-off-by: Mario Limonciello -Reviewed-by: Philipp Zabel -Tested-by: Philipp Zabel -Signed-off-by: Rafael J. Wysocki -Signed-off-by: Greg Kroah-Hartman -(cherry picked from commit e6d180a35bc0efd614b0df45f92a08550143555d) -Signed-off-by: Thomas Lamprecht ---- - drivers/acpi/x86/s2idle.c | 87 ++------------------------------------- - 1 file changed, 3 insertions(+), 84 deletions(-) - -diff --git a/drivers/acpi/x86/s2idle.c b/drivers/acpi/x86/s2idle.c -index 422415cb14f4..c7afce465a07 100644 ---- a/drivers/acpi/x86/s2idle.c -+++ b/drivers/acpi/x86/s2idle.c -@@ -28,10 +28,6 @@ static bool sleep_no_lps0 __read_mostly; - module_param(sleep_no_lps0, bool, 0644); - MODULE_PARM_DESC(sleep_no_lps0, "Do not use the special LPS0 device interface"); - --static bool prefer_microsoft_dsm_guid __read_mostly; --module_param(prefer_microsoft_dsm_guid, bool, 0644); --MODULE_PARM_DESC(prefer_microsoft_dsm_guid, "Prefer using Microsoft GUID in LPS0 device _DSM evaluation"); -- - static const struct acpi_device_id lps0_device_ids[] = { - {"PNP0D80", }, - {"", }, -@@ -369,27 +365,15 @@ static int validate_dsm(acpi_handle handle, const char *uuid, int rev, guid_t *d - } - - struct amd_lps0_hid_device_data { -- const unsigned int rev_id; - const bool check_off_by_one; -- const bool prefer_amd_guid; - }; - - static const struct amd_lps0_hid_device_data amd_picasso = { -- .rev_id = 0, - .check_off_by_one = true, -- .prefer_amd_guid = false, - }; - - static const struct amd_lps0_hid_device_data amd_cezanne = { -- .rev_id = 0, - .check_off_by_one = false, -- .prefer_amd_guid = false, --}; -- --static const struct amd_lps0_hid_device_data amd_rembrandt = { -- .rev_id = 2, -- .check_off_by_one = false, -- .prefer_amd_guid = true, - }; - - static const struct acpi_device_id amd_hid_ids[] = { -@@ -397,7 +381,6 @@ static const struct acpi_device_id amd_hid_ids[] = { - {"AMD0005", (kernel_ulong_t)&amd_picasso, }, - {"AMDI0005", (kernel_ulong_t)&amd_picasso, }, - {"AMDI0006", (kernel_ulong_t)&amd_cezanne, }, -- {"AMDI0007", (kernel_ulong_t)&amd_rembrandt, }, - {} - }; - -@@ -407,68 +390,7 @@ static int lps0_prefer_amd(const struct dmi_system_id *id) - rev_id = 2; - return 0; - } -- --static int lps0_prefer_microsoft(const struct dmi_system_id *id) --{ -- pr_debug("Preferring Microsoft GUID.\n"); -- prefer_microsoft_dsm_guid = true; -- return 0; --} -- - static const struct dmi_system_id s2idle_dmi_table[] __initconst = { -- { -- /* -- * ASUS TUF Gaming A17 FA707RE -- * https://bugzilla.kernel.org/show_bug.cgi?id=216101 -- */ -- .callback = lps0_prefer_microsoft, -- .matches = { -- DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), -- DMI_MATCH(DMI_PRODUCT_NAME, "ASUS TUF Gaming A17"), -- }, -- }, -- { -- /* ASUS ROG Zephyrus G14 (2022) */ -- .callback = lps0_prefer_microsoft, -- .matches = { -- DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), -- DMI_MATCH(DMI_PRODUCT_NAME, "ROG Zephyrus G14 GA402"), -- }, -- }, -- { -- /* -- * Lenovo Yoga Slim 7 Pro X 14ARH7 -- * https://bugzilla.kernel.org/show_bug.cgi?id=216473 : 82V2 -- * https://bugzilla.kernel.org/show_bug.cgi?id=216438 : 82TL -- */ -- .callback = lps0_prefer_microsoft, -- .matches = { -- DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"), -- DMI_MATCH(DMI_PRODUCT_NAME, "82"), -- }, -- }, -- { -- /* -- * ASUSTeK COMPUTER INC. ROG Flow X13 GV301RE_GV301RE -- * https://gitlab.freedesktop.org/drm/amd/-/issues/2148 -- */ -- .callback = lps0_prefer_microsoft, -- .matches = { -- DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), -- DMI_MATCH(DMI_PRODUCT_NAME, "ROG Flow X13 GV301"), -- }, -- }, -- { -- /* -- * ASUSTeK COMPUTER INC. ROG Flow X16 GV601RW_GV601RW -- * https://gitlab.freedesktop.org/drm/amd/-/issues/2148 -- */ -- .callback = lps0_prefer_microsoft, -- .matches = { -- DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), -- DMI_MATCH(DMI_PRODUCT_NAME, "ROG Flow X16 GV601"), -- }, -- }, - { - /* - * AMD Rembrandt based HP EliteBook 835/845/865 G9 -@@ -504,16 +426,14 @@ static int lps0_device_attach(struct acpi_device *adev, - if (dev_id->id[0]) - data = (const struct amd_lps0_hid_device_data *) dev_id->driver_data; - else -- data = &amd_rembrandt; -- rev_id = data->rev_id; -+ data = &amd_cezanne; - lps0_dsm_func_mask = validate_dsm(adev->handle, - ACPI_LPS0_DSM_UUID_AMD, rev_id, &lps0_dsm_guid); - if (lps0_dsm_func_mask > 0x3 && data->check_off_by_one) { - lps0_dsm_func_mask = (lps0_dsm_func_mask << 1) | 0x1; - acpi_handle_debug(adev->handle, "_DSM UUID %s: Adjusted function mask: 0x%x\n", - ACPI_LPS0_DSM_UUID_AMD, lps0_dsm_func_mask); -- } else if (lps0_dsm_func_mask_microsoft > 0 && data->prefer_amd_guid && -- !prefer_microsoft_dsm_guid) { -+ } else if (lps0_dsm_func_mask_microsoft > 0 && rev_id) { - lps0_dsm_func_mask_microsoft = -EINVAL; - acpi_handle_debug(adev->handle, "_DSM Using AMD method\n"); - } -@@ -521,8 +441,7 @@ static int lps0_device_attach(struct acpi_device *adev, - rev_id = 1; - lps0_dsm_func_mask = validate_dsm(adev->handle, - ACPI_LPS0_DSM_UUID, rev_id, &lps0_dsm_guid); -- if (!prefer_microsoft_dsm_guid) -- lps0_dsm_func_mask_microsoft = -EINVAL; -+ lps0_dsm_func_mask_microsoft = -EINVAL; - } - - if (lps0_dsm_func_mask < 0 && lps0_dsm_func_mask_microsoft < 0)