diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/include/asm/vdso.h | 3 | ||||
-rw-r--r-- | arch/powerpc/kernel/vdso.c | 7 |
2 files changed, 7 insertions, 3 deletions
diff --git a/arch/powerpc/include/asm/vdso.h b/arch/powerpc/include/asm/vdso.h index 26fc449bd989..dc0419b66f17 100644 --- a/arch/powerpc/include/asm/vdso.h +++ b/arch/powerpc/include/asm/vdso.h | |||
@@ -7,9 +7,8 @@ | |||
7 | #define VDSO32_LBASE 0x100000 | 7 | #define VDSO32_LBASE 0x100000 |
8 | #define VDSO64_LBASE 0x100000 | 8 | #define VDSO64_LBASE 0x100000 |
9 | 9 | ||
10 | /* Default map addresses */ | 10 | /* Default map addresses for 32bit vDSO */ |
11 | #define VDSO32_MBASE VDSO32_LBASE | 11 | #define VDSO32_MBASE VDSO32_LBASE |
12 | #define VDSO64_MBASE VDSO64_LBASE | ||
13 | 12 | ||
14 | #define VDSO_VERSION_STRING LINUX_2.6.15 | 13 | #define VDSO_VERSION_STRING LINUX_2.6.15 |
15 | 14 | ||
diff --git a/arch/powerpc/kernel/vdso.c b/arch/powerpc/kernel/vdso.c index ad06d5c75b15..a0abce251d0a 100644 --- a/arch/powerpc/kernel/vdso.c +++ b/arch/powerpc/kernel/vdso.c | |||
@@ -203,7 +203,12 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) | |||
203 | } else { | 203 | } else { |
204 | vdso_pagelist = vdso64_pagelist; | 204 | vdso_pagelist = vdso64_pagelist; |
205 | vdso_pages = vdso64_pages; | 205 | vdso_pages = vdso64_pages; |
206 | vdso_base = VDSO64_MBASE; | 206 | /* |
207 | * On 64bit we don't have a preferred map address. This | ||
208 | * allows get_unmapped_area to find an area near other mmaps | ||
209 | * and most likely share a SLB entry. | ||
210 | */ | ||
211 | vdso_base = 0; | ||
207 | } | 212 | } |
208 | #else | 213 | #else |
209 | vdso_pagelist = vdso32_pagelist; | 214 | vdso_pagelist = vdso32_pagelist; |