diff options
Diffstat (limited to 'arch/x86_64/kernel/sys_x86_64.c')
-rw-r--r-- | arch/x86_64/kernel/sys_x86_64.c | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/arch/x86_64/kernel/sys_x86_64.c b/arch/x86_64/kernel/sys_x86_64.c index dbebd5ccba6b..d9798dd433fc 100644 --- a/arch/x86_64/kernel/sys_x86_64.c +++ b/arch/x86_64/kernel/sys_x86_64.c | |||
@@ -68,13 +68,7 @@ out: | |||
68 | static void find_start_end(unsigned long flags, unsigned long *begin, | 68 | static void find_start_end(unsigned long flags, unsigned long *begin, |
69 | unsigned long *end) | 69 | unsigned long *end) |
70 | { | 70 | { |
71 | #ifdef CONFIG_IA32_EMULATION | 71 | if (!test_thread_flag(TIF_IA32) && (flags & MAP_32BIT)) { |
72 | if (test_thread_flag(TIF_IA32)) { | ||
73 | *begin = TASK_UNMAPPED_32; | ||
74 | *end = IA32_PAGE_OFFSET; | ||
75 | } else | ||
76 | #endif | ||
77 | if (flags & MAP_32BIT) { | ||
78 | /* This is usually used needed to map code in small | 72 | /* This is usually used needed to map code in small |
79 | model, so it needs to be in the first 31bit. Limit | 73 | model, so it needs to be in the first 31bit. Limit |
80 | it to that. This means we need to move the | 74 | it to that. This means we need to move the |
@@ -84,10 +78,10 @@ static void find_start_end(unsigned long flags, unsigned long *begin, | |||
84 | of playground for now. -AK */ | 78 | of playground for now. -AK */ |
85 | *begin = 0x40000000; | 79 | *begin = 0x40000000; |
86 | *end = 0x80000000; | 80 | *end = 0x80000000; |
87 | } else { | 81 | } else { |
88 | *begin = TASK_UNMAPPED_64; | 82 | *begin = TASK_UNMAPPED_BASE; |
89 | *end = TASK_SIZE; | 83 | *end = TASK_SIZE; |
90 | } | 84 | } |
91 | } | 85 | } |
92 | 86 | ||
93 | unsigned long | 87 | unsigned long |