diff options
Diffstat (limited to 'meta/recipes-support/liburcu')
-rw-r--r-- | meta/recipes-support/liburcu/liburcu/0001-uatomic-Specify-complete-types-for-atomic-function-c.patch | 158 | ||||
-rw-r--r-- | meta/recipes-support/liburcu/liburcu/Revert-Blacklist-ARM-gcc-4.8.0-4.8.1-4.8.2.patch | 47 | ||||
-rw-r--r-- | meta/recipes-support/liburcu/liburcu/aarch64.patch | 19 | ||||
-rw-r--r-- | meta/recipes-support/liburcu/liburcu_0.9.1.bb (renamed from meta/recipes-support/liburcu/liburcu_0.8.7.bb) | 9 |
4 files changed, 3 insertions, 230 deletions
diff --git a/meta/recipes-support/liburcu/liburcu/0001-uatomic-Specify-complete-types-for-atomic-function-c.patch b/meta/recipes-support/liburcu/liburcu/0001-uatomic-Specify-complete-types-for-atomic-function-c.patch deleted file mode 100644 index 5ad0bbd159..0000000000 --- a/meta/recipes-support/liburcu/liburcu/0001-uatomic-Specify-complete-types-for-atomic-function-c.patch +++ /dev/null | |||
@@ -1,158 +0,0 @@ | |||
1 | From 6af790818d074c103c4797f1ce764896f183e028 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Sat, 22 Aug 2015 21:35:03 -0700 | ||
4 | Subject: [PATCH] uatomic: Specify complete types for atomic function calls | ||
5 | |||
6 | This was unearthed by clang compiler where it complained about parameter | ||
7 | mismatch, gcc doesnt notice this | ||
8 | |||
9 | urcu/uatomic/generic.h:190:10: error: address argument to atomic builtin | ||
10 | must be a pointer to integer or pointer ('void *' invalid) | ||
11 | return __sync_add_and_fetch_4(addr, val); | ||
12 | |||
13 | Fixed all instances thusly | ||
14 | |||
15 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
16 | --- | ||
17 | Upstream-Status: Submitted | ||
18 | |||
19 | urcu/uatomic/generic.h | 40 ++++++++++++++++++++-------------------- | ||
20 | 1 file changed, 20 insertions(+), 20 deletions(-) | ||
21 | |||
22 | diff --git a/urcu/uatomic/generic.h b/urcu/uatomic/generic.h | ||
23 | index 37f59cc..0046ffd 100644 | ||
24 | --- a/urcu/uatomic/generic.h | ||
25 | +++ b/urcu/uatomic/generic.h | ||
26 | @@ -65,17 +65,17 @@ unsigned long _uatomic_cmpxchg(void *addr, unsigned long old, | ||
27 | switch (len) { | ||
28 | #ifdef UATOMIC_HAS_ATOMIC_BYTE | ||
29 | case 1: | ||
30 | - return __sync_val_compare_and_swap_1(addr, old, _new); | ||
31 | + return __sync_val_compare_and_swap_1((unsigned char *)addr, old, _new); | ||
32 | #endif | ||
33 | #ifdef UATOMIC_HAS_ATOMIC_SHORT | ||
34 | case 2: | ||
35 | - return __sync_val_compare_and_swap_2(addr, old, _new); | ||
36 | + return __sync_val_compare_and_swap_2((unsigned short int *)addr, old, _new); | ||
37 | #endif | ||
38 | case 4: | ||
39 | - return __sync_val_compare_and_swap_4(addr, old, _new); | ||
40 | + return __sync_val_compare_and_swap_4((unsigned int *)addr, old, _new); | ||
41 | #if (CAA_BITS_PER_LONG == 64) | ||
42 | case 8: | ||
43 | - return __sync_val_compare_and_swap_8(addr, old, _new); | ||
44 | + return __sync_val_compare_and_swap_8((unsigned long *)addr, old, _new); | ||
45 | #endif | ||
46 | } | ||
47 | _uatomic_link_error(); | ||
48 | @@ -100,20 +100,20 @@ void _uatomic_and(void *addr, unsigned long val, | ||
49 | switch (len) { | ||
50 | #ifdef UATOMIC_HAS_ATOMIC_BYTE | ||
51 | case 1: | ||
52 | - __sync_and_and_fetch_1(addr, val); | ||
53 | + __sync_and_and_fetch_1((unsigned char *)addr, val); | ||
54 | return; | ||
55 | #endif | ||
56 | #ifdef UATOMIC_HAS_ATOMIC_SHORT | ||
57 | case 2: | ||
58 | - __sync_and_and_fetch_2(addr, val); | ||
59 | + __sync_and_and_fetch_2((unsigned short int *)addr, val); | ||
60 | return; | ||
61 | #endif | ||
62 | case 4: | ||
63 | - __sync_and_and_fetch_4(addr, val); | ||
64 | + __sync_and_and_fetch_4((unsigned int *)addr, val); | ||
65 | return; | ||
66 | #if (CAA_BITS_PER_LONG == 64) | ||
67 | case 8: | ||
68 | - __sync_and_and_fetch_8(addr, val); | ||
69 | + __sync_and_and_fetch_8((unsigned long *)addr, val); | ||
70 | return; | ||
71 | #endif | ||
72 | } | ||
73 | @@ -139,20 +139,20 @@ void _uatomic_or(void *addr, unsigned long val, | ||
74 | switch (len) { | ||
75 | #ifdef UATOMIC_HAS_ATOMIC_BYTE | ||
76 | case 1: | ||
77 | - __sync_or_and_fetch_1(addr, val); | ||
78 | + __sync_or_and_fetch_1((unsigned char *)addr, val); | ||
79 | return; | ||
80 | #endif | ||
81 | #ifdef UATOMIC_HAS_ATOMIC_SHORT | ||
82 | case 2: | ||
83 | - __sync_or_and_fetch_2(addr, val); | ||
84 | + __sync_or_and_fetch_2((unsigned short int *)addr, val); | ||
85 | return; | ||
86 | #endif | ||
87 | case 4: | ||
88 | - __sync_or_and_fetch_4(addr, val); | ||
89 | + __sync_or_and_fetch_4((unsigned int *)addr, val); | ||
90 | return; | ||
91 | #if (CAA_BITS_PER_LONG == 64) | ||
92 | case 8: | ||
93 | - __sync_or_and_fetch_8(addr, val); | ||
94 | + __sync_or_and_fetch_8((unsigned long *)addr, val); | ||
95 | return; | ||
96 | #endif | ||
97 | } | ||
98 | @@ -180,17 +180,17 @@ unsigned long _uatomic_add_return(void *addr, unsigned long val, | ||
99 | switch (len) { | ||
100 | #ifdef UATOMIC_HAS_ATOMIC_BYTE | ||
101 | case 1: | ||
102 | - return __sync_add_and_fetch_1(addr, val); | ||
103 | + return __sync_add_and_fetch_1((unsigned char *)addr, val); | ||
104 | #endif | ||
105 | #ifdef UATOMIC_HAS_ATOMIC_SHORT | ||
106 | case 2: | ||
107 | - return __sync_add_and_fetch_2(addr, val); | ||
108 | + return __sync_add_and_fetch_2((unsigned short int *)addr, val); | ||
109 | #endif | ||
110 | case 4: | ||
111 | - return __sync_add_and_fetch_4(addr, val); | ||
112 | + return __sync_add_and_fetch_4((unsigned int *)addr, val); | ||
113 | #if (CAA_BITS_PER_LONG == 64) | ||
114 | case 8: | ||
115 | - return __sync_add_and_fetch_8(addr, val); | ||
116 | + return __sync_add_and_fetch_8((unsigned long *)addr, val); | ||
117 | #endif | ||
118 | } | ||
119 | _uatomic_link_error(); | ||
120 | @@ -218,7 +218,7 @@ unsigned long _uatomic_exchange(void *addr, unsigned long val, int len) | ||
121 | |||
122 | do { | ||
123 | old = uatomic_read((unsigned char *)addr); | ||
124 | - } while (!__sync_bool_compare_and_swap_1(addr, old, val)); | ||
125 | + } while (!__sync_bool_compare_and_swap_1((unsigned char *)addr, old, val)); | ||
126 | |||
127 | return old; | ||
128 | } | ||
129 | @@ -230,7 +230,7 @@ unsigned long _uatomic_exchange(void *addr, unsigned long val, int len) | ||
130 | |||
131 | do { | ||
132 | old = uatomic_read((unsigned short *)addr); | ||
133 | - } while (!__sync_bool_compare_and_swap_2(addr, old, val)); | ||
134 | + } while (!__sync_bool_compare_and_swap_2((unsigned short int *)addr, old, val)); | ||
135 | |||
136 | return old; | ||
137 | } | ||
138 | @@ -241,7 +241,7 @@ unsigned long _uatomic_exchange(void *addr, unsigned long val, int len) | ||
139 | |||
140 | do { | ||
141 | old = uatomic_read((unsigned int *)addr); | ||
142 | - } while (!__sync_bool_compare_and_swap_4(addr, old, val)); | ||
143 | + } while (!__sync_bool_compare_and_swap_4((unsigned int *)addr, old, val)); | ||
144 | |||
145 | return old; | ||
146 | } | ||
147 | @@ -252,7 +252,7 @@ unsigned long _uatomic_exchange(void *addr, unsigned long val, int len) | ||
148 | |||
149 | do { | ||
150 | old = uatomic_read((unsigned long *)addr); | ||
151 | - } while (!__sync_bool_compare_and_swap_8(addr, old, val)); | ||
152 | + } while (!__sync_bool_compare_and_swap_8((unsigned long *)addr, old, val)); | ||
153 | |||
154 | return old; | ||
155 | } | ||
156 | -- | ||
157 | 2.1.4 | ||
158 | |||
diff --git a/meta/recipes-support/liburcu/liburcu/Revert-Blacklist-ARM-gcc-4.8.0-4.8.1-4.8.2.patch b/meta/recipes-support/liburcu/liburcu/Revert-Blacklist-ARM-gcc-4.8.0-4.8.1-4.8.2.patch deleted file mode 100644 index 535a7384cb..0000000000 --- a/meta/recipes-support/liburcu/liburcu/Revert-Blacklist-ARM-gcc-4.8.0-4.8.1-4.8.2.patch +++ /dev/null | |||
@@ -1,47 +0,0 @@ | |||
1 | From 7b3df100346128d780f218b881d563d1fd12e310 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jonathan Liu <net147@gmail.com> | ||
3 | Date: Mon, 20 Oct 2014 13:46:10 +1100 | ||
4 | Subject: [PATCH] Revert "Blacklist ARM gcc 4.8.0, 4.8.1, 4.8.2" | ||
5 | |||
6 | This reverts commit 4b79310aa3d408ba30fee02cc497a68072d38a99. | ||
7 | OE-Core is using a patched GCC 4.8.2 which is able to compile liburcu | ||
8 | properly. | ||
9 | |||
10 | Upstream-Status: Inappropriate [OE specific] | ||
11 | |||
12 | Signed-off-by: Jonathan Liu <net147@gmail.com> | ||
13 | --- | ||
14 | urcu/compiler.h | 19 ------------------- | ||
15 | 1 file changed, 19 deletions(-) | ||
16 | |||
17 | diff --git a/urcu/compiler.h b/urcu/compiler.h | ||
18 | index 1e30903..19534f0 100644 | ||
19 | --- a/urcu/compiler.h | ||
20 | +++ b/urcu/compiler.h | ||
21 | @@ -108,23 +108,4 @@ | ||
22 | |||
23 | #define CAA_ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) | ||
24 | |||
25 | -/* | ||
26 | - * Don't allow compiling with buggy compiler. | ||
27 | - */ | ||
28 | - | ||
29 | -#ifdef __GNUC__ | ||
30 | -# define URCU_GCC_VERSION (__GNUC__ * 10000 \ | ||
31 | - + __GNUC_MINOR__ * 100 \ | ||
32 | - + __GNUC_PATCHLEVEL__) | ||
33 | - | ||
34 | -/* | ||
35 | - * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58854 | ||
36 | - */ | ||
37 | -# ifdef __ARMEL__ | ||
38 | -# if URCU_GCC_VERSION >= 40800 && URCU_GCC_VERSION <= 40802 | ||
39 | -# error Your gcc version produces clobbered frame accesses | ||
40 | -# endif | ||
41 | -# endif | ||
42 | -#endif | ||
43 | - | ||
44 | #endif /* _URCU_COMPILER_H */ | ||
45 | -- | ||
46 | 2.1.2 | ||
47 | |||
diff --git a/meta/recipes-support/liburcu/liburcu/aarch64.patch b/meta/recipes-support/liburcu/liburcu/aarch64.patch deleted file mode 100644 index c6cc8c2fd3..0000000000 --- a/meta/recipes-support/liburcu/liburcu/aarch64.patch +++ /dev/null | |||
@@ -1,19 +0,0 @@ | |||
1 | libucru: recognize aarch64 | ||
2 | |||
3 | Make the same as "arm" internally. | ||
4 | |||
5 | Upstream-Status: Pending | ||
6 | |||
7 | Signed-off-by: joe.slater@windriver.com | ||
8 | |||
9 | |||
10 | --- a/configure.ac | ||
11 | +++ b/configure.ac | ||
12 | @@ -77,6 +77,7 @@ AS_CASE([$host_cpu], | ||
13 | [alpha*], [ARCHTYPE="alpha"], | ||
14 | [ia64], [ARCHTYPE="gcc"], | ||
15 | [arm*], [ARCHTYPE="arm"], | ||
16 | + [aarch64], [ARCHTYPE="arm"], | ||
17 | [mips*], [ARCHTYPE="mips"], | ||
18 | [tile*], [ARCHTYPE="gcc"], | ||
19 | [ARCHTYPE="unknown"] | ||
diff --git a/meta/recipes-support/liburcu/liburcu_0.8.7.bb b/meta/recipes-support/liburcu/liburcu_0.9.1.bb index a7f4f51b5b..39348d75e9 100644 --- a/meta/recipes-support/liburcu/liburcu_0.8.7.bb +++ b/meta/recipes-support/liburcu/liburcu_0.9.1.bb | |||
@@ -5,16 +5,13 @@ BUGTRACKER = "http://lttng.org/project/issues" | |||
5 | LICENSE = "LGPLv2.1+ & MIT-style" | 5 | LICENSE = "LGPLv2.1+ & MIT-style" |
6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=0f060c30a27922ce9c0d557a639b4fa3 \ | 6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=0f060c30a27922ce9c0d557a639b4fa3 \ |
7 | file://urcu.h;beginline=4;endline=32;md5=4de0d68d3a997643715036d2209ae1d9 \ | 7 | file://urcu.h;beginline=4;endline=32;md5=4de0d68d3a997643715036d2209ae1d9 \ |
8 | file://urcu/uatomic/x86.h;beginline=4;endline=21;md5=220552f72c55b102f2ee35929734ef42" | 8 | file://urcu/uatomic/x86.h;beginline=4;endline=21;md5=58e50bbd8a2f073bb5500e6554af0d0b" |
9 | 9 | ||
10 | SRC_URI = "http://lttng.org/files/urcu/userspace-rcu-${PV}.tar.bz2 \ | 10 | SRC_URI = "http://lttng.org/files/urcu/userspace-rcu-${PV}.tar.bz2 \ |
11 | file://Revert-Blacklist-ARM-gcc-4.8.0-4.8.1-4.8.2.patch \ | ||
12 | file://aarch64.patch \ | ||
13 | file://0001-uatomic-Specify-complete-types-for-atomic-function-c.patch \ | ||
14 | " | 11 | " |
15 | 12 | ||
16 | SRC_URI[md5sum] = "7a6ee17871d31226db3f618e28351d22" | 13 | SRC_URI[md5sum] = "124eaeea06863271c0bdf2a0cc1d8e4b" |
17 | SRC_URI[sha256sum] = "b523f22c4726ca6bb77a77d258e76d8c33c89724433bd65313024b98e55c4295" | 14 | SRC_URI[sha256sum] = "f8d278e9d95bec97c9ba954fc4c3fb584936bc0010713a8fe358b916bafd8715" |
18 | 15 | ||
19 | S = "${WORKDIR}/userspace-rcu-${PV}" | 16 | S = "${WORKDIR}/userspace-rcu-${PV}" |
20 | CFLAGS_append_libc-uclibc = " -D_GNU_SOURCE" | 17 | CFLAGS_append_libc-uclibc = " -D_GNU_SOURCE" |