notify_page_fault does a preempt_disable/preempt_enable for each
fault generated by a kernel access to user space. If kprobes
is not active that is unnecessary since the interrupts are not
reenabled yet. To play safe repeat the kprobe_running check after
preempt_disable().
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
 extern int sysctl_userprocess_debug;
 #endif
 
-#ifdef CONFIG_KPROBES
-static inline int notify_page_fault(struct pt_regs *regs, long err)
+static inline int notify_page_fault(struct pt_regs *regs)
 {
        int ret = 0;
 
+#ifdef CONFIG_KPROBES
        /* kprobe_running() needs smp_processor_id() */
        if (!user_mode(regs)) {
                preempt_disable();
                        ret = 1;
                preempt_enable();
        }
-
+#endif
        return ret;
 }
-#else
-static inline int notify_page_fault(struct pt_regs *regs, long err)
-{
-       return 0;
-}
-#endif
 
 
 /*
        int si_code;
        int fault;
 
-       if (notify_page_fault(regs, error_code))
+       if (notify_page_fault(regs))
                return;
 
        tsk = current;