From db74e8a7d05fef3673d7732e690ca89cde9d7603 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Fri, 30 Jun 2023 07:59:20 +0200 Subject: [PATCH] 6.3-stable patches added patches: sparc32-fix-lock_mm_and_find_vma-conversion.patch --- queue-6.3/series | 1 + ...-fix-lock_mm_and_find_vma-conversion.patch | 41 +++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 queue-6.3/sparc32-fix-lock_mm_and_find_vma-conversion.patch diff --git a/queue-6.3/series b/queue-6.3/series index 4f3dc89afd8..3cc93a97641 100644 --- a/queue-6.3/series +++ b/queue-6.3/series @@ -28,3 +28,4 @@ hid-hidraw-fix-data-race-on-device-refcount.patch hid-wacom-use-ktime_t-rather-than-int-when-dealing-with-timestamps.patch hid-logitech-hidpp-add-hidpp_quirk_delayed_init-for-the-t651.patch revert-thermal-drivers-mediatek-use-devm_of_iomap-to-avoid-resource-leak-in-mtk_thermal_probe.patch +sparc32-fix-lock_mm_and_find_vma-conversion.patch diff --git a/queue-6.3/sparc32-fix-lock_mm_and_find_vma-conversion.patch b/queue-6.3/sparc32-fix-lock_mm_and_find_vma-conversion.patch new file mode 100644 index 00000000000..1a00a82c7b6 --- /dev/null +++ b/queue-6.3/sparc32-fix-lock_mm_and_find_vma-conversion.patch @@ -0,0 +1,41 @@ +From 0b26eadbf200abf6c97c6d870286c73219cdac65 Mon Sep 17 00:00:00 2001 +From: Linus Torvalds +Date: Thu, 29 Jun 2023 20:41:24 -0700 +Subject: sparc32: fix lock_mm_and_find_vma() conversion + +From: Linus Torvalds + +commit 0b26eadbf200abf6c97c6d870286c73219cdac65 upstream. + +The sparc32 conversion to lock_mm_and_find_vma() in commit a050ba1e7422 +("mm/fault: convert remaining simple cases to lock_mm_and_find_vma()") +missed the fact that we didn't actually have a 'regs' pointer available +in the 'force_user_fault()' case. + +It's there in the regular page fault path ("do_sparc_fault()"), but not +the window underflow/overflow paths. + +Which is all fine - we can just pass in a NULL pointer. The register +state is only used to avoid deadlock with kernel faults, which is not +the case for any of these register window faults. + +Reported-by: Stephen Rothwell +Fixes: a050ba1e7422 ("mm/fault: convert remaining simple cases to lock_mm_and_find_vma()") +Signed-off-by: Linus Torvalds +Cc: Naresh Kamboju +Signed-off-by: Greg Kroah-Hartman +--- + arch/sparc/mm/fault_32.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/arch/sparc/mm/fault_32.c ++++ b/arch/sparc/mm/fault_32.c +@@ -312,7 +312,7 @@ static void force_user_fault(unsigned lo + + code = SEGV_MAPERR; + +- vma = lock_mm_and_find_vma(mm, address, regs); ++ vma = lock_mm_and_find_vma(mm, address, NULL); + if (!vma) + goto bad_area_nosemaphore; + code = SEGV_ACCERR; -- 2.47.3