]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
fix up queue-6.3/arm64-mm-convert-to-using-lock_mm_and_find_vma.patch
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 30 Jun 2023 05:49:09 +0000 (07:49 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 30 Jun 2023 05:49:09 +0000 (07:49 +0200)
queue-6.3/arm64-mm-convert-to-using-lock_mm_and_find_vma.patch

index 4d947455b6517305b70e3c148784ece184566c8a..cfcc84beefc611925dce0fef4014f608f49cf32c 100644 (file)
@@ -17,8 +17,8 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 ---
  arch/arm64/Kconfig    |    1 +
- arch/arm64/mm/fault.c |   4+++++++-------------------------------------
- 2 files changed, 8 insertions(+), 37 deletions(-)
+ arch/arm64/mm/fault.c |   46 +++++++++-------------------------------------
+ 2 files changed, 10 insertions(+), 37 deletions(-)
 
 --- a/arch/arm64/Kconfig
 +++ b/arch/arm64/Kconfig
@@ -62,7 +62,15 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
         * Check that the permissions on the VMA allow for the fault which
         * occurred.
         */
-@@ -585,31 +572,14 @@ static int __kprobes do_page_fault(unsig
+@@ -535,6 +522,7 @@ static int __kprobes do_page_fault(unsig
+       unsigned long vm_flags;
+       unsigned int mm_flags = FAULT_FLAG_DEFAULT;
+       unsigned long addr = untagged_addr(far);
++      struct vm_area_struct *vma;
+       if (kprobe_page_fault(regs, esr))
+               return 0;
+@@ -585,31 +573,14 @@ static int __kprobes do_page_fault(unsig
  
        perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS, 1, regs, addr);
  
@@ -99,3 +107,11 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  
        /* Quick path to respond to signals */
        if (fault_signal_pending(fault, regs)) {
+@@ -628,6 +599,7 @@ retry:
+       }
+       mmap_read_unlock(mm);
++done:
+       /*
+        * Handle the "normal" (no error) case first.
+        */