aboutsummaryrefslogtreecommitdiffstats
path: root/arch/um/include/os.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/um/include/os.h')
-rw-r--r--arch/um/include/os.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/um/include/os.h b/arch/um/include/os.h
index 4c362458052c..2e58e304b8be 100644
--- a/arch/um/include/os.h
+++ b/arch/um/include/os.h
@@ -6,6 +6,7 @@
6#ifndef __OS_H__ 6#ifndef __OS_H__
7#define __OS_H__ 7#define __OS_H__
8 8
9#include "uml-config.h"
9#include "asm/types.h" 10#include "asm/types.h"
10#include "../os/include/file.h" 11#include "../os/include/file.h"
11 12
@@ -157,6 +158,17 @@ extern int os_lock_file(int fd, int excl);
157extern void os_early_checks(void); 158extern void os_early_checks(void);
158extern int can_do_skas(void); 159extern int can_do_skas(void);
159 160
161/* Make sure they are clear when running in TT mode. Required by
162 * SEGV_MAYBE_FIXABLE */
163#ifdef UML_CONFIG_MODE_SKAS
164#define clear_can_do_skas() do { ptrace_faultinfo = proc_mm = 0; } while (0)
165#else
166#define clear_can_do_skas() do {} while (0)
167#endif
168
169/* mem.c */
170extern int create_mem_file(unsigned long len);
171
160/* process.c */ 172/* process.c */
161extern unsigned long os_process_pc(int pid); 173extern unsigned long os_process_pc(int pid);
162extern int os_process_parent(int pid); 174extern int os_process_parent(int pid);
@@ -181,6 +193,8 @@ extern unsigned long long os_usecs(void);
181/* tt.c 193/* tt.c
182 * for tt mode only (will be deleted in future...) 194 * for tt mode only (will be deleted in future...)
183 */ 195 */
196extern int protect_memory(unsigned long addr, unsigned long len,
197 int r, int w, int x, int must_succeed);
184extern void forward_pending_sigio(int target); 198extern void forward_pending_sigio(int target);
185extern int start_fork_tramp(void *arg, unsigned long temp_stack, 199extern int start_fork_tramp(void *arg, unsigned long temp_stack,
186 int clone_flags, int (*tramp)(void *)); 200 int clone_flags, int (*tramp)(void *));