return psw_addr;
 }
 
-#ifdef CONFIG_KPROBES
 static int pgm_pre_handler(struct kprobe *p, struct pt_regs *regs)
 {
        struct unwindme *u = unwindme;
                             (u->flags & UWM_SP) ? u->sp : 0);
        return 0;
 }
-#endif
 
 /* This function may or may not appear in the backtrace. */
 static noinline int unwindme_func4(struct unwindme *u)
                wait_event(u->task_wq, kthread_should_park());
                kthread_parkme();
                return 0;
-#ifdef CONFIG_KPROBES
        } else if (u->flags & UWM_PGM) {
                struct kprobe kp;
                int ret;
 
+               if (!IS_ENABLED(CONFIG_KPROBES))
+                       kunit_skip(current_test, "requires CONFIG_KPROBES");
+
                unwindme = u;
                memset(&kp, 0, sizeof(kp));
                kp.symbol_name = "do_report_trap";
                unregister_kprobe(&kp);
                unwindme = NULL;
                return u->ret;
-#endif
        } else {
                struct pt_regs regs;
 
                .name = "UWM_IRQ | UWM_CALLER | UWM_SP | UWM_REGS"},
        {.flags = UWM_IRQ | UWM_CALLER | UWM_SP | UWM_REGS | UWM_SWITCH_STACK,
                .name = "UWM_IRQ | UWM_CALLER | UWM_SP | UWM_REGS | UWM_SWITCH_STACK"},
-       #ifdef CONFIG_KPROBES
        {.flags = UWM_PGM, .name = "UWM_PGM"},
        {.flags = UWM_PGM | UWM_SP,
                .name = "UWM_PGM | UWM_SP"},
                .name = "UWM_PGM | UWM_REGS"},
        {.flags = UWM_PGM | UWM_SP | UWM_REGS,
                .name = "UWM_PGM | UWM_SP | UWM_REGS"},
-       #endif
 };
 
 /*