diff options
author | Gennady Sharapov <Gennady.V.Sharapov@intel.com> | 2006-01-18 17:42:45 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-18 19:20:19 -0800 |
commit | f45d9fc9d80678c2ee22c578e503055207c46fd0 (patch) | |
tree | e67a7783c2866af94092801a519f04bb77109ade /arch/um/include/os.h | |
parent | 4abfbf4034b419736de5797a3860ab0bcf5c5c8d (diff) | |
download | talos-op-linux-f45d9fc9d80678c2ee22c578e503055207c46fd0.tar.gz talos-op-linux-f45d9fc9d80678c2ee22c578e503055207c46fd0.zip |
[PATCH] uml: move libc-dependent skas memory mapping code
The serial UML OS-abstraction layer patch (um/kernel/skas dir).
This moves all systemcalls from skas/mem_user.c file under os-Linux dir and
join skas/mem_user.c and skas/mem.c files.
Signed-off-by: Gennady Sharapov <gennady.v.sharapov@intel.com>
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/um/include/os.h')
-rw-r--r-- | arch/um/include/os.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/um/include/os.h b/arch/um/include/os.h index 624938ad9e14..8006e085b675 100644 --- a/arch/um/include/os.h +++ b/arch/um/include/os.h @@ -11,6 +11,7 @@ #include "../os/include/file.h" #include "sysdep/ptrace.h" #include "kern_util.h" +#include "skas/mm_id.h" #define OS_TYPE_FILE 1 #define OS_TYPE_DIR 2 @@ -255,4 +256,20 @@ extern void user_time_init(void); extern void uml_idle_timer(void); extern unsigned long long os_nsecs(void); +/* skas/mem.c */ +extern long run_syscall_stub(struct mm_id * mm_idp, + int syscall, unsigned long *args, long expected, + void **addr, int done); +extern long syscall_stub_data(struct mm_id * mm_idp, + unsigned long *data, int data_count, + void **addr, void **stub_addr); +extern int map(struct mm_id * mm_idp, unsigned long virt, + unsigned long len, int r, int w, int x, int phys_fd, + unsigned long long offset, int done, void **data); +extern int unmap(struct mm_id * mm_idp, void *addr, unsigned long len, + int done, void **data); +extern int protect(struct mm_id * mm_idp, unsigned long addr, + unsigned long len, int r, int w, int x, int done, + void **data); + #endif |