Re: [PATCH 0/3] powerpc/mm: page fault handler cleaning
From: Laurent Dufour
Date: Thu Mar 02 2017 - 07:31:50 EST
Kindly ping...
On 14/02/2017 17:45, Laurent Dufour wrote:
> This series attempts to clean the page fault handler in the way it has
> been done previously for the x86 architecture [1].
>
> The goal is to manage the mmap_sem earlier and only in
> do_page_fault(). This done by handling the retry case earlier, before
> handling the error case. This way the semaphore can be released
> earlier and the error path processed without holding it.
>
> The first patch is just moving a unlock to the caller of the service,
> which as no functional impact.
>
> The second patch is handling the retry case earlier in
> do_page_fault(). This is where most the change are done, but I was
> conservative here, not changing the use of mm_fault_error() in the
> case of the second retry. It may be smarter to handle that case
> separately but this may create duplicate code.
>
> The last patch is moving up semaphore releasing from mm_fault_error()
> to do_page_fault().
>
> [1] see commits from Linus Torvalds
> 26178ec11ef3 ("x86: mm: consolidate VM_FAULT_RETRY handling")
> 7fb08eca4527 ("x86: mm: move mmap_sem unlock from mm_fault_error() to
> caller")
>
> Laurent Dufour (3):
> powerpc/mm: move mmap_sem unlock up from do_sigbus
> powerpc/mm: handle VM_FAULT_RETRY earlier
> powerpc/mm: move mmap_sem unlocking in do_page_fault()
>
> arch/powerpc/mm/fault.c | 82 ++++++++++++++++++++++++-------------------------
> 1 file changed, 40 insertions(+), 42 deletions(-)
>