diff options
author | Ingo Molnar <mingo@kernel.org> | 2015-06-03 19:41:06 +0300 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2015-06-04 08:37:37 +0300 |
commit | 00398a0018d1334fedabfeaabd0fa563121de612 (patch) | |
tree | 81d6a7ccfabbf9d48126c5110678ce8de9775317 /arch/x86/entry/vsyscall/vsyscall_emu_64.S | |
parent | 1f57d5d85ba7f1f467173ff33f51d01a91f9aaf1 (diff) | |
download | linux-00398a0018d1334fedabfeaabd0fa563121de612.tar.xz |
x86/asm/entry: Move the vsyscall code to arch/x86/entry/vsyscall/
The vsyscall code is entry code too, so move it to arch/x86/entry/vsyscall/.
Cc: Borislav Petkov <bp@alien8.de>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/x86/entry/vsyscall/vsyscall_emu_64.S')
-rw-r--r-- | arch/x86/entry/vsyscall/vsyscall_emu_64.S | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/arch/x86/entry/vsyscall/vsyscall_emu_64.S b/arch/x86/entry/vsyscall/vsyscall_emu_64.S new file mode 100644 index 000000000000..c9596a9af159 --- /dev/null +++ b/arch/x86/entry/vsyscall/vsyscall_emu_64.S @@ -0,0 +1,37 @@ +/* + * vsyscall_emu_64.S: Vsyscall emulation page + * + * Copyright (c) 2011 Andy Lutomirski + * + * Subject to the GNU General Public License, version 2 + */ + +#include <linux/linkage.h> + +#include <asm/irq_vectors.h> +#include <asm/page_types.h> +#include <asm/unistd_64.h> + +__PAGE_ALIGNED_DATA + .globl __vsyscall_page + .balign PAGE_SIZE, 0xcc + .type __vsyscall_page, @object +__vsyscall_page: + + mov $__NR_gettimeofday, %rax + syscall + ret + + .balign 1024, 0xcc + mov $__NR_time, %rax + syscall + ret + + .balign 1024, 0xcc + mov $__NR_getcpu, %rax + syscall + ret + + .balign 4096, 0xcc + + .size __vsyscall_page, 4096 |