2 * Copyright (C) 2002 Jeff Dike (jdike@karaya.com)
3 * Licensed under the GPL
10 #include "sysdep/ptrace.h"
12 extern int userspace_pid
[];
13 extern int proc_mm
, ptrace_faultinfo
, ptrace_ldt
;
14 extern int skas_needs_stub
;
16 extern void switch_threads(void *me
, void *next
);
17 extern void thread_wait(void *sw
, void *fb
);
18 extern void new_thread(void *stack
, void **switch_buf_ptr
, void **fork_buf_ptr
,
19 void (*handler
)(int));
20 extern int start_idle_thread(void *stack
, void *switch_buf_ptr
,
22 extern int user_thread(unsigned long stack
, int flags
);
23 extern void userspace(union uml_pt_regs
*regs
);
24 extern void new_thread_proc(void *stack
, void (*handler
)(int sig
));
25 extern void new_thread_handler(int sig
);
26 extern void handle_syscall(union uml_pt_regs
*regs
);
27 extern int map(struct mm_id
* mm_idp
, unsigned long virt
,
28 unsigned long len
, int r
, int w
, int x
, int phys_fd
,
29 unsigned long long offset
, int done
, void **data
);
30 extern int unmap(struct mm_id
* mm_idp
, void *addr
, unsigned long len
,
31 int done
, void **data
);
32 extern int protect(struct mm_id
* mm_idp
, unsigned long addr
,
33 unsigned long len
, int r
, int w
, int x
, int done
,
35 extern void user_signal(int sig
, union uml_pt_regs
*regs
, int pid
);
36 extern int new_mm(unsigned long stack
);
37 extern int start_userspace(unsigned long stub_stack
);
38 extern int copy_context_skas0(unsigned long stack
, int pid
);
39 extern void get_skas_faultinfo(int pid
, struct faultinfo
* fi
);
40 extern long execute_syscall_skas(void *r
);
41 extern unsigned long current_stub_stack(void);
42 extern long run_syscall_stub(struct mm_id
* mm_idp
,
43 int syscall
, unsigned long *args
, long expected
,
44 void **addr
, int done
);
45 extern long syscall_stub_data(struct mm_id
* mm_idp
,
46 unsigned long *data
, int data_count
,
47 void **addr
, void **stub_addr
);
This page took 0.031622 seconds and 5 git commands to generate.