Add support for the new speculative page faults software events.

Signed-off-by: Laurent Dufour <lduf...@linux.vnet.ibm.com>
---
 arch/x86/mm/fault.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
index 46fb9c2a832d..17985f11b9da 100644
--- a/arch/x86/mm/fault.c
+++ b/arch/x86/mm/fault.c
@@ -1374,8 +1374,12 @@ __do_page_fault(struct pt_regs *regs, unsigned long 
error_code,
                 * requires the vma pointer to be set. So in that case,
                 * we fall through the normal path.
                 */
-               if (!(fault & VM_FAULT_RETRY || fault & VM_FAULT_ERROR))
+               if (!(fault & VM_FAULT_RETRY || fault & VM_FAULT_ERROR)) {
+                       perf_sw_event(PERF_COUNT_SW_SPF_DONE, 1,
+                                     regs, address);
                        goto done;
+               }
+               perf_sw_event(PERF_COUNT_SW_SPF_FAILED, 1, regs, address);
        }
 
        /*
-- 
2.7.4

Reply via email to