From ec329fc2d8d8102a79e40ccb196694889407b139 Mon Sep 17 00:00:00 2001 From: Heiko Carstens Date: Fri, 11 Sep 2009 10:29:06 +0200 Subject: [PATCH] --- yaml --- r: 157479 b: refs/heads/master c: bde69af2ab696eebfac9583ea1e8a46b571e317f h: refs/heads/master i: 157477: 6ac278c7693a4bcc20a9e63d5d9b249e63b953e1 157475: aa02a1c9a89a23d07675114a9a017e565a38174a 157471: 0494513f7c5e33b8e96e998df4b23cde06aa7c35 v: v3 --- [refs] | 2 +- trunk/arch/s390/mm/fault.c | 13 +++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index a39bc2c76de4..a642bcccca4d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5c0b912e755caaad555eb6feefdb1124462d8f37 +refs/heads/master: bde69af2ab696eebfac9583ea1e8a46b571e317f diff --git a/trunk/arch/s390/mm/fault.c b/trunk/arch/s390/mm/fault.c index e5e119fe03b2..1abbadd497e1 100644 --- a/trunk/arch/s390/mm/fault.c +++ b/trunk/arch/s390/mm/fault.c @@ -10,6 +10,7 @@ * Copyright (C) 1995 Linus Torvalds */ +#include #include #include #include @@ -305,7 +306,7 @@ do_exception(struct pt_regs *regs, unsigned long error_code, int write) * interrupts again and then search the VMAs */ local_irq_enable(); - + perf_swcounter_event(PERF_COUNT_SW_PAGE_FAULTS, 1, 0, regs, address); down_read(&mm->mmap_sem); si_code = SEGV_MAPERR; @@ -363,11 +364,15 @@ do_exception(struct pt_regs *regs, unsigned long error_code, int write) } BUG(); } - if (fault & VM_FAULT_MAJOR) + if (fault & VM_FAULT_MAJOR) { tsk->maj_flt++; - else + perf_swcounter_event(PERF_COUNT_SW_PAGE_FAULTS_MAJ, 1, 0, + regs, address); + } else { tsk->min_flt++; - + perf_swcounter_event(PERF_COUNT_SW_PAGE_FAULTS_MIN, 1, 0, + regs, address); + } up_read(&mm->mmap_sem); /* * The instruction that caused the program check will