debug_fault_info[nr].name       = name;
 }
 
-asmlinkage int __exception do_debug_exception(unsigned long addr_if_watchpoint,
-                                             unsigned int esr,
-                                             struct pt_regs *regs)
+asmlinkage void __exception do_debug_exception(unsigned long addr_if_watchpoint,
+                                              unsigned int esr,
+                                              struct pt_regs *regs)
 {
        const struct fault_info *inf = esr_to_debug_fault_info(esr);
        unsigned long pc = instruction_pointer(regs);
-       int rv;
 
        /*
         * Tell lockdep we disabled irqs in entry.S. Do nothing if they were
        if (user_mode(regs) && !is_ttbr0_addr(pc))
                arm64_apply_bp_hardening();
 
-       if (!inf->fn(addr_if_watchpoint, esr, regs)) {
-               rv = 1;
-       } else {
+       if (inf->fn(addr_if_watchpoint, esr, regs)) {
                arm64_notify_die(inf->name, regs,
                                 inf->sig, inf->code, (void __user *)pc, esr);
-               rv = 0;
        }
 
        if (interrupts_enabled(regs))
                trace_hardirqs_on();
-
-       return rv;
 }
 NOKPROBE_SYMBOL(do_debug_exception);