From: Sasha Levin Date: Sat, 5 Jul 2025 13:48:49 +0000 (-0400) Subject: Drop loongarch-set-hugetlb-mmap-base-address-aligned-with.patch X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fheads%2Fmaster;p=thirdparty%2Fkernel%2Fstable-queue.git Drop loongarch-set-hugetlb-mmap-base-address-aligned-with.patch Signed-off-by: Sasha Levin --- diff --git a/queue-6.12/loongarch-set-hugetlb-mmap-base-address-aligned-with.patch b/queue-6.12/loongarch-set-hugetlb-mmap-base-address-aligned-with.patch deleted file mode 100644 index d96a803c3c..0000000000 --- a/queue-6.12/loongarch-set-hugetlb-mmap-base-address-aligned-with.patch +++ /dev/null @@ -1,88 +0,0 @@ -From ca3c89c940d1d5db28dc90f598ba763ce04399a1 Mon Sep 17 00:00:00 2001 -From: Sasha Levin -Date: Sat, 8 Mar 2025 13:51:32 +0800 -Subject: LoongArch: Set hugetlb mmap base address aligned with pmd size - -From: Bibo Mao - -[ Upstream commit 3109d5ff484b7bc7b955f166974c6776d91f247b ] - -With ltp test case "testcases/bin/hugefork02", there is a dmesg error -report message such as: - - kernel BUG at mm/hugetlb.c:5550! - Oops - BUG[#1]: - CPU: 0 UID: 0 PID: 1517 Comm: hugefork02 Not tainted 6.14.0-rc2+ #241 - Hardware name: QEMU QEMU Virtual Machine, BIOS unknown 2/2/2022 - pc 90000000004eaf1c ra 9000000000485538 tp 900000010edbc000 sp 900000010edbf940 - a0 900000010edbfb00 a1 9000000108d20280 a2 00007fffe9474000 a3 00007ffff3474000 - a4 0000000000000000 a5 0000000000000003 a6 00000000003cadd3 a7 0000000000000000 - t0 0000000001ffffff t1 0000000001474000 t2 900000010ecd7900 t3 00007fffe9474000 - t4 00007fffe9474000 t5 0000000000000040 t6 900000010edbfb00 t7 0000000000000001 - t8 0000000000000005 u0 90000000004849d0 s9 900000010edbfa00 s0 9000000108d20280 - s1 00007fffe9474000 s2 0000000002000000 s3 9000000108d20280 s4 9000000002b38b10 - s5 900000010edbfb00 s6 00007ffff3474000 s7 0000000000000406 s8 900000010edbfa08 - ra: 9000000000485538 unmap_vmas+0x130/0x218 - ERA: 90000000004eaf1c __unmap_hugepage_range+0x6f4/0x7d0 - PRMD: 00000004 (PPLV0 +PIE -PWE) - EUEN: 00000007 (+FPE +SXE +ASXE -BTE) - ECFG: 00071c1d (LIE=0,2-4,10-12 VS=7) - ESTAT: 000c0000 [BRK] (IS= ECode=12 EsubCode=0) - PRID: 0014c010 (Loongson-64bit, Loongson-3A5000) - Process hugefork02 (pid: 1517, threadinfo=00000000a670eaf4, task=000000007a95fc64) - Call Trace: - [<90000000004eaf1c>] __unmap_hugepage_range+0x6f4/0x7d0 - [<9000000000485534>] unmap_vmas+0x12c/0x218 - [<9000000000494068>] exit_mmap+0xe0/0x308 - [<900000000025fdc4>] mmput+0x74/0x180 - [<900000000026a284>] do_exit+0x294/0x898 - [<900000000026aa30>] do_group_exit+0x30/0x98 - [<900000000027bed4>] get_signal+0x83c/0x868 - [<90000000002457b4>] arch_do_signal_or_restart+0x54/0xfa0 - [<90000000015795e8>] irqentry_exit_to_user_mode+0xb8/0x138 - [<90000000002572d0>] tlb_do_page_fault_1+0x114/0x1b4 - -The problem is that base address allocated from hugetlbfs is not aligned -with pmd size. Here add a checking for hugetlbfs and align base address -with pmd size. After this patch the test case "testcases/bin/hugefork02" -passes to run. - -This is similar to the commit 7f24cbc9c4d42db8a3c8484d1 ("mm/mmap: teach -generic_get_unmapped_area{_topdown} to handle hugetlb mappings"). - -Cc: stable@vger.kernel.org # 6.13+ -Signed-off-by: Bibo Mao -Signed-off-by: Huacai Chen -Signed-off-by: Sasha Levin ---- - arch/loongarch/mm/mmap.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/arch/loongarch/mm/mmap.c b/arch/loongarch/mm/mmap.c -index 914e82ff3f656..1df9e99582cc6 100644 ---- a/arch/loongarch/mm/mmap.c -+++ b/arch/loongarch/mm/mmap.c -@@ -3,6 +3,7 @@ - * Copyright (C) 2020-2022 Loongson Technology Corporation Limited - */ - #include -+#include - #include - #include - #include -@@ -63,8 +64,11 @@ static unsigned long arch_get_unmapped_area_common(struct file *filp, - } - - info.length = len; -- info.align_mask = do_color_align ? (PAGE_MASK & SHM_ALIGN_MASK) : 0; - info.align_offset = pgoff << PAGE_SHIFT; -+ if (filp && is_file_hugepages(filp)) -+ info.align_mask = huge_page_mask_align(filp); -+ else -+ info.align_mask = do_color_align ? (PAGE_MASK & SHM_ALIGN_MASK) : 0; - - if (dir == DOWN) { - info.flags = VM_UNMAPPED_AREA_TOPDOWN; --- -2.39.5 - diff --git a/queue-6.12/series b/queue-6.12/series index 593d238a67..8e9395ebe6 100644 --- a/queue-6.12/series +++ b/queue-6.12/series @@ -201,7 +201,6 @@ btrfs-skip-inodes-without-loaded-extent-maps-when-sh.patch btrfs-make-the-extent-map-shrinker-run-asynchronousl.patch btrfs-do-regular-iput-instead-of-delayed-iput-during.patch riscv-atomic-do-proper-sign-extension-also-for-unsig.patch -loongarch-set-hugetlb-mmap-base-address-aligned-with.patch arm64-dts-rockchip-add-avdd-hdmi-supplies-to-rockpro.patch alsa-hda-realtek-bass-speaker-fixup-for-asus-um5606k.patch drm-amdkfd-remove-gfx-12-trap-handler-page-size-cap.patch