Author: hauke
Date: 2016-01-24 00:48:55 +0100 (Sun, 24 Jan 2016)
New Revision: 48466

Added:
   trunk/toolchain/musl/patches/030-mips-add-vdso-support.patch
Log:
musl: mips: add vdso support

vdso support is available on mips starting with kernel 4.4, see kernel
commit a7f4df4e21 "MIPS: VDSO: Add implementations of gettimeofday()
and clock_gettime()" for details.

These are my micro benchmark results for 1.000.000 calls to
clock_gettime(CLOCK_MONOTONIC, &tp)

without vdso:
root@OpenWrt:/# time ./vdso-test
real 0m 0.95s
user 0m 0.24s
sys 0m 0.70s

with vdso:
root@OpenWrt:/# time /usr/bin/vdso-test
real 0m 0.35s
user 0m 0.34s
sys 0m 0.00s

Signed-off-by: Hauke Mehrtens <[email protected]>


Added: trunk/toolchain/musl/patches/030-mips-add-vdso-support.patch
===================================================================
--- trunk/toolchain/musl/patches/030-mips-add-vdso-support.patch                
                (rev 0)
+++ trunk/toolchain/musl/patches/030-mips-add-vdso-support.patch        
2016-01-23 23:48:55 UTC (rev 48466)
@@ -0,0 +1,29 @@
+From c29a29c3334344e0f3cfdec6130a6261514507a0 Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens <[email protected]>
+Date: Sat, 23 Jan 2016 16:23:09 +0100
+Subject: [PATCH 2/2] mips: add vdso support
+
+vdso support is available on mips starting with kernel 4.4, see kernel
+commit a7f4df4e21 "MIPS: VDSO: Add implementations of gettimeofday()
+and clock_gettime()" for details.
+
+Signed-off-by: Hauke Mehrtens <[email protected]>
+---
+ arch/mips/syscall_arch.h | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/arch/mips/syscall_arch.h b/arch/mips/syscall_arch.h
+index e74e0ad..39c0ea3 100644
+--- a/arch/mips/syscall_arch.h
++++ b/arch/mips/syscall_arch.h
+@@ -161,3 +161,7 @@ static inline long __syscall6(long n, long a, long b, long 
c, long d, long e, lo
+       if (n == SYS_fstatat) __stat_fix(c);
+       return r2;
+ }
++
++#define VDSO_USEFUL
++#define VDSO_CGT_SYM "__vdso_clock_gettime"
++#define VDSO_CGT_VER "LINUX_2.6"
+-- 
+2.7.0.rc3
+
_______________________________________________
openwrt-commits mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits

Reply via email to