44 lines
		
	
	
	
		
			972 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
	
		
			972 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  *  linux/arch/cris/kernel/ptrace.c
 | |
|  *
 | |
|  * Parts taken from the m68k port.
 | |
|  *
 | |
|  * Copyright (c) 2000, 2001, 2002 Axis Communications AB
 | |
|  *
 | |
|  * Authors:   Bjorn Wesen
 | |
|  *
 | |
|  */
 | |
| 
 | |
| #include <linux/kernel.h>
 | |
| #include <linux/sched.h>
 | |
| #include <linux/mm.h>
 | |
| #include <linux/smp.h>
 | |
| #include <linux/errno.h>
 | |
| #include <linux/ptrace.h>
 | |
| #include <linux/user.h>
 | |
| #include <linux/tracehook.h>
 | |
| 
 | |
| #include <asm/uaccess.h>
 | |
| #include <asm/page.h>
 | |
| #include <asm/pgtable.h>
 | |
| #include <asm/processor.h>
 | |
| 
 | |
| 
 | |
| /* notification of userspace execution resumption
 | |
|  * - triggered by current->work.notify_resume
 | |
|  */
 | |
| extern int do_signal(int canrestart, struct pt_regs *regs);
 | |
| 
 | |
| 
 | |
| void do_notify_resume(int canrestart, struct pt_regs *regs,
 | |
| 		      __u32 thread_info_flags)
 | |
| {
 | |
| 	/* deal with pending signal delivery */
 | |
| 	if (thread_info_flags & _TIF_SIGPENDING)
 | |
| 		do_signal(canrestart,regs);
 | |
| 
 | |
| 	if (thread_info_flags & _TIF_NOTIFY_RESUME) {
 | |
| 		clear_thread_flag(TIF_NOTIFY_RESUME);
 | |
| 		tracehook_notify_resume(regs);
 | |
| 	}
 | |
| }
 | 
