diff options
Diffstat (limited to 'ANDROID_3.4.5/arch/x86/um/vdso/um_vdso.c')
-rw-r--r-- | ANDROID_3.4.5/arch/x86/um/vdso/um_vdso.c | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/ANDROID_3.4.5/arch/x86/um/vdso/um_vdso.c b/ANDROID_3.4.5/arch/x86/um/vdso/um_vdso.c deleted file mode 100644 index 7c441b59..00000000 --- a/ANDROID_3.4.5/arch/x86/um/vdso/um_vdso.c +++ /dev/null @@ -1,71 +0,0 @@ -/* - * Copyright (C) 2011 Richard Weinberger <richrd@nod.at> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * This vDSO turns all calls into a syscall so that UML can trap them. - */ - - -/* Disable profiling for userspace code */ -#define DISABLE_BRANCH_PROFILING - -#include <linux/time.h> -#include <linux/getcpu.h> -#include <asm/unistd.h> - -int __vdso_clock_gettime(clockid_t clock, struct timespec *ts) -{ - long ret; - - asm("syscall" : "=a" (ret) : - "0" (__NR_clock_gettime), "D" (clock), "S" (ts) : "memory"); - - return ret; -} -int clock_gettime(clockid_t, struct timespec *) - __attribute__((weak, alias("__vdso_clock_gettime"))); - -int __vdso_gettimeofday(struct timeval *tv, struct timezone *tz) -{ - long ret; - - asm("syscall" : "=a" (ret) : - "0" (__NR_gettimeofday), "D" (tv), "S" (tz) : "memory"); - - return ret; -} -int gettimeofday(struct timeval *, struct timezone *) - __attribute__((weak, alias("__vdso_gettimeofday"))); - -time_t __vdso_time(time_t *t) -{ - long secs; - - asm volatile("syscall" - : "=a" (secs) - : "0" (__NR_time), "D" (t) : "cc", "r11", "cx", "memory"); - - return secs; -} -int time(time_t *t) __attribute__((weak, alias("__vdso_time"))); - -long -__vdso_getcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *unused) -{ - /* - * UML does not support SMP, we can cheat here. :) - */ - - if (cpu) - *cpu = 0; - if (node) - *node = 0; - - return 0; -} - -long getcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *tcache) - __attribute__((weak, alias("__vdso_getcpu"))); |