summaryrefslogtreecommitdiffstats
path: root/recipes-core/icedtea/icedtea6-native-1.8.11/icedtea-native-vsyscall.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-core/icedtea/icedtea6-native-1.8.11/icedtea-native-vsyscall.patch')
-rw-r--r--recipes-core/icedtea/icedtea6-native-1.8.11/icedtea-native-vsyscall.patch43
1 files changed, 0 insertions, 43 deletions
diff --git a/recipes-core/icedtea/icedtea6-native-1.8.11/icedtea-native-vsyscall.patch b/recipes-core/icedtea/icedtea6-native-1.8.11/icedtea-native-vsyscall.patch
deleted file mode 100644
index 936b211..0000000
--- a/recipes-core/icedtea/icedtea6-native-1.8.11/icedtea-native-vsyscall.patch
+++ /dev/null
@@ -1,43 +0,0 @@
1Fixes the following compile time error when compiling icedtea6-native-1.8.11-r5.3 on a Fedora 20, x86_64:
2os_linux.cpp: In function 'int sched_getcpu_syscall()':
3os_linux.cpp:2431:60: error: expression cannot be used as a function
4 vgetcpu_t vgetcpu = (vgetcpu_t)VSYSCALL_ADDR(__NR_vgetcpu);
5
6Fix taken from:
7http://hg.openjdk.java.net/jdk6/jdk6/hotspot/rev/9447b2fb6fcf
8
9Signed-off-by: Max Krummenacher <max.oss.09@gmail.com>
10
11--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp.orig 2014-10-15 14:57:39.681794315 +0200
12+++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp 2014-10-15 15:41:32.398109645 +0200
13@@ -54,10 +54,6 @@
14 # include <sys/shm.h>
15 # include <link.h>
16
17-#if __x86_64__
18-#include <asm/vsyscall.h>
19-#endif
20-
21 #define MAX_PATH (2 * K)
22
23 // for timer info max values which include all bits
24@@ -2427,10 +2423,19 @@
25 int retval = -1;
26
27 #if __x86_64__
28+// Unfortunately we have to bring all these macros here from vsyscall.h
29+// to be able to compile on old linuxes.
30+# define __NR_vgetcpu 2
31+# define VSYSCALL_START (-10UL << 20)
32+# define VSYSCALL_SIZE 1024
33+# define VSYSCALL_ADDR(vsyscall_nr) (VSYSCALL_START+VSYSCALL_SIZE*(vsyscall_nr))
34 typedef long (*vgetcpu_t)(unsigned int *cpu, unsigned int *node, unsigned long *tcache);
35 vgetcpu_t vgetcpu = (vgetcpu_t)VSYSCALL_ADDR(__NR_vgetcpu);
36 retval = vgetcpu(&cpu, NULL, NULL);
37 #elif __i386__
38+# ifndef SYS_getcpu
39+# define SYS_getcpu 318
40+# endif
41 retval = syscall(SYS_getcpu, &cpu, NULL, NULL);
42 #endif
43