~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Linux/arch/um/include/user_util.h

Version: ~ [ 0.6-2.3.46 ] ~
Architecture: ~ [ um ] ~

** Warning: Cannot open xref database.

1 #ifndef __PROC_UTIL_H__ 2 #define __PROC_UTIL_H__ 3 4 #define LONG_LEN (8) 5 #define PERM_LEN (4) 6 #define DEV_LEN (2) 7 #define LONG_DEC_LEN (10) 8 #define SIG_LEN (2) 9 10 #ifndef _UNISTD_H 11 extern int write(int, const char *, int); 12 #endif 13 14 #define y(s) #s 15 #define yy(s) y(s) 16 17 #define PROC_UNTESTED() \ 18 do { char buf[100]; \ 19 static int stop_here = 1; \ 20 if(stop_here){ \ 21 sprintf(buf, "Untested (%d) [0x%p]: " __FILE__ " line " yy(__LINE__) \ 22 "\n", getpid(), &stop_here); \ 23 write(1, buf, strlen(buf)); \ 24 stop(); \ 25 } \ 26 } while(0) 27 28 enum { OP_NONE, OP_EXEC, OP_SWITCH, OP_THREAD, OP_INPUT, OP_FORK, 29 OP_FORK_FINISH }; 30 31 enum { INPUT_NONE, INPUT_HALT, INPUT_REBOOT, INPUT_NEW_FD }; 32 33 struct init_thread { 34 int (*proc)(void *); 35 void *sp; 36 }; 37 38 struct cpu_task { 39 int pid; 40 void *task; 41 }; 42 43 struct reg_fd { 44 int fd; 45 void (*proc)(int); 46 }; 47 48 extern struct reg_fd reg_fd[]; 49 50 extern struct cpu_task cpu_tasks[]; 51 52 extern int physmem_fd; 53 54 extern unsigned long low_physmem; 55 extern unsigned long high_physmem; 56 extern unsigned long physmem; 57 extern unsigned long end_vm; 58 extern unsigned long start_vm; 59 60 extern int physmem_inode; 61 62 extern int open_maps(void); 63 extern int read_map(int fd, unsigned long *start_out, unsigned long *end_out, 64 char *r_out, char *w_out, char *x_out, char *p_out, 65 unsigned long *offset_out, unsigned long *major_out, 66 unsigned long *minor_out, unsigned int *inode_out); 67 extern void close_maps(int fd); 68 extern unsigned long get_brk(void); 69 extern int file_size(char *file); 70 extern void stop(void); 71 extern int proc_start_thread(unsigned long ip, unsigned long sp); 72 extern void child_handler(int sig); 73 extern int linux_wait(int pid, int *status, int flags); 74 extern int linux_getpid(void); 75 extern void stack_protections(unsigned long address, int len); 76 extern void abandon_proc_space(int (*proc)(void *), unsigned long sp); 77 extern int signals(void *unused); 78 extern unsigned long setup_memory(unsigned long total_size, 79 unsigned long physmem_size, int *fd_out, 80 int *inode_out); 81 extern void map(unsigned long virt, unsigned long phys, unsigned long len, 82 int r, int w, int x); 83 extern void unmap(unsigned long address, unsigned long len); 84 extern void protect(unsigned long addr, unsigned long len, int r, int w, 85 int x); 86 extern void stop_pid(int pid); 87 extern void kill_pid(int pid); 88 extern void trap_pid(int pid); 89 extern void usr1_pid(int pid); 90 extern void cont_pid(int pid); 91 extern int __personality(int); 92 extern void signal_handler(void *task, unsigned long handler, int sig); 93 extern void syscall_handler(int sig); 94 extern int have_syscall_result(void *t, int *result_out); 95 extern void do_syscall(void *task, int pid); 96 extern void kern_segv_handler(int sig); 97 extern void user_segv_handler(int sig); 98 extern void wait_for_stop(int pid, int sig); 99 extern void *add_signal_handler(int sig, void (*handler)(int)); 100 extern void signal_init(void); 101 extern void start_syscall_thread(void); 102 extern void finish_exec(int pid, unsigned long ip, unsigned long sp); 103 extern int trampoline(void *unused); 104 extern int start_fork_tramp(unsigned long *saved_regs, 105 unsigned long sig_stack, unsigned long temp_stack); 106 extern void register_pid(int pid, int is_main); 107 extern int kill_aux_pids(void); 108 extern void trace_myself(void); 109 extern void block_shlib_mem(void); 110 extern void unblock_shlib_mem(void); 111 extern void get_profile_timer(void); 112 extern void set_timers(void); 113 extern int clone_and_wait(int (*fn)(void *), void *arg, void *sp, int flags); 114 extern int get_main_pid(void); 115 extern int input_loop(void); 116 extern void usr1_and_wait(int pid); 117 extern void set_sigstack(void *sig_stack, int sig, void (*handler)(int), 118 int alt_stack, int nodefer, int mask_sig); 119 extern void (*set_signal_handler(int sig, void (*new_handler)(int)))(int); 120 extern void continue_execing_proc(int pid); 121 extern int linux_main(int argc, char **argv); 122 extern void remap_data(char *perms); 123 extern int getmaster(char *line); 124 extern void set_cmdline(char *cmd); 125 extern void continue_fork(int pid, unsigned long *regs); 126 127 #endif 128

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.