1 |
vapier 16/03/07 17:59:48 |
2 |
|
3 |
Modified: 00_all_0001-Updated-translations-for-2.23.patch |
4 |
README.history |
5 |
Added: |
6 |
00_all_0010-x86_64-Set-DL_RUNTIME_UNALIGNED_VEC_SIZE-to-8.patch |
7 |
00_all_0011-Don-t-use-long-double-math-functions-if-NO_LONG_DOUB.patch |
8 |
00_all_0012-sln-use-stat64.patch |
9 |
Log: |
10 |
pull few more fixes from upstream |
11 |
|
12 |
Revision Changes Path |
13 |
1.3 src/patchsets/glibc/2.23/00_all_0001-Updated-translations-for-2.23.patch |
14 |
|
15 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.23/00_all_0001-Updated-translations-for-2.23.patch?rev=1.3&view=markup |
16 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.23/00_all_0001-Updated-translations-for-2.23.patch?rev=1.3&content-type=text/plain |
17 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.23/00_all_0001-Updated-translations-for-2.23.patch?r1=1.2&r2=1.3 |
18 |
|
19 |
Index: 00_all_0001-Updated-translations-for-2.23.patch |
20 |
=================================================================== |
21 |
RCS file: /var/cvsroot/gentoo/src/patchsets/glibc/2.23/00_all_0001-Updated-translations-for-2.23.patch,v |
22 |
retrieving revision 1.2 |
23 |
retrieving revision 1.3 |
24 |
diff -u -r1.2 -r1.3 |
25 |
--- 00_all_0001-Updated-translations-for-2.23.patch 7 Mar 2016 17:41:37 -0000 1.2 |
26 |
+++ 00_all_0001-Updated-translations-for-2.23.patch 7 Mar 2016 17:59:48 -0000 1.3 |
27 |
@@ -40259,9 +40259,9 @@ |
28 |
+# Copyright (C) 2013, 2014, 2015, 2016 Free Software Foundation, Inc. |
29 |
# This file is distributed under the same license as the glibc package. |
30 |
-# Primož Peterlin <primozz.peterlin@×××××.com>, 2013, 2014. |
31 |
--# $Id: 00_all_0001-Updated-translations-for-2.23.patch,v 1.2 2016/03/07 17:41:37 vapier Exp $ |
32 |
+-# $Id: 00_all_0001-Updated-translations-for-2.23.patch,v 1.3 2016/03/07 17:59:48 vapier Exp $ |
33 |
+# Primož Peterlin <primozz.peterlin@×××××.com>, 2013, 2014, 2015, 2016. |
34 |
-+# $Id: 00_all_0001-Updated-translations-for-2.23.patch,v 1.2 2016/03/07 17:41:37 vapier Exp $ |
35 |
++# $Id: 00_all_0001-Updated-translations-for-2.23.patch,v 1.3 2016/03/07 17:59:48 vapier Exp $ |
36 |
msgid "" |
37 |
msgstr "" |
38 |
-"Project-Id-Version: libc 2.18.90.20140105\n" |
39 |
|
40 |
|
41 |
|
42 |
1.2 src/patchsets/glibc/2.23/README.history |
43 |
|
44 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.23/README.history?rev=1.2&view=markup |
45 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.23/README.history?rev=1.2&content-type=text/plain |
46 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.23/README.history?r1=1.1&r2=1.2 |
47 |
|
48 |
Index: README.history |
49 |
=================================================================== |
50 |
RCS file: /var/cvsroot/gentoo/src/patchsets/glibc/2.23/README.history,v |
51 |
retrieving revision 1.1 |
52 |
retrieving revision 1.2 |
53 |
diff -u -r1.1 -r1.2 |
54 |
--- README.history 19 Feb 2016 16:27:45 -0000 1.1 |
55 |
+++ README.history 7 Mar 2016 17:59:48 -0000 1.2 |
56 |
@@ -1,3 +1,8 @@ |
57 |
+2 07 Mar 2016 |
58 |
+ + 00_all_0010-x86_64-Set-DL_RUNTIME_UNALIGNED_VEC_SIZE-to-8.patch |
59 |
+ + 00_all_0011-Don-t-use-long-double-math-functions-if-NO_LONG_DOUB.patch |
60 |
+ + 00_all_0012-sln-use-stat64.patch |
61 |
+ |
62 |
1 19 Feb 2016 |
63 |
+ 00_all_0001-Updated-translations-for-2.23.patch |
64 |
+ 00_all_0002-Regenerate-libc.pot-for-2.23.patch |
65 |
|
66 |
|
67 |
|
68 |
1.1 src/patchsets/glibc/2.23/00_all_0010-x86_64-Set-DL_RUNTIME_UNALIGNED_VEC_SIZE-to-8.patch |
69 |
|
70 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.23/00_all_0010-x86_64-Set-DL_RUNTIME_UNALIGNED_VEC_SIZE-to-8.patch?rev=1.1&view=markup |
71 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.23/00_all_0010-x86_64-Set-DL_RUNTIME_UNALIGNED_VEC_SIZE-to-8.patch?rev=1.1&content-type=text/plain |
72 |
|
73 |
Index: 00_all_0010-x86_64-Set-DL_RUNTIME_UNALIGNED_VEC_SIZE-to-8.patch |
74 |
=================================================================== |
75 |
From ab0e0eeb92fcd1d5901051194a01f88d339f8e73 Mon Sep 17 00:00:00 2001 |
76 |
From: "H.J. Lu" <hjl.tools@×××××.com> |
77 |
Date: Mon, 22 Feb 2016 09:32:57 -0800 |
78 |
Subject: [PATCH] [x86_64] Set DL_RUNTIME_UNALIGNED_VEC_SIZE to 8 |
79 |
|
80 |
Due to GCC bug: |
81 |
|
82 |
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58066 |
83 |
|
84 |
__tls_get_addr may be called with 8-byte stack alignment. Although |
85 |
this bug has been fixed in GCC 4.9.4, 5.3 and 6, we can't assume |
86 |
that stack will be always aligned at 16 bytes. Since SSE optimized |
87 |
memory/string functions with aligned SSE register load and store are |
88 |
used in the dynamic linker, we must set DL_RUNTIME_UNALIGNED_VEC_SIZE |
89 |
to 8 so that _dl_runtime_resolve_sse will align the stack before |
90 |
calling _dl_fixup: |
91 |
|
92 |
Dump of assembler code for function _dl_runtime_resolve_sse: |
93 |
0x00007ffff7deea90 <+0>: push %rbx |
94 |
0x00007ffff7deea91 <+1>: mov %rsp,%rbx |
95 |
0x00007ffff7deea94 <+4>: and $0xfffffffffffffff0,%rsp |
96 |
^^^^^^^^^^^ Align stack to 16 bytes |
97 |
0x00007ffff7deea98 <+8>: sub $0x100,%rsp |
98 |
0x00007ffff7deea9f <+15>: mov %rax,0xc0(%rsp) |
99 |
0x00007ffff7deeaa7 <+23>: mov %rcx,0xc8(%rsp) |
100 |
0x00007ffff7deeaaf <+31>: mov %rdx,0xd0(%rsp) |
101 |
0x00007ffff7deeab7 <+39>: mov %rsi,0xd8(%rsp) |
102 |
0x00007ffff7deeabf <+47>: mov %rdi,0xe0(%rsp) |
103 |
0x00007ffff7deeac7 <+55>: mov %r8,0xe8(%rsp) |
104 |
0x00007ffff7deeacf <+63>: mov %r9,0xf0(%rsp) |
105 |
0x00007ffff7deead7 <+71>: movaps %xmm0,(%rsp) |
106 |
0x00007ffff7deeadb <+75>: movaps %xmm1,0x10(%rsp) |
107 |
0x00007ffff7deeae0 <+80>: movaps %xmm2,0x20(%rsp) |
108 |
0x00007ffff7deeae5 <+85>: movaps %xmm3,0x30(%rsp) |
109 |
0x00007ffff7deeaea <+90>: movaps %xmm4,0x40(%rsp) |
110 |
0x00007ffff7deeaef <+95>: movaps %xmm5,0x50(%rsp) |
111 |
0x00007ffff7deeaf4 <+100>: movaps %xmm6,0x60(%rsp) |
112 |
0x00007ffff7deeaf9 <+105>: movaps %xmm7,0x70(%rsp) |
113 |
|
114 |
[BZ #19679] |
115 |
* sysdeps/x86_64/dl-trampoline.S (DL_RUNIME_UNALIGNED_VEC_SIZE): |
116 |
Renamed to ... |
117 |
(DL_RUNTIME_UNALIGNED_VEC_SIZE): This. Set to 8. |
118 |
(DL_RUNIME_RESOLVE_REALIGN_STACK): Renamed to ... |
119 |
(DL_RUNTIME_RESOLVE_REALIGN_STACK): This. Updated. |
120 |
(DL_RUNIME_RESOLVE_REALIGN_STACK): Renamed to ... |
121 |
(DL_RUNTIME_RESOLVE_REALIGN_STACK): This. |
122 |
* sysdeps/x86_64/dl-trampoline.h |
123 |
(DL_RUNIME_RESOLVE_REALIGN_STACK): Renamed to ... |
124 |
(DL_RUNTIME_RESOLVE_REALIGN_STACK): This. |
125 |
|
126 |
(cherry picked from commit 6094fc2cf7eab30889df0416a5c051a5e7171895) |
127 |
--- |
128 |
sysdeps/x86_64/dl-trampoline.S | 20 ++++++++++++-------- |
129 |
sysdeps/x86_64/dl-trampoline.h | 6 +++--- |
130 |
2 files changed, 15 insertions(+), 11 deletions(-) |
131 |
|
132 |
diff --git a/sysdeps/x86_64/dl-trampoline.S b/sysdeps/x86_64/dl-trampoline.S |
133 |
index 9fb6b13..39b8771 100644 |
134 |
--- a/sysdeps/x86_64/dl-trampoline.S |
135 |
+++ b/sysdeps/x86_64/dl-trampoline.S |
136 |
@@ -33,15 +33,19 @@ |
137 |
# define DL_STACK_ALIGNMENT 8 |
138 |
#endif |
139 |
|
140 |
-#ifndef DL_RUNIME_UNALIGNED_VEC_SIZE |
141 |
-/* The maximum size of unaligned vector load and store. */ |
142 |
-# define DL_RUNIME_UNALIGNED_VEC_SIZE 16 |
143 |
+#ifndef DL_RUNTIME_UNALIGNED_VEC_SIZE |
144 |
+/* The maximum size in bytes of unaligned vector load and store in the |
145 |
+ dynamic linker. Since SSE optimized memory/string functions with |
146 |
+ aligned SSE register load and store are used in the dynamic linker, |
147 |
+ we must set this to 8 so that _dl_runtime_resolve_sse will align the |
148 |
+ stack before calling _dl_fixup. */ |
149 |
+# define DL_RUNTIME_UNALIGNED_VEC_SIZE 8 |
150 |
#endif |
151 |
|
152 |
/* True if _dl_runtime_resolve should align stack to VEC_SIZE bytes. */ |
153 |
-#define DL_RUNIME_RESOLVE_REALIGN_STACK \ |
154 |
+#define DL_RUNTIME_RESOLVE_REALIGN_STACK \ |
155 |
(VEC_SIZE > DL_STACK_ALIGNMENT \ |
156 |
- && VEC_SIZE > DL_RUNIME_UNALIGNED_VEC_SIZE) |
157 |
+ && VEC_SIZE > DL_RUNTIME_UNALIGNED_VEC_SIZE) |
158 |
|
159 |
/* Align vector register save area to 16 bytes. */ |
160 |
#define REGISTER_SAVE_VEC_OFF 0 |
161 |
@@ -76,7 +80,7 @@ |
162 |
#ifdef HAVE_AVX512_ASM_SUPPORT |
163 |
# define VEC_SIZE 64 |
164 |
# define VMOVA vmovdqa64 |
165 |
-# if DL_RUNIME_RESOLVE_REALIGN_STACK || VEC_SIZE <= DL_STACK_ALIGNMENT |
166 |
+# if DL_RUNTIME_RESOLVE_REALIGN_STACK || VEC_SIZE <= DL_STACK_ALIGNMENT |
167 |
# define VMOV vmovdqa64 |
168 |
# else |
169 |
# define VMOV vmovdqu64 |
170 |
@@ -100,7 +104,7 @@ strong_alias (_dl_runtime_profile_avx, _dl_runtime_profile_avx512) |
171 |
|
172 |
#define VEC_SIZE 32 |
173 |
#define VMOVA vmovdqa |
174 |
-#if DL_RUNIME_RESOLVE_REALIGN_STACK || VEC_SIZE <= DL_STACK_ALIGNMENT |
175 |
+#if DL_RUNTIME_RESOLVE_REALIGN_STACK || VEC_SIZE <= DL_STACK_ALIGNMENT |
176 |
# define VMOV vmovdqa |
177 |
#else |
178 |
# define VMOV vmovdqu |
179 |
@@ -119,7 +123,7 @@ strong_alias (_dl_runtime_profile_avx, _dl_runtime_profile_avx512) |
180 |
/* movaps/movups is 1-byte shorter. */ |
181 |
#define VEC_SIZE 16 |
182 |
#define VMOVA movaps |
183 |
-#if DL_RUNIME_RESOLVE_REALIGN_STACK || VEC_SIZE <= DL_STACK_ALIGNMENT |
184 |
+#if DL_RUNTIME_RESOLVE_REALIGN_STACK || VEC_SIZE <= DL_STACK_ALIGNMENT |
185 |
# define VMOV movaps |
186 |
#else |
187 |
# define VMOV movups |
188 |
diff --git a/sysdeps/x86_64/dl-trampoline.h b/sysdeps/x86_64/dl-trampoline.h |
189 |
index f419183..b90836a 100644 |
190 |
--- a/sysdeps/x86_64/dl-trampoline.h |
191 |
+++ b/sysdeps/x86_64/dl-trampoline.h |
192 |
@@ -30,7 +30,7 @@ |
193 |
#undef REGISTER_SAVE_AREA |
194 |
#undef LOCAL_STORAGE_AREA |
195 |
#undef BASE |
196 |
-#if DL_RUNIME_RESOLVE_REALIGN_STACK |
197 |
+#if DL_RUNTIME_RESOLVE_REALIGN_STACK |
198 |
# define REGISTER_SAVE_AREA (REGISTER_SAVE_AREA_RAW + 8) |
199 |
/* Local stack area before jumping to function address: RBX. */ |
200 |
# define LOCAL_STORAGE_AREA 8 |
201 |
@@ -57,7 +57,7 @@ |
202 |
cfi_startproc |
203 |
_dl_runtime_resolve: |
204 |
cfi_adjust_cfa_offset(16) # Incorporate PLT |
205 |
-#if DL_RUNIME_RESOLVE_REALIGN_STACK |
206 |
+#if DL_RUNTIME_RESOLVE_REALIGN_STACK |
207 |
# if LOCAL_STORAGE_AREA != 8 |
208 |
# error LOCAL_STORAGE_AREA must be 8 |
209 |
# endif |
210 |
@@ -146,7 +146,7 @@ _dl_runtime_resolve: |
211 |
VMOV (REGISTER_SAVE_VEC_OFF + VEC_SIZE * 5)(%rsp), %VEC(5) |
212 |
VMOV (REGISTER_SAVE_VEC_OFF + VEC_SIZE * 6)(%rsp), %VEC(6) |
213 |
VMOV (REGISTER_SAVE_VEC_OFF + VEC_SIZE * 7)(%rsp), %VEC(7) |
214 |
-#if DL_RUNIME_RESOLVE_REALIGN_STACK |
215 |
+#if DL_RUNTIME_RESOLVE_REALIGN_STACK |
216 |
mov %RBX_LP, %RSP_LP |
217 |
cfi_def_cfa_register(%rsp) |
218 |
movq (%rsp), %rbx |
219 |
-- |
220 |
2.6.2 |
221 |
|
222 |
|
223 |
|
224 |
|
225 |
1.1 src/patchsets/glibc/2.23/00_all_0011-Don-t-use-long-double-math-functions-if-NO_LONG_DOUB.patch |
226 |
|
227 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.23/00_all_0011-Don-t-use-long-double-math-functions-if-NO_LONG_DOUB.patch?rev=1.1&view=markup |
228 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.23/00_all_0011-Don-t-use-long-double-math-functions-if-NO_LONG_DOUB.patch?rev=1.1&content-type=text/plain |
229 |
|
230 |
Index: 00_all_0011-Don-t-use-long-double-math-functions-if-NO_LONG_DOUB.patch |
231 |
=================================================================== |
232 |
From f571b1c53a6c4970969ef9fdb4aad2589d0b0427 Mon Sep 17 00:00:00 2001 |
233 |
From: Andreas Schwab <schwab@××××.de> |
234 |
Date: Tue, 23 Feb 2016 16:27:56 +0100 |
235 |
Subject: [PATCH] Don't use long double math functions if NO_LONG_DOUBLE |
236 |
|
237 |
(cherry picked from commit 591b7e37e6be2a2d6672b683ba1191095b10d6d5) |
238 |
--- |
239 |
math/test-math-isinff.cc | 7 ++++++- |
240 |
1 file changed, 6 insertions(+), 1 deletion(-) |
241 |
|
242 |
diff --git a/math/test-math-isinff.cc b/math/test-math-isinff.cc |
243 |
index 195d753..ecff1dc 100644 |
244 |
--- a/math/test-math-isinff.cc |
245 |
+++ b/math/test-math-isinff.cc |
246 |
@@ -30,12 +30,17 @@ do_test (void) |
247 |
header fix this test will not compile. */ |
248 |
if (isinff (1.0f) |
249 |
|| !isinff (INFINITY) |
250 |
+#ifndef NO_LONG_DOUBLE |
251 |
|| isinfl (1.0L) |
252 |
|| !isinfl (INFINITY) |
253 |
+#endif |
254 |
|| isnanf (2.0f) |
255 |
|| !isnanf (NAN) |
256 |
+#ifndef NO_LONG_DOUBLE |
257 |
|| isnanl (2.0L) |
258 |
- || !isnanl (NAN)) |
259 |
+ || !isnanl (NAN) |
260 |
+#endif |
261 |
+ ) |
262 |
{ |
263 |
printf ("FAIL: Failed to call is* functions.\n"); |
264 |
exit (1); |
265 |
-- |
266 |
2.6.2 |
267 |
|
268 |
|
269 |
|
270 |
|
271 |
1.1 src/patchsets/glibc/2.23/00_all_0012-sln-use-stat64.patch |
272 |
|
273 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.23/00_all_0012-sln-use-stat64.patch?rev=1.1&view=markup |
274 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/glibc/2.23/00_all_0012-sln-use-stat64.patch?rev=1.1&content-type=text/plain |
275 |
|
276 |
Index: 00_all_0012-sln-use-stat64.patch |
277 |
=================================================================== |
278 |
From 00479c708e155b2aaace94094b5cfaccdbd9e16e Mon Sep 17 00:00:00 2001 |
279 |
From: Hongjiu Zhang <noctuorare@×××××.com> |
280 |
Date: Sun, 6 Mar 2016 20:18:21 -0500 |
281 |
Subject: [PATCH] sln: use stat64 |
282 |
|
283 |
When using sln on some filesystems which return 64-bit inodes, |
284 |
the stat call might fail during install like so: |
285 |
.../elf/sln .../elf/symlink.list |
286 |
/lib32/libc.so.6: invalid destination: Value too large for defined data type |
287 |
/lib32/ld-linux.so.2: invalid destination: Value too large for defined data type |
288 |
Makefile:104: recipe for target 'install-symbolic-link' failed |
289 |
|
290 |
Switch to using stat64 all the time to avoid this. |
291 |
|
292 |
URL: https://bugs.gentoo.org/576396 |
293 |
(cherry picked from commit f5e753c8c3a18a1e3c715dd11bf4dc341b5c481f) |
294 |
(cherry picked from commit f23d7d2a8420a5ba2e28fc9c1d9c2b2996498d46) |
295 |
--- |
296 |
elf/sln.c | 4 ++-- |
297 |
1 file changed, 2 insertions(+), 2 deletions(-) |
298 |
|
299 |
diff --git a/elf/sln.c b/elf/sln.c |
300 |
index 9d57be2..f52cb9f 100644 |
301 |
--- a/elf/sln.c |
302 |
+++ b/elf/sln.c |
303 |
@@ -164,11 +164,11 @@ makesymlinks (const char *file) |
304 |
static int |
305 |
makesymlink (const char *src, const char *dest) |
306 |
{ |
307 |
- struct stat stats; |
308 |
+ struct stat64 stats; |
309 |
const char *error; |
310 |
|
311 |
/* Destination must not be a directory. */ |
312 |
- if (lstat (dest, &stats) == 0) |
313 |
+ if (lstat64 (dest, &stats) == 0) |
314 |
{ |
315 |
if (S_ISDIR (stats.st_mode)) |
316 |
{ |
317 |
-- |
318 |
2.6.2 |