diff options
author | H. J. Lu <hjl.tools@gmail.com> | 2012-02-19 23:38:06 +0400 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2012-02-21 00:52:06 +0400 |
commit | 1a21d4e095ef720abf81299000afc038206d571b (patch) | |
tree | 8d64feea71f41f785521f66fecbd29c16b0cf63a /arch/x86/vdso/vdsox32.S | |
parent | 5fd92e65a68b813667bc8739f5fa463e5bfcd66d (diff) | |
download | linux-1a21d4e095ef720abf81299000afc038206d571b.tar.xz |
x32: Add x32 VDSO support
Add support for the x32 VDSO. The x32 VDSO takes advantage of the
similarity between the x86-64 and the x32 ABIs to contain the same
content, only the container is different, as the x32 VDSO obviously is
an x32 shared object.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'arch/x86/vdso/vdsox32.S')
-rw-r--r-- | arch/x86/vdso/vdsox32.S | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/arch/x86/vdso/vdsox32.S b/arch/x86/vdso/vdsox32.S new file mode 100644 index 000000000000..d6b9a7f42a8a --- /dev/null +++ b/arch/x86/vdso/vdsox32.S @@ -0,0 +1,22 @@ +#include <asm/page_types.h> +#include <linux/linkage.h> +#include <linux/init.h> + +__PAGE_ALIGNED_DATA + + .globl vdsox32_start, vdsox32_end + .align PAGE_SIZE +vdsox32_start: + .incbin "arch/x86/vdso/vdsox32.so" +vdsox32_end: + .align PAGE_SIZE /* extra data here leaks to userspace. */ + +.previous + + .globl vdsox32_pages + .bss + .align 8 + .type vdsox32_pages, @object +vdsox32_pages: + .zero (vdsox32_end - vdsox32_start + PAGE_SIZE - 1) / PAGE_SIZE * 8 + .size vdsox32_pages, .-vdsox32_pages |