diff options
Diffstat (limited to 'arch/um/include')
-rw-r--r-- | arch/um/include/os.h | 10 | ||||
-rw-r--r-- | arch/um/include/skas/skas.h | 3 | ||||
-rw-r--r-- | arch/um/include/sysdep-i386/archsetjmp.h | 3 | ||||
-rw-r--r-- | arch/um/include/sysdep-x86_64/archsetjmp.h | 3 |
4 files changed, 11 insertions, 8 deletions
diff --git a/arch/um/include/os.h b/arch/um/include/os.h index be71b3d4c961..120ca21a513a 100644 --- a/arch/um/include/os.h +++ b/arch/um/include/os.h | |||
@@ -14,6 +14,7 @@ | |||
14 | #include "skas/mm_id.h" | 14 | #include "skas/mm_id.h" |
15 | #include "irq_user.h" | 15 | #include "irq_user.h" |
16 | #include "sysdep/tls.h" | 16 | #include "sysdep/tls.h" |
17 | #include "sysdep/archsetjmp.h" | ||
17 | 18 | ||
18 | #define OS_TYPE_FILE 1 | 19 | #define OS_TYPE_FILE 1 |
19 | #define OS_TYPE_DIR 2 | 20 | #define OS_TYPE_DIR 2 |
@@ -308,12 +309,9 @@ extern int copy_context_skas0(unsigned long stack, int pid); | |||
308 | extern void userspace(union uml_pt_regs *regs); | 309 | extern void userspace(union uml_pt_regs *regs); |
309 | extern void map_stub_pages(int fd, unsigned long code, | 310 | extern void map_stub_pages(int fd, unsigned long code, |
310 | unsigned long data, unsigned long stack); | 311 | unsigned long data, unsigned long stack); |
311 | extern void new_thread(void *stack, void **switch_buf_ptr, | 312 | extern void new_thread(void *stack, jmp_buf *buf, void (*handler)(void)); |
312 | void **fork_buf_ptr, void (*handler)(int)); | 313 | extern void switch_threads(jmp_buf *me, jmp_buf *you); |
313 | extern void thread_wait(void *sw, void *fb); | 314 | extern int start_idle_thread(void *stack, jmp_buf *switch_buf); |
314 | extern void switch_threads(void *me, void *next); | ||
315 | extern int start_idle_thread(void *stack, void *switch_buf_ptr, | ||
316 | void **fork_buf_ptr); | ||
317 | extern void initial_thread_cb_skas(void (*proc)(void *), | 315 | extern void initial_thread_cb_skas(void (*proc)(void *), |
318 | void *arg); | 316 | void *arg); |
319 | extern void halt_skas(void); | 317 | extern void halt_skas(void); |
diff --git a/arch/um/include/skas/skas.h b/arch/um/include/skas/skas.h index 853b26f148c5..e88926b16072 100644 --- a/arch/um/include/skas/skas.h +++ b/arch/um/include/skas/skas.h | |||
@@ -14,8 +14,7 @@ extern int proc_mm, ptrace_faultinfo, ptrace_ldt; | |||
14 | extern int skas_needs_stub; | 14 | extern int skas_needs_stub; |
15 | 15 | ||
16 | extern int user_thread(unsigned long stack, int flags); | 16 | extern int user_thread(unsigned long stack, int flags); |
17 | extern void new_thread_proc(void *stack, void (*handler)(int sig)); | 17 | extern void new_thread_handler(void); |
18 | extern void new_thread_handler(int sig); | ||
19 | extern void handle_syscall(union uml_pt_regs *regs); | 18 | extern void handle_syscall(union uml_pt_regs *regs); |
20 | extern int new_mm(unsigned long stack); | 19 | extern int new_mm(unsigned long stack); |
21 | extern void get_skas_faultinfo(int pid, struct faultinfo * fi); | 20 | extern void get_skas_faultinfo(int pid, struct faultinfo * fi); |
diff --git a/arch/um/include/sysdep-i386/archsetjmp.h b/arch/um/include/sysdep-i386/archsetjmp.h index ea1ba3d42aee..11bafab669e9 100644 --- a/arch/um/include/sysdep-i386/archsetjmp.h +++ b/arch/um/include/sysdep-i386/archsetjmp.h | |||
@@ -16,4 +16,7 @@ struct __jmp_buf { | |||
16 | 16 | ||
17 | typedef struct __jmp_buf jmp_buf[1]; | 17 | typedef struct __jmp_buf jmp_buf[1]; |
18 | 18 | ||
19 | #define JB_IP __eip | ||
20 | #define JB_SP __esp | ||
21 | |||
19 | #endif /* _SETJMP_H */ | 22 | #endif /* _SETJMP_H */ |
diff --git a/arch/um/include/sysdep-x86_64/archsetjmp.h b/arch/um/include/sysdep-x86_64/archsetjmp.h index 454fc60aff6d..9a5e1a6ec800 100644 --- a/arch/um/include/sysdep-x86_64/archsetjmp.h +++ b/arch/um/include/sysdep-x86_64/archsetjmp.h | |||
@@ -18,4 +18,7 @@ struct __jmp_buf { | |||
18 | 18 | ||
19 | typedef struct __jmp_buf jmp_buf[1]; | 19 | typedef struct __jmp_buf jmp_buf[1]; |
20 | 20 | ||
21 | #define JB_IP __rip | ||
22 | #define JB_SP __rsp | ||
23 | |||
21 | #endif /* _SETJMP_H */ | 24 | #endif /* _SETJMP_H */ |