@@ -49,13 +49,15 @@ static void mdscr_write(u32 mdscr)
4949 asm volatile ("msr mdscr_el1, %0" :: "r" (mdscr ));
5050 local_dbg_restore (flags );
5151}
52+ NOKPROBE_SYMBOL (mdscr_write );
5253
5354static u32 mdscr_read (void )
5455{
5556 u32 mdscr ;
5657 asm volatile ("mrs %0, mdscr_el1" : "=r" (mdscr ));
5758 return mdscr ;
5859}
60+ NOKPROBE_SYMBOL (mdscr_read );
5961
6062/*
6163 * Allow root to disable self-hosted debug from userspace.
@@ -104,6 +106,7 @@ void enable_debug_monitors(enum dbg_active_el el)
104106 mdscr_write (mdscr );
105107 }
106108}
109+ NOKPROBE_SYMBOL (enable_debug_monitors );
107110
108111void disable_debug_monitors (enum dbg_active_el el )
109112{
@@ -124,6 +127,7 @@ void disable_debug_monitors(enum dbg_active_el el)
124127 mdscr_write (mdscr );
125128 }
126129}
130+ NOKPROBE_SYMBOL (disable_debug_monitors );
127131
128132/*
129133 * OS lock clearing.
@@ -174,6 +178,7 @@ static void set_regs_spsr_ss(struct pt_regs *regs)
174178 spsr |= DBG_SPSR_SS ;
175179 regs -> pstate = spsr ;
176180}
181+ NOKPROBE_SYMBOL (set_regs_spsr_ss );
177182
178183static void clear_regs_spsr_ss (struct pt_regs * regs )
179184{
@@ -183,6 +188,7 @@ static void clear_regs_spsr_ss(struct pt_regs *regs)
183188 spsr &= ~DBG_SPSR_SS ;
184189 regs -> pstate = spsr ;
185190}
191+ NOKPROBE_SYMBOL (clear_regs_spsr_ss );
186192
187193/* EL1 Single Step Handler hooks */
188194static LIST_HEAD (step_hook );
@@ -226,6 +232,7 @@ static int call_step_hook(struct pt_regs *regs, unsigned int esr)
226232
227233 return retval ;
228234}
235+ NOKPROBE_SYMBOL (call_step_hook );
229236
230237static void send_user_sigtrap (int si_code )
231238{
@@ -284,6 +291,7 @@ static int single_step_handler(unsigned long addr, unsigned int esr,
284291
285292 return 0 ;
286293}
294+ NOKPROBE_SYMBOL (single_step_handler );
287295
288296/*
289297 * Breakpoint handler is re-entrant as another breakpoint can
@@ -321,6 +329,7 @@ static int call_break_hook(struct pt_regs *regs, unsigned int esr)
321329
322330 return fn ? fn (regs , esr ) : DBG_HOOK_ERROR ;
323331}
332+ NOKPROBE_SYMBOL (call_break_hook );
324333
325334static int brk_handler (unsigned long addr , unsigned int esr ,
326335 struct pt_regs * regs )
@@ -341,6 +350,7 @@ static int brk_handler(unsigned long addr, unsigned int esr,
341350
342351 return 0 ;
343352}
353+ NOKPROBE_SYMBOL (brk_handler );
344354
345355int aarch32_break_handler (struct pt_regs * regs )
346356{
@@ -377,6 +387,7 @@ int aarch32_break_handler(struct pt_regs *regs)
377387 send_user_sigtrap (TRAP_BRKPT );
378388 return 0 ;
379389}
390+ NOKPROBE_SYMBOL (aarch32_break_handler );
380391
381392static int __init debug_traps_init (void )
382393{
@@ -398,6 +409,7 @@ void user_rewind_single_step(struct task_struct *task)
398409 if (test_ti_thread_flag (task_thread_info (task ), TIF_SINGLESTEP ))
399410 set_regs_spsr_ss (task_pt_regs (task ));
400411}
412+ NOKPROBE_SYMBOL (user_rewind_single_step );
401413
402414void user_fastforward_single_step (struct task_struct * task )
403415{
@@ -413,28 +425,33 @@ void kernel_enable_single_step(struct pt_regs *regs)
413425 mdscr_write (mdscr_read () | DBG_MDSCR_SS );
414426 enable_debug_monitors (DBG_ACTIVE_EL1 );
415427}
428+ NOKPROBE_SYMBOL (kernel_enable_single_step );
416429
417430void kernel_disable_single_step (void )
418431{
419432 WARN_ON (!irqs_disabled ());
420433 mdscr_write (mdscr_read () & ~DBG_MDSCR_SS );
421434 disable_debug_monitors (DBG_ACTIVE_EL1 );
422435}
436+ NOKPROBE_SYMBOL (kernel_disable_single_step );
423437
424438int kernel_active_single_step (void )
425439{
426440 WARN_ON (!irqs_disabled ());
427441 return mdscr_read () & DBG_MDSCR_SS ;
428442}
443+ NOKPROBE_SYMBOL (kernel_active_single_step );
429444
430445/* ptrace API */
431446void user_enable_single_step (struct task_struct * task )
432447{
433448 set_ti_thread_flag (task_thread_info (task ), TIF_SINGLESTEP );
434449 set_regs_spsr_ss (task_pt_regs (task ));
435450}
451+ NOKPROBE_SYMBOL (user_enable_single_step );
436452
437453void user_disable_single_step (struct task_struct * task )
438454{
439455 clear_ti_thread_flag (task_thread_info (task ), TIF_SINGLESTEP );
440456}
457+ NOKPROBE_SYMBOL (user_disable_single_step );
0 commit comments