Hi Peter, On Tue, Jun 16, 2020 at 6:16 AM Peter Xu <peterx@xxxxxxxxxx> wrote: > > Use the new mm_fault_accounting() helper for page fault accounting. > Also, move the accounting to be after release of mmap_sem. > > CC: Guo Ren <guoren@xxxxxxxxxx> > CC: linux-csky@xxxxxxxxxxxxxxx > Signed-off-by: Peter Xu <peterx@xxxxxxxxxx> > --- > arch/csky/mm/fault.c | 13 +------------ > 1 file changed, 1 insertion(+), 12 deletions(-) > > diff --git a/arch/csky/mm/fault.c b/arch/csky/mm/fault.c > index 4e6dc68f3258..8f8d34d27eca 100644 > --- a/arch/csky/mm/fault.c > +++ b/arch/csky/mm/fault.c > @@ -111,8 +111,6 @@ asmlinkage void do_page_fault(struct pt_regs *regs, unsigned long write, > return; > } > #endif > - > - perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS, 1, regs, address); > /* > * If we're in an interrupt or have no user > * context, we must not take the fault.. > @@ -160,17 +158,8 @@ asmlinkage void do_page_fault(struct pt_regs *regs, unsigned long write, > goto bad_area; > BUG(); > } > - if (fault & VM_FAULT_MAJOR) { > - tsk->maj_flt++; > - perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS_MAJ, 1, regs, > - address); > - } else { > - tsk->min_flt++; > - perf_sw_event(PERF_COUNT_SW_PAGE_FAULTS_MIN, 1, regs, > - address); > - } > - > up_read(&mm->mmap_sem); > + mm_fault_accounting(tsk, regs, address, fault & VM_FAULT_MAJOR); > return; > > /* > -- > 2.26.2 > I notice that you move it out of mm->mmap_sem's area, all archs should follow the rule ? Can you give me a clarification and put it into de commit log ? Thx -- Best Regards Guo Ren ML: https://lore.kernel.org/linux-csky/