diff options
Diffstat (limited to 'arch/um/kernel/tt/mem.c')
-rw-r--r-- | arch/um/kernel/tt/mem.c | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/arch/um/kernel/tt/mem.c b/arch/um/kernel/tt/mem.c new file mode 100644 index 000000000000..74346a04a2b2 --- /dev/null +++ b/arch/um/kernel/tt/mem.c | |||
@@ -0,0 +1,51 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2002 Jeff Dike (jdike@karaya.com) | ||
3 | * Licensed under the GPL | ||
4 | */ | ||
5 | |||
6 | #include "linux/stddef.h" | ||
7 | #include "linux/config.h" | ||
8 | #include "linux/mm.h" | ||
9 | #include "asm/uaccess.h" | ||
10 | #include "mem_user.h" | ||
11 | #include "kern_util.h" | ||
12 | #include "user_util.h" | ||
13 | #include "kern.h" | ||
14 | #include "tt.h" | ||
15 | |||
16 | void before_mem_tt(unsigned long brk_start) | ||
17 | { | ||
18 | if(debug) | ||
19 | remap_data(UML_ROUND_DOWN(&_stext), UML_ROUND_UP(&_etext), 1); | ||
20 | remap_data(UML_ROUND_DOWN(&_sdata), UML_ROUND_UP(&_edata), 1); | ||
21 | remap_data(UML_ROUND_DOWN(&__bss_start), UML_ROUND_UP(&_end), 1); | ||
22 | } | ||
23 | |||
24 | #ifdef CONFIG_HOST_2G_2G | ||
25 | #define TOP 0x80000000 | ||
26 | #else | ||
27 | #define TOP 0xc0000000 | ||
28 | #endif | ||
29 | |||
30 | #define SIZE ((CONFIG_NEST_LEVEL + CONFIG_KERNEL_HALF_GIGS) * 0x20000000) | ||
31 | #define START (TOP - SIZE) | ||
32 | |||
33 | unsigned long set_task_sizes_tt(int arg, unsigned long *host_size_out, | ||
34 | unsigned long *task_size_out) | ||
35 | { | ||
36 | /* Round up to the nearest 4M */ | ||
37 | *host_size_out = ROUND_4M((unsigned long) &arg); | ||
38 | *task_size_out = START; | ||
39 | return(START); | ||
40 | } | ||
41 | |||
42 | /* | ||
43 | * Overrides for Emacs so that we follow Linus's tabbing style. | ||
44 | * Emacs will notice this stuff at the end of the file and automatically | ||
45 | * adjust the settings for this buffer only. This must remain at the end | ||
46 | * of the file. | ||
47 | * --------------------------------------------------------------------------- | ||
48 | * Local variables: | ||
49 | * c-file-style: "linux" | ||
50 | * End: | ||
51 | */ | ||