Fix issues in x86 memcpy-ssse3.S
[glibc.git] / ChangeLog
blob2932b053b3b494491fe7bf354662555f55769c41
1 2010-02-24  H.J. Lu  <hongjiu.lu@intel.com>
3         * sysdeps/i386/i686/multiarch/memcpy-ssse3.S: Use unsigned
4         conditional jumps.
5         Correct unwind info.
7         * sysdeps/i386/i686/multiarch/memset-sse2-rep.S: Remove redundant
8         punpcklbw.
9         Use unsigned conditional jumps.
10         (128bytesormore_nt): Renamed to ...
11         (128bytesormore_endof_L1): This.
12         Use add instead of lea if possible.
13         Correct unwind info.
14         * sysdeps/i386/i686/multiarch/memset-sse2.S: Remove redundant
15         punpcklbw.
16         Use unsigned conditional jumps.
17         Use add instead of lea if possible.
18         Correct unwind info.
20 2010-02-24  Ulrich Drepper  <drepper@redhat.com>
22         [BZ #11319]
23         * libio/iovdprintf.c (_IO_vdprintf): Explicitly flush stream before
24         undoing the stream because _IO_FINISH doesn't report failures.
26         [BZ #5553]
27         * malloc/malloc.c (public_vALLOc): Set ar_ptr when trying main_arena.
28         (public_pVALLOc): Likewise.
29         Patch by Petr Baudis.
31 2010-02-22  Jim Meyering  <meyering@redhat.com>
33         * manual/math.texi (BSD Random): Fix a typo: s/are/is/
35         * manual/charset.texi: Adjust grammar.
37         * manual/errno.texi (Error Messages): Fix doubled-words and typos.
38         * manual/charset.texi (Selecting the Conversion): Likewise.
39         * manual/getopt.texi (Getopt Long Options): Likewise.
40         * manual/memory.texi (Resizing the Data Segment): Likewise.
41         * manual/message.texi (GUI program problems): Likewise.
42         * manual/resource.texi (CPU Affinity): Likewise.
43         * manual/stdio.texi (Streams and Threads): Likewise.
44         * manual/time.texi (High Accuracy Clock): Likewise.
46 2009-02-20  David S. Miller  <davem@davemloft.net>
48         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup):
49         Adjust rela->r_offset by l->l_addr when rewriting PLT.
51         * sysdeps/sparc/sparc64/memchr.S: Use unsigned branch on greater to
52         test end of buffer.
54         * sysdeps/unix/sysv/linux/sparc/sparc32/makecontext.c
55         (__makecontext): Adjust arg counter properly when copying arg
56         stack slots.
58 2009-02-20  Joseph Myers  <joseph@codesourcery.com>
60         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_runtime_setup):
61         Adjust rela->r_offset by l->l_addr when rewriting PLT.
63 2010-02-19  Carl Fredrik Hammar  <hammy.lite@gmail.com>
65         * hurd/hurdioctl.c (tiocsctty): Call `do_tiocsctty' instead of
66         non-existent `tiocsctty_port'.
68 2010-02-16  H.J. Lu  <hongjiu.lu@intel.com>
70         * sysdeps/i386/i686/multiarch/memcmp.S (memcmp): Use CPUID_OFFSET
71         instead of FEATURE_OFFSET.
72         * sysdeps/i386/i686/multiarch/strcmp.S (strcmp): Likewise.
74         * sysdeps/i386/i686/multiarch/memcmp-sse4.S: Add alignnments.
75         Fix one unwind info problem.
77         * sysdeps/i386/i686/multiarch/memcmp-ssse3.S (less1bytes): Add CFI_POP.
79         * sysdeps/i386/i686/multiarch/strcmp-sse4.S: Simplify unwind info.
81 2010-02-17  H.J. Lu  <hongjiu.lu@intel.com>
82             Ulrich Drepper  <drepper@redhat.com>
84         * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Fix typo in unwind info.
85         Clean up a bit.
87 2010-02-17  Carl Fredrik Hammar  <hammy.lite@gmail.com>
89         * hurd/hurdioctl.c (tiocsctty): Only get FD ports, do work in...
90         (tiocsctty_port): ...this new function.
92         * hurd/hurd/ioctl.h (_HURD_HANDLE_IOCTLS_1): Cast to
93         `ioctl_handler_t'.
95 2010-02-15  Ulrich Drepper  <drepper@redhat.com>
97         * sysdeps/i386/i686/multiarch/memcmp-sse4.S: Fix unwind info.
98         * sysdeps/i386/i686/multiarch/memcmp-ssse3.S: Likewise.
99         * sysdeps/i386/i686/multiarch/strcmp-sse4.S: Likewise.
100         * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: Likewise.
102         * sysdeps/i386/i686/multiarch/strcmp-sse4.S: Don't fall through to
103         undefined code.
105 2010-02-12  H.J. Lu  <hongjiu.lu@intel.com>
107         * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add
108         strcmp-ssse3, strcmp-sse4, strncmp-c, strncmp-ssse3, strncmp-sse4,
109         memcmp-c, memcmp-ssse3, and memcmp-sse4.
110         * sysdeps/i386/i686/multiarch/memcmp-sse4.S: New file.
111         * sysdeps/i386/i686/multiarch/memcmp-ssse3.S: New file.
112         * sysdeps/i386/i686/multiarch/memcmp.S: New file.
113         * sysdeps/i386/i686/multiarch/strcmp-sse4.S: New file.
114         * sysdeps/i386/i686/multiarch/strcmp-ssse3.S: New file.
115         * sysdeps/i386/i686/multiarch/strcmp.S: New file.
116         * sysdeps/i386/i686/multiarch/strncmp-c.c: New file.
117         * sysdeps/i386/i686/multiarch/strncmp-sse4.S: New file.
118         * sysdeps/i386/i686/multiarch/strncmp-ssse3.S: New file.
119         * sysdeps/i386/i686/multiarch/strncmp.S: New file.
121 2010-02-12  Luis Machado  <luisgpm@br.ibm.com>
123         * sysdeps/powerpc/powerpc32/dl-machine.h: Removed old PPC_REL16 check.
124         * sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
125         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
126         * sysdeps/powerpc/powerpc32/memset.S: Likewise.
127         * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S: Likewise.
128         * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S: Likewise.
129         * sysdeps/powerpc/powerpc32/configure.in: Fail if R_PPC_REL16
130         is not supported.
131         * sysdeps/powerpc/powerpc32/fpu/s_round.S: Likewise.
132         * sysdeps/powerpc/powerpc32/fpu/s_truncf.S: Likewise.
133         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
134         * sysdeps/powerpc/powerpc32/fpu/s_floorf.S: Likewise.
135         * sysdeps/powerpc/powerpc32/fpu/s_ceilf.S: Likewise.
136         * sysdeps/powerpc/powerpc32/fpu/s_ceil.S: Likewise.
137         * sysdeps/powerpc/powerpc32/fpu/s_floor.S: Likewise.
138         * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Likewise.
139         * sysdeps/powerpc/powerpc32/fpu/s_rintf.S: Likewise.
140         * sysdeps/powerpc/powerpc32/fpu/s_trunc.S: Likewise.
141         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
142         * sysdeps/powerpc/powerpc32/fpu/s_lround.S: Likewise.
143         * sysdeps/powerpc/powerpc32/fpu/s_rint.S: Likewise.
144         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S: Likewise.
145         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: Likewise.
146         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S: Likewise.
147         * sysdeps/powerpc/powerpc32/dl-start.S: Likewise.
148         * sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S:
149         Likewise.
150         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S:
151         Likewise.
152         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S:
153         Likewise.
154         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S:
155         Likewise.
156         * sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S: Likewise.
158 2010-02-12  Alan Modra  <amodra@gmail.com>
160         * elf/tls-macros.h [__powerpc__] (__TLS_CALL_CLOBBERS): Remove r3.
161         Define and use for __powerpc64__ too.
162         [__powerpc__] (TLS_LD): Add r3 to clobbers.
163         [__powerpc__] (TLS_GD): Set asm output.  Make __result r3 reg.
164         [__powerpc64__] (TLS_GD): Make __result r3 reg.
165         [__powerpc64__] (TLS_IE): Relax output constraint.
167 2010-02-11  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
169         * sysdeps/s390/s390-64/utf8-utf16-z9.c: Disable hardware
170         instructions cu21 and cu24.  Add well-formedness checking
171         parameter and adjust the software implementation.
172         * sysdeps/s390/s390-64/utf16-utf32-z9.c: Likewise.
174 2010-02-10  Ulrich Drepper  <drepper@redhat.com>
176         [BZ #11271]
177         * io/ftw.c (ftw_startup): Close descriptor for initial directory
178         after changing back to it.
180 2010-02-05  David S. Miller  <davem@davemloft.net>
182         * elf/elf.h (R_SPARC_JMP_IREL, R_SPARC_IRELATIVE): Define.
183         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela): Handle new
184         ifunc relocs.
185         (elf_machine_lazy_rel): Likewise.
186         (sparc_fixup_plt): Pull out to...
187         * sysdeps/sparc/sparc32/dl-plt.h: ...here.
188         * sysdeps/sparc/sparc32/dl-irel.h: New file.
189         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela): Handle new
190         ifunc relocs.
191         (elf_machine_lazy_rel): Likewise.
192         (sparc64_fixup_plt): Pull out to...
193         * sysdeps/sparc/sparc64/dl-plt.h: ...here.
194         * sysdeps/sparc/sparc64/dl-irel.h: New file.
196 2010-02-09  Maxim Kuvyrkov  <maxim@codesourcery.com>
198         * elf/elf.h: Define m68k TLS relocations.
200 2010-02-10  Luis Machado  <luisgpm@br.ibm.com>
202         * sysdeps/powerpc/powerpc64/power7/Implies: Removed.
203         * sysdeps/powerpc/powerpc64/power7/fpu/Implies: Removed.
204         * sysdeps/powerpc/powerpc32/power7/Implies: Removed.
205         * sysdeps/powerpc/powerpc32/power7/fpu/Implies: Removed.
206         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/fpu/Implies: Add
207         64-bit power7 fpu path.
208         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/fpu/Implies: Add
209         32-bit power7 fpu math.
211 2010-02-09  Ulrich Drepper  <drepper@redhat.com>
213         * sysdeps/i386/rshift.S: More compact unwind information.
215         * sysdeps/i386/lshift.S: Fix unwind information.
217 2010-02-08  Luis Machado  <luisgpm@br.ibm.com>
219         * sysdeps/powerpc/powerpc64/power7/fpu/s_isnan.S: New file.
220         * sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S: New file.
221         * sysdeps/powerpc/powerpc64/power7/fpu/s_isnanf.S: New file.
222         * sysdeps/powerpc/powerpc32/power7/fpu/s_isnanf.S: New file.
223         * sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S: New file.
224         * sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S: New file.
225         * sysdeps/powerpc/powerpc64/power7/fpu/s_isinff.S: New file.
226         * sysdeps/powerpc/powerpc32/power7/fpu/s_isinff.S: New file.
227         * sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S: New file.
228         * sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S: New file.
229         * sysdeps/powerpc/powerpc64/power7/fpu/s_finitef.S: New file.
230         * sysdeps/powerpc/powerpc32/power7/fpu/s_finitef.S: New file.
232 2010-02-08  Andreas Schwab  <schwab@redhat.com>
234         * include/fenv.h: Add hidden proto for fegetenv.
235         * math/fegetenv.c: Add hidden alias.
236         * sysdeps/i386/fpu/fegetenv.c: Likewise.
237         * sysdeps/ia64/fpu/fegetenv.c: Likewise.
238         * sysdeps/powerpc/fpu/fegetenv.c: Likewise.
239         * sysdeps/sh/sh4/fpu/fegetenv.c: Likewise.
240         * sysdeps/sparc/fpu/fegetenv.c: Likewise.
241         * sysdeps/x86_64/fpu/fegetenv.c: Likewise
242         * sysdeps/s390/fpu/fegetenv.c: Likewise.  Remove unused headers.
244 2010-02-05  H.J. Lu  <hongjiu.lu@intel.com>
246         [BZ #11230]
247         * sysdeps/ia64/memchr.S: Don't read beyond the last byte
248         during recovery.
250 2010-01-26  Andreas Schwab  <schwab@redhat.com>
252         * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.c: Use internal
253         interface.
254         * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.c: Likewise.
255         * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h: Declare internal
256         utmpx interface.
258         * sysdeps/unix/sysv/linux/sparc/Versions: Add new errlist compat
259         entry for 2.12.
261 2010-02-03  Ulrich Drepper  <drepper@redhat.com>
263         [BZ #11235]
264         * sysdeps/unix/sysv/linux/sys/mount.h: Remove S_WRITE, S_APPEND,
265         S_IMMUTABLE.  Add MS_DIRSYNC, MS_MOVE, MS_SILENT, MS_REC,
266         MS_POSIXACL, MS_UNBINDABLE, MS_PRIVATE, MS_SLAVE, MS_SHARED,
267         MS_RELATIME, MS_KERNMOUNT, MS_I_VERSION, MS_STRICTATIME,
268         MS_ACTIVE, and MS_NOUSER.
269         (MS_RMT_MASK): Update according to current kernels.
271         [BZ #11242]
272         * misc/getusershell.c (initshells): Allocate one more byte in input
273         buffer so that fgets doesn't loop undefinitely.
275 2010-02-02  Ulrich Drepper  <drepper@redhat.com>
277         * stdlib/setenv.c (__add_to_environ): Don't use alloca if
278         __libc_use_alloca tells us not to.  Fix memory leak in an error
279         situation.  Based partially on patch by Jim Meyering.
281 2010-01-26  Samuel Thibault  <samuel.thibault@ens-lyon.org>
283         * sysdeps/mach/getsysstats.c (get_nprocs_conf, get_nprocs,
284         get_phys_pages, get_avphys_pages): Add weak aliases.
286 2010-01-25  Andreas Schwab  <schwab@redhat.com>
288         * iconv/iconv_prog.c (write_output): Fix check for open failure.
290 2010-01-22  Ulrich Drepper  <drepper@redhat.com>
292         [BZ #11200]
293         * locale/loadlocale.c (_nl_load_locale): Fix recognition of genuine
294         mmap resource problem.  Patch by Joe Landers <jlanders@vmware.com>.
296 2010-01-22  Jim Meyering  <jim@meyering.net>
298         [BZ #11193]
299         * posix/regexec.c (extend_buffers): Avoid overflow in realloc
300         buffer length computation.
302         [BZ #11192]
303         * posix/regexec.c (re_copy_regs): Don't leak when allocation
304         of the start buffer succeeds but allocation of the "end" one fails.
306         [BZ #11191]
307         * posix/regexec.c (re_search_2_stub): Check for overflow
308         when adding the sizes of the two strings.
310         [BZ #11190]
311         * posix/regexec.c (re_search_internal): Avoid overflow
312         in computing re_malloc buffer size.
314         [BZ #11189]
315         * posix/regexec.c (prune_impossible_nodes): Avoid overflow
316         in computing re_malloc buffer size.
318         [BZ #11188]
319         * posix/regexec.c (build_trtable): Avoid arithmetic overflow
320         in size calculation.
322         [BZ #11187]
323         * posix/regexec.c (re_search_2_stub): Use simpler method than
324         boolean for freeing internal storage.
326 2010-01-22  Ulrich Drepper  <drepper@redhat.com>
328         * posix/regex_internal.c (re_string_skip_chars): Simplify test for
329         failed mbrtowc call.
331 2010-01-22  Jim Meyering  <jim@meyering.net>
333         [BZ #11186]
334         * posix/regex_internal.c (re_string_skip_chars): Don't assume WEOF
335         fits in wchar_t.  Problem reported by Eric Blake.
337         [BZ #11185]
338         * posix/regex_internal.c (re_string_reconstruct): Remove declaration
339         and stores into set-but-not-used local, "q".
341         [BZ #11184]
342         * posix/regex_internal.c (re_dfa_add_node): Extend the overflow
343         detection test.  Patch by Paul Eggert.
345         [BZ #11183]
346         * posix/regex_internal.c (re_string_realloc_buffers):
347         Detect and handle internal overflow.  Patch by Paul Eggert
349 2010-01-20  Andreas Schwab  <schwab@redhat.com>
351         * sysdeps/unix/sysv/linux/s390/s390-32/____longjmp_chk.c
352         (CHECK_SP): Fix check for alternate stack.
353         * sysdeps/unix/sysv/linux/s390/s390-64/____longjmp_chk.c
354         (CHECK_SP): Likewise.
356 2010-01-19  H.J. Lu  <hongjiu.lu@intel.com>
358         * sysdeps/i386/i686/multiarch/memmove.S: Also check
359         bit_Fast_Rep_String when SHARED isn't defined.
361 2010-01-19  Ulrich Drepper  <drepper@redhat.com>
363         [BZ #11194]
364         * misc/bits/syslog.h (syslog, vsyslog): Remove unnecessary return.
366 2010-01-17  Samuel Thibault  <samuel.thibault@ens-lyon.org>
368         * sysdeps/mach/hurd/bits/libc-lock.h
369         (__rtld_lock_recursive_t): New type.
370         (__rtld_lock_initialize): New macro.
372 2010-01-14  Ryan S. Arnold  <rsa@us.ibm.com>
374         * sysdeps/powerpc/powerpc32/cell/memcpy.S: New file.
375         * sysdeps/powerpc/powerpc64/cell/memcpy.S: New file.
376         * sysdeps/unix/sysv/linux/powerpc/powerpc32/cell/fpu/Implies: New file.
377         * sysdeps/unix/sysv/linux/powerpc/powerpc64/cell/fpu/Implies: New file.
379 2010-01-18  Andreas Schwab  <schwab@redhat.com>
381         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Remove duplicate
382         definitions of O_DSYNC and O_RSYNC.
384         * elf/dynamic-link.h (elf_get_dynamic_info): Use correct type when
385         casting d_tag.
387         * elf/dynamic-link.h (elf_get_dynamic_info): Ignore negative
388         dynamic entry types.
390 2010-01-16  Jakub Jelinek  <jakub@redhat.com>
392         * sysdeps/ieee754/ldbl-128/s_ceill.c (huge): Add L suffix to the
393         constant.
394         * sysdeps/ieee754/ldbl-128/s_floorl.c (huge): Likewise.
395         * sysdeps/ieee754/ldbl-128/s_expm1l.c (big): Decrease to avoid
396         overflow.
397         * sysdeps/ieee754/ldbl-128/s_log1pl.c (big): Remove unused variable.
399         * sysdeps/ieee754/ldbl-128/s_nexttowardf.c (__nexttowardf): Use
400         math_opt_barrier and math_force_eval macros.
402 2010-01-15  Ulrich Drepper  <drepper@redhat.com>
404         * posix/regcomp.c: Fix a few more cases of ignored return values.
405         * posix/regex_internal.c: Likewise.
406         * posix/regexec.c: Likewise.
408         * include/features.h: _XOPEN_SOURCE_EXTENDED is not defined to be
409         used without _XOPEN_SOURCE.  Don't base any decisions on this macro
410         if _XOPEN_SOURCE is not defined as well.
412 2010-01-15  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
414         * sysdeps/s390/s390-32/elf/start.S (_start): Added check for the
415         high gprs kernel facility.
416         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_matches_host):
417         Added high gprs check for DSOs.
418         * elf/elf.h (EF_S390_HIGH_GPRS): Added macro definition for the
419         new elf header flag.
421 2010-01-13  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
423         * elf/dl-sysdep.c (_dl_sysdep_start): Added the auxv parameter to
424         dl_main.
425         * elf/dl-open.c (_dl_sysdep_start): Likewise..
426         * sysdeps/generic/ldsodefs.h (_dl_sysdep_start): Likewise.
427         * elf/rtld.c (dl_main): Added new parameter auxv.  Adjust the
428         AT_PHDR, AT_PHNUM and AT_ENTRY fields if the ld.so is directly
429         started.
431 2010-01-14  Ulrich Drepper  <drepper@redhat.com>
433         [BZ #11027]
434         * sysdeps/generic/netinet/ip.h: Define IPTOS_CLASS_* macros according
435         to RFC 2474.
436         Patch by Philip Prindeville <philipp@redfish-solutions.com>.
438         [BZ #11141]
439         * resolv/res_send.c (reopen): Don't use IPv6 sockets for IPv4
440         addresses.
442         [BZ #11127]
443         * posix/regcomp.c (alc_eclosure_iter): Do not ignore
444         re_node_set_insert failure; return REG_ESPACE.
445         Patch by Paul Eggert.
447         * bits/confname.h: Make pre-C99-safe.
449 2010-01-14  Ryan S. Arnold  <rsa@us.ibm.com>
451         * Makeconfig (+prector, +postctor, +prectorS, +postctorS): Add
452         $(sysdep-LDFLAGS) to pre and post ctors so that the proper .o
453         files are found by GCC.
455 2010-01-14  Ulrich Drepper  <drepper@redhat.com>
457         * posix/unistd.h: Relax conditions for ualarm, usleep, getwd, vfork,
458         brk, and sbrk.
460         * string/strings.h: Relax condition for bcmp, bcopy, bzero, ffs,
461         index, and rindex.
463         * stdlib/stdlib.h: Relax conditions for *cvt functions and valloc.
465         * Versions.def: Add GLIBC_2.12 for libpthread.
467         [BZ #11126]
468         * malloc/malloc.c (malloc_info): Initialize malloc if not already
469         done.  Handle empty bin lists.
471         * posix/unistd.h: Change getpagesize and getdtablesize declaration
472         visibility some more.
474         * resolv/netdb.h: Relax condition to elide obsolete resolver constants.
476         * posix/unistd.h: Declare getpagesize in _GNU_SOURCE mode.
478         [BZ #11120]
479         * sysdeps/x86_64/strcmp.S: Prevent silent errors should strncmp be
480         needed outside libc.
482 2010-01-13  Ulrich Drepper  <drepper@redhat.com>
484         * stdlib/stdlib.h: Parameter of unsetenv must not be NULL.
486 2010-01-12  H.J. Lu  <hongjiu.lu@intel.com>
488         * sysdeps/x86_64/multiarch/strlen.S: Unroll the loop.
490 2010-01-13  Ulrich Drepper  <drepper@redhat.com>
492         * stdlib/stdlib.h: Be a bit more relaxed about obsoleted mktemp symbol.
494 2010-01-12  Ulrich Drepper  <drepper@redhat.com>
496         * conform/data/complex.h-data: Test for POSIX2008.
498         * conform/data/ctype.h-data: Fix POSIX testing.
500         * conform/data/dirent.h-data: ino_t only needed for XSI.
502         * grp/grp.h: Declare getgrent and endgrent for XPG7.
504         * conform/data/inttypes.h-data: Use same types as the headers.
506         * resolv/netdb.h: Don't define old resolver macros for XPG7.
508         * conform/data/sys/uio.h-data: Don't exclude POSIX2008.
510         * conform/conformtest.pl: Implement tag for allow-header.
511         Fix newline handling in allow-header implementation.
513         * conform/data/time.h-data: Use allow-header instead of duplicating
514         information.
516         * conform/data/time.h-data: Allow sigevent tag.
518         * posix/sched.h: Define time_t and pid_t for XPG7.
520 2010-01-12  H.J. Lu  <hongjiu.lu@intel.com>
522         * sysdeps/i386/i686/bcopy.S: New file.
524         * sysdeps/i386/i686/cacheinfo.c (__x86_64_data_cache_size): Define.
526         * sysdeps/i386/i686/memcpy.S (__memcpy_chk): Use ENTRY_CHK
527         and END_CHK.
528         * sysdeps/i386/i686/memmove.S (__memmove_chk): Likewise.
529         * sysdeps/i386/i686/mempcpy.S (__mempcpy_chk): Likewise.
530         * sysdeps/i386/i686/memset.S (__memset_chk): Likewise.
532         * sysdeps/i386/i686/memmove.S: Support USE_AS_BCOPY.
534         * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add
535         bzero-sse2 memset-sse2 memcpy-ssse3 mempcpy-ssse3 memmove-ssse3
536         memcpy-ssse3-rep mempcpy-ssse3-rep memmove-ssse3-rep
537         bcopy-ssse3 bcopy-ssse3-rep memset-sse2-rep bzero-sse2-rep
538         * sysdeps/i386/i686/multiarch/bcopy-ssse3-rep.S: New file.
539         * sysdeps/i386/i686/multiarch/bcopy-ssse3.S: New file.
540         * sysdeps/i386/i686/multiarch/bcopy.S: New file.
541         * sysdeps/i386/i686/multiarch/bzero-sse2-rep.S: New file.
542         * sysdeps/i386/i686/multiarch/bzero-sse2.S: New file.
543         * sysdeps/i386/i686/multiarch/bzero.S: New file.
544         * sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S: New file.
545         * sysdeps/i386/i686/multiarch/memcpy-ssse3.S: New file.
546         * sysdeps/i386/i686/multiarch/memcpy.S: New file.
547         * sysdeps/i386/i686/multiarch/memcpy_chk.S: New file.
548         * sysdeps/i386/i686/multiarch/memmove-ssse3-rep.S: New file.
549         * sysdeps/i386/i686/multiarch/memmove-ssse3.S: New file.
550         * sysdeps/i386/i686/multiarch/memmove.S: New file.
551         * sysdeps/i386/i686/multiarch/memmove_chk.S: New file.
552         * sysdeps/i386/i686/multiarch/mempcpy-ssse3-rep.S: New file.
553         * sysdeps/i386/i686/multiarch/mempcpy-ssse3.S: New file.
554         * sysdeps/i386/i686/multiarch/mempcpy.S: New file.
555         * sysdeps/i386/i686/multiarch/mempcpy_chk.S: New file.
556         * sysdeps/i386/i686/multiarch/memset-sse2-rep.S: New file.
557         * sysdeps/i386/i686/multiarch/memset-sse2.S: New file.
558         * sysdeps/i386/i686/multiarch/memset.S: New file.
559         * sysdeps/i386/i686/multiarch/memset_chk.S: New file.
561         * sysdeps/i386/sysdep.h (ENTRY_CHK): New.
562         (END_CHK): Likewise.
564         * sysdeps/i386/i686/multiarch/ifunc-defines.sym: Add
565         FEATURE_OFFSET, FEATURE_SIZE and FEATURE_INDEX_1.
566         * sysdeps/x86_64/multiarch/ifunc-defines.sym: Likewise.
568         * sysdeps/x86_64/cacheinfo.c (intel_02_cache_info): Add entries
569         for 0x0e and 0x80.
570         (__x86_64_data_cache_size): New.
571         (init_cacheinfo): Set __x86_64_data_cache_size.
573         * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Turn
574         on bit_Fast_Rep_String for Intel Core i7.
576         * sysdeps/x86_64/multiarch/init-arch.h (bit_Fast_Rep_String): New.
577         (index_Fast_Rep_String): Likewise.
578         (FEATURE_INDEX_1): Likewise.
579         (FEATURE_INDEX_MAX): Likewise.
580         (cpu_features): Add feature.
582 2010-01-12  Ulrich Drepper  <drepper@redhat.com>
584         * conform/data/sys/select.h-data: Fix up for XPG7.
586 2010-01-12  Jakub Jelinek  <jakub@redhat.com>
588         * posix/sys/wait.h: Don't define W* macros etc. if
589         stdlib.h has been included with _POSIX_C_SOURCE >= 200809L.
591 2010-01-11  Ulrich Drepper  <drepper@redhat.com>
593         * io/sys/stat.h: Declare fchmod for XPG7.
594         * conform/data/sys/stat.h-data: Fix up for XPG7.
596         * termios/termios.h: Define pid_t for XPG7.
598         * conform/data/math.h-data: Fix up for XPG6 and XPG7.
599         * conform/data/tgmath.h-data: Likewise.
601         * conform/data/time.h-data: Fix POSIX tests.
603         * conform/data/wchar.h-data: Fix up XPG7 tests.
605         * include/features.h: Fix __USE_ISOC95 handling.
607         * conform/data/wordexp.h-data: Fix typo in last change.
609         * conform/data/unistd.h-data: Fix up older POSIX tests.
611         * stdlib/stdlib.h: Fix handling symbols removed in XPG7.
612         * posix/unistd.h: Likewise.
614         * posix/unistd.h: Include environments.h also for XPG6 and up.
615         Define intptr_t for XPG6 and up.
616         Fix up for XPG7.
617         * conform/data/unistd.h-data: Fix up for XPG6 and XPG7.
619         * conform/data/sys/types.h-data: Fix up for XPG7.
621         * sysdeps/unix/bsd/bits/stat.h: Fix double-inclusion problem.
622         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
623         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
624         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
625         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
626         * sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
627         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
628         * sysdeps/unix/sysv/bits/stat.h: Likewise.
629         * sysdeps/mach/hurd/bits/stat.h: Likewise.
631         * bits/confname.h: Fix typo in last change.
633         * conform/data/unistd.h-data: lockf-constants Not needed for POSIX.
635 2010-01-10  Ulrich Drepper  <drepper@redhat.com>
637         * sysdeps/unix/sysv/linux/bits/sigaction.h: SA_RESTART, SA_NODEFER,
638         and SA_RESETHAND now available in Base.
639         * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h: Likewise.
640         * sysdeps/unix/sysv/linux/s390/bits/sigaction.h: Likewise.
641         * sysdeps/unix/sysv/linux/sparc/bits/sigaction.h: Likewise.
642         * conform/data/signal.h-data: Update for XPG7.
644         * posix/sys/types.h: Define id_t, clock_t, blksize_t for XPG7.
646         * string/strings.h: Don't declare obsolete functions for XPG7.
647         Declare ffs only for XSI.
648         * conform/data/strings.h-data: Update for XPG7.
650 2010-01-10  Jakub Jelinek  <jakub@redhat.com>
652         [BZ #11125]
653         * libio/stdio.h: Define va_list, off_t, and ssize_t.
655         * posix/glob.h: Define size_t.
657         * posix/sys/wait.h: Define idtype_t and declare waitid for XPG7.
659         * signal/signal.h: Define size_t, mcontext_t, and ucontext_t for XPG7.
661 2010-01-10  Ulrich Drepper  <drepper@redhat.com>
663         * conform/conformtest.pl: For XPG7 testing the headers are supposed to
664         be self-contained.
666         * conform/data/stdio.h-data: Expect off_t and ssize_t.
668 2010-01-09  Ulrich Drepper  <drepper@redhat.com>
670         * libio/stdio.h: Define va_list also for XPG7.
672         * conform/conformtest.pl: Update for XPG7 and some bug fixes.
673         * conform/data/ctype.h-data: Likewise.
674         * conform/data/dirent.h-data: Likewise.
675         * conform/data/errno.h-data: Likewise.
676         * conform/data/fcntl.h-data: Likewise.
677         * conform/data/fmtmsg.h-data: Likewise.
678         * conform/data/fnmatch.h-data: Likewise.
679         * conform/data/ftw.h-data: Likewise.
680         * conform/data/glob.h-data: Likewise.
681         * conform/data/grp.h-data: Likewise.
682         * conform/data/iconv.h-data: Likewise.
683         * conform/data/langinfo.h-data: Likewise.
684         * conform/data/libgen.h-data: Likewise.
685         * conform/data/limits.h-data: Likewise.
686         * conform/data/locale.h-data: Likewise.
687         * conform/data/math.h-data: Likewise.
688         * conform/data/monetary.h-data: Likewise.
689         * conform/data/mqueue.h-data: Likewise.
690         * conform/data/ndbm.h-data: Likewise.
691         * conform/data/netdb.h-data: Likewise.
692         * conform/data/pthread.h-data: Likewise.
693         * conform/data/pwd.h-data: Likewise.
694         * conform/data/regex.h-data: Likewise.
695         * conform/data/sched.h-data: Likewise.
696         * conform/data/search.h-data: Likewise.
697         * conform/data/semaphore.h-data: Likewise.
698         * conform/data/setjmp.h-data: Likewise.
699         * conform/data/signal.h-data: Likewise.
700         * conform/data/spawn.h-data: Likewise.
701         * conform/data/stdio.h-data: Likewise.
702         * conform/data/stdlib.h-data: Likewise.
703         * conform/data/string.h-data: Likewise.
704         * conform/data/strings.h-data: Likewise.
705         * conform/data/sys/ipc.h-data: Likewise.
706         * conform/data/sys/msg.h-data: Likewise.
707         * conform/data/sys/resource.h-data: Likewise.
708         * conform/data/sys/sem.h-data: Likewise.
709         * conform/data/sys/shm.h-data: Likewise.
710         * conform/data/sys/socket.h-data: Likewise.
711         * conform/data/sys/stat.h-data: Likewise.
712         * conform/data/sys/time.h-data: Likewise.
713         * conform/data/sys/types.h-data: Likewise.
714         * conform/data/sys/uio.h-data: Likewise.
715         * conform/data/sys/wait.h-data: Likewise.
716         * conform/data/syslog.h-data: Likewise.
717         * conform/data/tar.h-data: Likewise.
718         * conform/data/termios.h-data: Likewise.
719         * conform/data/time.h-data: Likewise.
720         * conform/data/ulimit.h-data: Likewise.
721         * conform/data/unistd.h-data: Likewise.
722         * conform/data/utmpx.h-data: Likewise.
723         * conform/data/wchar.h-data: Likewise.
724         * conform/data/wctype.h-data: Likewise.
725         * conform/data/wordexp.h-data: Likewise.
727         * io/fcntl.h: Define mode_t macros instead of including sys/stat.h.
728         * sysdeps/unix/bsd/bits/stat.h: Enable using from fcntl.h.
729         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
730         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
731         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
732         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
733         * sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
734         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
735         * sysdeps/unix/sysv/bits/stat.h: Likewise.
736         * sysdeps/mach/hurd/bits/stat.h: Likewise.
738         * stdlib/stdlib.h: Define wait-related bits for XPG7.
739         Don't declare valloc, mktemp, ecvt, fcvt, gcvt for XPG6 and  up.
740         Declare mkstemp and getsubopt for XPG7.
741         Declare posix_openpt for XPG6 XSI.
743         * include/features.h: Define __USE_XOPEN2KXSI for _XOPEN_SOURCE >= 600
744         and __USE_XOPEN2K8XSI for _XOPEN_SOURCE >= 700.
746         * string/string.h: Declare strdup for XPG7.
748 2010-01-08  Ulrich Drepper  <drepper@redhat.com>
750         * bits/confname.h: Define _CS_V6_ENV and _CS_V7_ENV.
751         * posix/confstr.c: Implement _CS_V6_ENV and _CS_V7_ENV.
753         * dirent/dirent.h: Really fix feature selection.
755         * locale/localeinfo.h: Rename struct locale_data to __locale_data.
756         Fix all users.
757         * locale/C-address.c: Fix all users.
758         * locale/C-collate.c: Likewise.
759         * locale/C-ctype.c: Likewise.
760         * locale/C-identification.c: Likewise.
761         * locale/C-measurement.c: Likewise.
762         * locale/C-messages.c: Likewise.
763         * locale/C-monetary.c: Likewise.
764         * locale/C-name.c: Likewise.
765         * locale/C-numeric.c: Likewise.
766         * locale/C-paper.c: Likewise.
767         * locale/C-telephone.c: Likewise.
768         * locale/C-time.c: Likewise.
769         * locale/findlocale.c: Likewise.
770         * locale/global-locale.c: Likewise.
771         * locale/loadarchive.c: Likewise.
772         * locale/loadlocale.c: Likewise.
773         * locale/nl_langinfo_l.c: Likewise.
774         * locale/setlocale.c: Likewise.
775         * locale/xlocale.c: Likewise.
776         * locale/xlocale.h: Likewise.
777         * stdio-common/vfscanf.c: Likewise.
778         * stdlib/strfmon_l.c: Likewise.
779         * stdlib/strtod_l.c: Likewise.
780         * stdlib/strtol_l.c: Likewise.
781         * string/strcoll_l.c: Likewise.
782         * string/strxfrm_l.c: Likewise.
783         * time/alt_digit.c: Likewise.
784         * time/asctime.c: Likewise.
785         * time/era.c: Likewise.
786         * time/lc-time-cleanup.c: Likewise.
787         * time/strftime_l.c: Likewise.
788         * time/strptime_l.c: Likewise.
789         * wcsmbs/wcsmbsload.c: Likewise.
790         * wcsmbs/wcsmbsload.h: Likewise.
792         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Define O_DIRECTORY,
793         O_NOFOLLOW, O_CLOEXEC, F_DUPFD_CLOEXEC, F_SETOWN, and F_GETOWN
794         for XPG7.
795         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
796         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
797         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
798         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
799         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
800         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
802 2010-01-07  Roland McGrath  <roland@redhat.com>
804         * elf/elf.h (PN_XNUM): New macro.
806         * elf/dl-sysdep.c (_dl_important_hwcaps): Use NT_GNU_HWCAP instead of
807         literal 2.
809 2010-01-06  Ulrich Drepper  <drepper@redhat.com>
811         * dirent/dirent.h: Fix typo in feature selection macro use.
813 2009-12-15  Maciej W. Rozycki  <macro@codesourcery.com>
815         [BZ #11115]
816         * stdlib/tst-makecontext3.c: New file.
817         * stdlib/Makefile (tests): Add new test.
819         * stdlib/tst-setcontext.c (check_called): Fix a typo.
821 2009-12-17  H.J. Lu  <hongjiu.lu@intel.com>
823         * configure.in: Enable multi-arch by default if the assembler
824         supports gnu_indirect_function symbol type and the architecture
825         supports it.
827 2009-12-23  Ulrich Drepper  <drepper@redhat.com>
829         * include/stdlib.h: Exclude some includes and prototypes if _ISOMAC
830         is defined.
832 2009-12-22  Samuel Thibault  <samuel.thibault@ens-lyon.org>
834         * hurd/hurdioctl.c (_hurd_locked_install_cttyid): Set newctty to
835         MACH_PORT_NULL when id != cttyid.
837 2009-12-20  Samuel Thibault  <samuel.thibault@ens-lyon.org>
839         * sysdeps/mach/hurd/getcwd.c (cleanup): Do not call
840         __mach_port_deallocate on rootdevid.
842 2009-12-17  Martin Schwidefsky  <schwidefsky@de.ibm.com>
844         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Handle
845         R_390_PC32DBL. Remove unneeded R_390_PLT16DBL.
846         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Remove
847         unneeded R_390_PLT16DBL and R_390_PLT32DBL.
849 2009-12-21  Ulrich Drepper  <drepper@redhat.com>
851         [BZ #10992]
852         * sysdeps/unix/sysv/linux/futimens.c: Handle AT_FDCWD.
853         Patch by Eric Blake <ebb9@byu.net>.
855 2009-12-15  Ulrich Drepper  <drepper@redhat.com>
857         [BZ #11093]
858         * bits/poll.h: Define POLLRDNORM, POLLRDBAND, POLLWRNORM, and
859         POLLWRBAND also for POSIX 2008.
860         * sysdeps/unix/sysv/linux/bits/poll.h: Likewise.
861         * sysdeps/unix/sysv/linux/sparc/bits/poll.h: Likewise.
863         * include/link.h (struct link_map): Move l_used into its own word.
864         * elf/dl-lookup.c (_dl_lookup_symbol_x): Only update l_used when it is
865         still zero.
866         * elf/dl-object.c (_dl_new_object): Set dl_used if we know it is
867         never really used.
869 2009-12-13  H.J. Lu  <hongjiu.lu@intel.com>
871         * sysdeps/i386/i686/multiarch/strcspn.S Include <init-arch.h>
872         instead of <ifunc-defines.h>.  Use bit_XXX and index_XXX to
873         check processor feature.
874         * sysdeps/i386/i686/multiarch/strlen.S: Likewise.
875         * sysdeps/i386/i686/multiarch/strspn.S: Likewise.
876         * sysdeps/x86_64/multiarch/init-arch.h (bit_SSE2): New definition.
877         (index_SSE2): Likewise.
879 2009-12-09  H.J. Lu  <hongjiu.lu@intel.com>
881         * sysdeps/x86_64/multiarch/init-arch.h: Include <ifunc-defines.h>
882         if __ASSEMBLER__ is defined.
883         (bit_SSSE3): New.  Defined for __ASSEMBLER__.
884         (bit_SSE4_2): Likewise.
885         (index_SSSE3): Likewise.
886         (index_SSE4_2): Likewise.
887         * sysdeps/x86_64/multiarch/rawmemchr.S: Include <init-arch.h>
888         instead of <ifunc-defines.h>.  Use bit_XXX and index_XXX to
889         check processor feature.
890         * sysdeps/x86_64/multiarch/strchr.S: Likewise.
891         * sysdeps/x86_64/multiarch/strcmp.S: Likewise.
892         * sysdeps/x86_64/multiarch/strcpy.S: Likewise.
893         * sysdeps/x86_64/multiarch/strcspn.S: Likewise.
894         * sysdeps/x86_64/multiarch/strlen.S: Likewise.
895         * sysdeps/x86_64/multiarch/strrchr.S: Likewise.
896         * sysdeps/x86_64/multiarch/strspn.S: Likewise.
898 2009-12-08  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
900         * sysdeps/sh/elf/initfini.c: Update according to generic/initfini.c.
902 2009-12-01  Mike Frysinger  <vapier@gentoo.org>
904         * sysdeps/sh/sh4/fpu/fpu_control.h (__set_fpscr): New prototype.
906 2009-12-11  Ulrich Drepper  <drepper@redhat.com>
908         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Redefine O_SYNC and
909         O_DSYNC to match 2.6.33+ kernels.
910         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
911         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
912         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
913         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
914         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
915         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
917 2009-12-10  Ulrich Drepper  <drepper@redhat.com>
919         [BZ #11000]
920         * nis/nss_nis/nis-hosts.c (_nss_nis_gethostbyname4_r): Always set
921         *herrnop before returning.
922         * nis/nss_nisplus/nisplus-hosts.c (internal_gethostbyname2_r):
923         Likewise.
924         * nss/nss_files/files-hosts.c (_nss_files_gethostbyname4_r): Handle
925         TRYAGAIN errors separately.
926         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix error handling of
927         *name4_r after functions.
929 2009-12-09  Ulrich Drepper  <drepper@redhat.com>
931         [BZ #11046]
932         * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_internal): Fix kernel
933         version check.
935 2009-11-05  Bruno Haible  <bruno@clisp.org>
937         [BZ #11056]
938         * posix/unistd.h (execve, fexecve, execv, execvp, execvpe): Mark the
939         argv argument as non-NULL.
940         (execle, execl, execlp): Mark the first ARG argument as non-NULL.
942 -2009-12-08  Ulrich Drepper  <drepper@redhat.com>
944         * sysdeps/unix/sysv/linux/bits/socket.h: Define mmsghdr and declare
945         recvmmsg.
946         * sysdeps/unix/sysv/linux/syscalls.list: Add entry for recvmmsg.
947         * sysdeps/unix/sysv/linux/Versions: Add recvmmsg for GLIBC_2.12.
949 2009-12-04  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
951         * sysdeps/s390/s390-64/dl-trampoline.S: Add CFI for the call saved
952         registers.
953         * sysdeps/s390/s390-32/dl-trampoline.S: Likewise.
954         * sysdeps/s390/s390-32/s390-mcount.S: Add CFI.
955         * sysdeps/s390/s390-64/s390x-mcount.S: Add CFI.
957 2009-11-30  Ulrich Drepper  <drepper@redhat.com>
959         * sysdeps/unix/sysv/linux/bits/sched.h: Define SCHED_IDLE and
960         SCHED_RESET_ON_FORK.
962 2009-11-26  Ulrich Drepper  <drepper@redhat.com>
964         * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_internal): Avoid code
965         only used on truly ancient kernel if configuration requires a more
966         recent kernel.
968 2009-11-24  Ulrich Drepper  <drepper@redhat.com>
970         [BZ #3662]
971         * stdlib/random_r.c: Fix comments for __initstate_r and __setstate_r.
972         Patch by Christopher Neufeld <glibcbugs0000@cneufeld.ca>.
974         * sysdeps/unix/grantpt.c (pts_name): Take additional parameter,
975         pass it on to __ptsname_internal.
976         (grantpt): Pass stat64 pointer to pts_name.  Remove stat call here.
977         * sysdeps/unix/sysv/linux/ptsname.c (__ptsname_internal): New function.
978         All the code from __ptsname_r but take additional parameter.  Use that
979         instead of pointer to local stat64 variable.
980         (__ptsname_r): Call __ptsname_internal with pointer to local stat64
981         variable.
982         * include/stdlib.h: Declare __ptsname_internal.
984         * sysdeps/unix/grantpt.c (grantpt): Use CLOSE_ALL_FDS is available
985         before the exec.
986         * sysdeps/unix/sysv/linux/grantpt.c: New file.
987         * login/programs/pt_chown.c (main): Don't print message on errors
988         when doing real work.
990         * sysdeps/unix/grantpt.c (grantpt): Only get tty group information
991         once.
993         * csu/elf-init.c (__libc_csu_irel): New function.  Code to perform
994         irel relocations split out from...
995         (__libc_csu_init): ...here.
996         * csu/libc-start.c [!SHARED]: Call __libc_csu_irel early.
998 2009-11-23  Andreas Schwab  <schwab@redhat.com>
1000         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Use struct timespec
1001         for timestamps also if __USE_XOPEN2K8.
1002         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
1003         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
1004         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
1005         * sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
1007 2009-11-22  Ulrich Drepper  <drepper@redhat.com>
1009         * nscd/connections.c (restart): Try harder to re-exec.
1011         * sunrpc/create_xid.c (_create_xid): Reinitialize state after fork.
1013         * sysdeps/unix/sysv/linux/ntp_gettimex.c:  New file.
1014         * sysdeps/unix/sysv/linux/Makefile: Add rules to build ntp_gettimex.
1015         * sysdeps/unix/sysv/linux/Versions: Export ntp_gettimex for GLIBC_2.12.
1016         * sysdeps/unix/sysv/linux/sys/timex.h (ntptimeval): Add tai member and
1017         some placeholders.  Redirect ntp_gettime to ntp_gettimex.
1018         * sysdeps/unix/sysv/linux/ntp_gettime.c: Adjust for header change.
1020         * sysdeps/unix/sysv/linux/sys/timex.h (MOD_TAI, MOD_MICRO, MOD_NANO):
1021         Define.
1022         (STA_RONLY): Add STA_NANO, STA_MODE, and STA_CLK.
1024 2009-11-18  H.J. Lu  <hongjiu.lu@intel.com>
1026         [BZ #10162]
1027         * sysdeps/ia64/memchr.S: Don't use a simple loop on data shorter
1028         than software pipeline.  Properly recover from shorter read.
1030 2009-11-19  Ulrich Drepper  <drepper@redhat.com>
1032         [BZ #10958]
1033         * libio/libio.h (_IO_getwc_unlocked): Check for _wide_data being
1034         initialized before using it.
1035         (_IO_putwc_unlocked): Likewise.
1037         [BZ #10918]
1038         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ISSET_S): Use __const
1039         in cast to not throw away const-ness of parameters.
1040         (__CPU_EQUAL_S): Likewise.
1041         (__CPU_OP_S): Likewise.
1043         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Introduce new symbol
1044         F_OWNER_PGRP and mark F_OWNER_GID obsolete.  The kernel people made
1045         this gratuitous change and we have to keep compatibility.
1046         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1047         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1048         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
1049         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1050         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1051         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1053 2009-11-17  Ulrich Drepper  <drepper@redhat.com>
1055         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Change misleading names
1056         of parameters of sync_file_range.
1057         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1058         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1059         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
1060         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1061         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1062         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1064 2009-11-16  Jakub Jelinek  <jakub@redhat.com>
1066         * sysdeps/unix/sysv/linux/sync_file_range.c (sync_file_range):
1067         Implement using sync_file_range2 syscall if __NR_sync_file_range2
1068         is defined.
1069         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sync_file_range.c: New
1070         file.
1072 2009-11-17  Paolo Bonzini  <bonzini@gnu.org>
1074         * posix/bug-regex30.c: New file.
1075         * posix/Makefile: Add rules to build and run bug-regex30.
1076         * posix/regcomp.c (re_compile_fastmap_iter): Add all multibyte
1077         character lead bytes when there is a range in a COMPLEX_BRACKET.
1078         Reported by Oleg Bylatov.
1080 2009-11-17  Ulrich Drepper  <drepper@redhat.com>
1082         [BZ #10969]
1083         * locale/duplocale.c (__duplocale): Handle LC_GLOBAL_LOCALE special.
1084         * locale/tst-duplocale.c: New file.
1085         * locale/Makefile (tests): Add tst-duplocale.
1087         [BZ #10968]
1088         * locale/langinfo.h (_NL_LOCALE_NAME): Correct definition.
1089         Patch by Bruno Haible <bruno@clisp.org>.
1090         * locale/tst-locname.c: New file.
1091         * locale/Makefile (tests): Add tst-locname.
1093         [BZ #10972]
1094         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Add new MADV_*
1095         constants from recent kernels.
1096         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
1097         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
1098         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
1099         * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
1100         * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
1101         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
1103 2009-11-09  H.J. Lu  <hongjiu.lu@intel.com>
1105         [BZ #10162]
1106         * sysdeps/ia64/memchr.S: Use a simple loop on data shorter than
1107         software pipeline.
1109 2009-11-09  Mike Frysinger  <vapier@gentoo.org>
1111         * sysdeps/unix/sysv/linux/i386/fallocate.c: Include errno.h.
1112         (fallocate): Return ENOSYS if __NR_fallocate is not defined.
1113         * sysdeps/unix/sysv/linux/i386/fallocate64.c: Likewise.
1115 2009-11-06  Mike Frysinger  <vapier@gentoo.org>
1117         * posix/bug-regex29.c: Include stdio.h.
1119 2009-11-14  Ulrich Drepper  <drepper@redhat.com>
1121         [BZ #10939]
1122         * Versions.def: Define GLIBC_2.12 for libc.
1123         * manual/errno.texi: Add ERFKILL entry.
1124         * sysdeps/unix/sysv/linux/Versions: Add new errlist compat entries
1125         for 2.12.
1126         * sysdeps/unix/sysv/linux/bits/errno.h: Define ERFKILL is not done.
1127         * sysdeps/unix/sysv/linux/sparc/bits/errno.h: Likewise.
1129         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Update F_SETOWN_EX and
1130         F_GETOWN_EX definitions according to corrected kernel definitions.
1131         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1132         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1133         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
1134         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1135         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1136         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1138 2009-11-12  Ulrich Drepper  <drepper@redhat.com>
1140         * version.h: Bump for 2.12 development.
1142 2009-11-10  Andreas Schwab  <schwab@redhat.com>
1144         * resolv/mapv4v6hostent.h (map_v4v6_hostent): Return non-zero if
1145         out of buffer space.
1146         * resolv/nss_dns/dns-host.c (getanswer_r): Check for
1147         map_v4v6_hostent running out of space.
1149 2009-11-10  Ulrich Drepper  <drepper@redhat.com>
1151         * string/bits/string3.h (memset): If the second parameter is constant
1152         and zero there is likely no transposition.
1153         Patch by Caolan McNamara <caolanm@redhat.com.
1155 2009-11-04  Philippe De Muyter  <phdm@macqel.be>
1157         * sysdeps/powerpc/fpu/e_sqrt.c: Fix spelling of (Newton-)Raphson.
1158         * sysdeps/powerpc/fpu/e_sqrtf.c: Likewise.
1160 2009-10-30  Holger Hans Peter Freyther  <zecke@selfish.org>
1162         * malloc/memusagestat.c (main): Fix spelling in an error message.
1164 2009-11-01  H.J. Lu  <hongjiu.lu@intel.com>
1166         * elf/dl-sym.c (do_sym): Properly handle STT_GNU_IFUNC symbols.
1167         * elf/ifuncmain3.c (main): Test dlopen STT_GNU_IFUNC symbol.
1169 2009-11-03  Andreas Schwab  <schwab@redhat.com>
1171         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Add
1172         readahead.
1174 2009-11-03  Jakub Jelinek  <jakub@redhat.com>
1176         * sysdeps/powerpc/powerpc64/dl-machine.h (resolve_ifunc): Don't
1177         relocate opd entry when resolving prelink conflicts.
1179 2009-11-04  Jakub Jelinek  <jakub@redhat.com>
1181         * misc/sys/uio.h (preadv, pwritev): Fix type of last argument
1182         when -D_FILE_OFFSET_BITS=64.
1184         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (fallocate): Fix types
1185         of last two arguments when -D_FILE_OFFSET_BITS=64.
1186         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (fallocate): Likewise.
1187         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (fallocate): Likewise.
1188         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (fallocate): Likewise.
1189         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (fallocate): Likewise.
1190         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (fallocate): Likewise.
1191         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (fallocate): Likewise.
1193 2009-11-03  Andreas Schwab  <schwab@linux-m68k.org>
1195         [BZ #4457]
1196         * sysdeps/generic/libgcc_s.h: New file.
1197         * sysdeps/generic/framestate.c: Include it and use LIBGCC_S_SO.
1199 2009-11-01  Ulrich Drepper  <drepper@redhat.com>
1201         * malloc/hooks.c (free_check): Restore locking and call _int_free
1202         appropriately.
1204 2009-10-30  Ulrich Drepper  <drepper@redhat.com>
1206         * version.h (VERSION): Bump for 2.11 release.
1207         * include/features.h (__GLIBC_MINOR__): Bump to 11.
1209         * elf/tst-execstack.c (do_test): Add cast to avoid warning.
1211         * stdio-common/scanf13.c (main): Remove unused variable wbuf.
1213         * stdlib/tst-strtol.c (tests): Mark one more constant as unsigned
1214         to avoid warning.
1215         * stdlib/tst-strtoll.c (tests): Likewise.
1217         [BZ #9986]
1218         * time/strftime_l.c (__strftime_internal): Allow %OC.
1220         * misc/mkostemps.c: New file.
1221         * misc/mkostemps64.c: New file.
1223 2009-10-30  Andreas Schwab  <schwab@redhat.com>
1225         * locale/programs/locale-spec.c: Include <error.h> and
1226         <libintl.h>.
1228         * sysdeps/unix/sysv/linux/readlinkat.c: Fix last change.
1230 2009-10-28  Roland McGrath  <roland@redhat.com>
1232         * Makefile (dist-prepare): New target.
1233         (tag-for-dist): Target removed.
1234         (glibc-%.tar): Pattern rule removed.
1235         (%.tar): New pattern rule, does simple use of git archive.
1236         (dist-version): Remove variable definition.
1237         (dist): Just depend on that.  Add .tar.xz dependency.
1238         If dist-version variable not set on command line, depend on
1239         dist-prepare, re-invoke with dist-version set via git describe.
1241         * Makerules (%.xz): New pattern rule.
1243 2009-10-28  Alan Modra  <amodra@bigpond.net.au>
1245         * elf/ifuncdep2.c: Include ifunc-sel.h.
1246         (global): Delete.
1247         (foo1_ifunc, foo2_ifunc, foo3_ifunc): Use ifunc_sel.
1248         * elf/ifuncmain1.c (global): Delete.
1249         * elf/ifuncmain1vis.c: Likewise.
1250         * elf/ifuncmain2.c: Likewise.
1251         * elf/ifuncmain5.c: Likewise.
1252         * elf/ifuncmod3.c: Likewise.
1253         * elf/ifuncmain6pie.c: Include ifunc-sel.h.
1254         (foo_ifunc): Use ifunc_one.
1255         * elf/ifuncmain7.c: Likewise.
1256         * elf/ifuncmod1.c: Include ifunc-sel.h.
1257         (global): Define protected var.
1258         (foo_ifunc, foo_hidden_ifunc, foo_protected_ifunc): Use ifunc_sel.
1259         * elf/ifuncmod5.c: Likewise.
1260         * sysdeps/generic/elf/ifunc-sel.h: New file.
1261         * sysdeps/powerpc/elf/ifunc-sel.h: New file.
1263 2009-07-30  Alan Modra  <amodra@bigpond.net.au>
1265         * elf/elf.h (R_PPC_NUM, R_PPC64_NUM): Delete unused and incorrect.
1266         (R_PPC_REL16*): Correct comments.
1267         (R_PPC_IRELATIVE, R_PPC64_IRELATIVE, R_PPC64_JMP_IREL): Define.
1268         (R_PPC64_REL16, R_PPC64_REL16_LO, R_PPC64_REL16_HI,
1269          R_PPC64_REL16_HA): Define.
1270         * sysdeps/powerpc/powerpc32/dl-irel.h: New file.
1271         * sysdeps/powerpc/powerpc64/dl-irel.h: New file.
1272         * sysdeps/powerpc/powerpc32/dl-machine.c (__elf_machine_fixup_plt):
1273         Delete unused "reloc" param.
1274         (__process_machine_rela): Handle R_PPC_IRELATIVE.
1275         * sysdeps/powerpc/powerpc32/dl-machine.h (__elf_machine_fixup_plt):
1276         Delete "reloc" param.
1277         (elf_machine_rela): Handle STT_GNU_IFUNC functions and
1278         R_PPC_IRELATIVE.
1279         * sysdeps/powerpc/powerpc64/dl-machine.h (resolve_ifunc): New function.
1280         (elf_machine_rela): Handle STT_GNU_IFUNC functions and new ifunc
1281         relocations.
1283 d2009-10-30  Ulrich Drepper  <drepper@redhat.com>
1285         [BZ #10315]
1286         * sysdeps/gnu/netinet/udp.h: Define UDP_CORK, UDP_ENCAP,
1287         UDP_ENCAP_ESPINUDP_NON_IKE, UDP_ENCAP_ESPINUDP, and
1288         UDP_ENCAP_L2TPINUDP.
1290         [BZ #10349]
1291         * sysdeps/posix/tempname.c (__gen_tempname): Take new second
1292         parameter, specifying length of prefix.
1293         * stdio-common/tempname.c: Likewise.
1294         * include/stdio.h: Adjust prototypes.
1295         * libio/oldtmpfile.c: Adjust caller.
1296         * misc/mkdtemp.c: Likewise.
1297         * misc/mkostemp.c: Likewise.
1298         * misc/mkostemp64.c: Likewise.
1299         * misc/mkstemp.c:  Likewise.
1300         * misc/mkstemp64.c: Likewise.
1301         * misc/mktemp.c: Likewise.
1302         * stdio-common/tempnam.c: Likewise.
1303         * stdio-common/tmpfile.c: Likewise.
1304         * stdio-common/tmpnam.c: Likewise.
1305         * stdio-common/tmpnam_r.c: Likewise.
1306         * misc/mkstemps.c: New file.
1307         * misc/mkstemps64.c: New file.
1308         * stdlib/stdlib.h: Add prototypes.
1309         * misc/Makefile (routines): Add mkstemps and mkstemps64.
1310         * misc/Versions: Export mkstemps and mkstemps64 for GLIBC_2.11.
1312 2009-10-29  Ulrich Drepper  <drepper@redhat.com>
1314         * locale/iso-639.def: Add sml entry.
1316         [BZ #10391]
1317         * resolv/res_send.c (send_dg): Initialize resplen.
1319         [BZ #10446]
1320         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Match sigevent
1321         definition to the kernel's.
1322         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
1324 2009-08-18  Anders Johansson  <ajohansson@novell.com>
1326         * nscd/aicache.c: Fix mixing up dataset and dataset->resp
1327         offsets and record sizes in assert()s and response sending.
1328         * nscd/grpcache.c: Likewise.
1329         * nscd/hstcache.c: Likewise.
1330         * nscd/initgrcache.c: Likewise.
1331         * nscd/pwdcache.c: Likewise.
1333 2009-10-29  Ulrich Drepper  <drepper@redhat.com>
1335         [BZ #10540]
1336         * nss/nss_files/files-hosts.c (_nss_files_gethostbyname4_r): If
1337         /etc/hosts does not exist set errnop and herrnop appropriately.
1338         Patch by Steve Langasek <vorlon@debian.org>.
1340         [BZ #10553]
1341         * malloc/malloc.c (malloc_info): Fix typos in format strings.
1342         Patch by John Sullivan <jsrhbz@kanargh.force9.co.uk>.
1344         [BZ #10564]
1345         * login/utmp_file.c (TIMEOUT): Increase to 10.
1347         [BZ #10609]
1348         * sysdeps/unix/sysv/linux/faccessat.c: Fix handling of empty parameters
1349         for file names in case the syscall is not available.
1350         * sysdeps/unix/sysv/linux/fchmodat.c: Likewise.
1351         * sysdeps/unix/sysv/linux/fchownat.c: Likewise.
1352         * sysdeps/unix/sysv/linux/futimesat.c: Likewise.
1353         * sysdeps/unix/sysv/linux/fxstatat.c: Likewise.
1354         * sysdeps/unix/sysv/linux/fxstatat64.c: Likewise.
1355         * sysdeps/unix/sysv/linux/i386/fchownat.c: Likewise.
1356         * sysdeps/unix/sysv/linux/i386/fxstatat.c: Likewise.
1357         * sysdeps/unix/sysv/linux/linkat.c: Likewise.
1358         * sysdeps/unix/sysv/linux/mkdirat.c: Likewise.
1359         * sysdeps/unix/sysv/linux/openat.c: Likewise.
1360         * sysdeps/unix/sysv/linux/powerpc/fchownat.c: Likewise.
1361         * sysdeps/unix/sysv/linux/readlinkat.c: Likewise.
1362         * sysdeps/unix/sysv/linux/renameat.c: Likewise.
1363         * sysdeps/unix/sysv/linux/symlinkat.c: Likewise.
1364         * sysdeps/unix/sysv/linux/unlinkat.c: Likewise.
1365         * sysdeps/unix/sysv/linux/wordsize-64/fxstatat.c: Likewise.
1366         * sysdeps/unix/sysv/linux/xmknodat.c: Likewise.
1368         [BZ #10643]
1369         * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): If thread
1370         creation filed, remove the request from the 'requests' list and signal
1371         the caller that the request is finished.
1373         [BZ #10692]
1374         * nis/nss_nis/nis-grp.c (internal_nis_getgrent_r): Don't free buffer
1375         in error if batch_read.  Patch by Joe Landers <jlanders@vmware.com>.
1377         [BZ #10713]
1378         * nis/nss_nis/nis-grp.c (internal_nis_endgrent): Start freeing blocks
1379         from intern.start.  Patch by Joe Landers <jlanders@vmware.com>.
1381         [BZ #10780]
1382         * libio/ioputs.c (_IO_puts): Make sure to not return a number which
1383         overflows the int return type.
1385         [BZ #10717]
1386         * malloc/memusagestat.c (main): Fix repairing of trace files.  We also
1387         have to compute maxsize_total, we have to update the variables, and
1388         the also_total handling must happen after the repair.
1390         [BZ #10742]
1391         * nscd/dbg_log.c (dbg_log): Print timestamp before the message text.
1392         Based on patch by Jeffrey Bastian <jbastian@redhat.com>.
1394 2009-10-27  Andreas Schwab  <schwab@redhat.com>
1396         * sysdeps/unix/sysv/linux/getpt.c (__posix_openpt): Make sure
1397         errno is always set when returning unsuccessfully.
1399 2009-10-29  Andreas Schwab  <schwab@redhat.com>
1401         * malloc/memusage.c (update_data): Fix index wraparound handling
1402         so that buffer_cnt is actually reset.
1404 2009-10-29  Ulrich Drepper  <drepper@redhat.com>
1406         [BZ #10784]
1407         * sysdeps/unix/sysv/linux/ttyname.c (getttyname): Always copy name
1408         of the directory we look at into the static buffer if there is one
1409         at the start of the loop.
1411         [BZ #10789]
1412         * sysdeps/generic/netinet/ip.h: Define IPTOS_ENC* and IPTOS_DSCP*
1413         macros.  Patch by Philip Prindeville <philipp@redfish-solutions.com>.
1415         [BZ #10840]
1416         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1417         __ASSUME_F_GETOWN_EX.
1418         * sysdeps/unix/sysv/linux/fcntl.c: Implement F_GETOWN using F_GETOWN_EX
1419         if possible.
1420         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
1422         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Define F_OWNER_*
1423         and f_owner_ex.
1424         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1425         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1426         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
1427         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1428         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1429         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1431         [BZ #10847]
1432         * sysdeps/gnu/getutmp.c: Allow compatibility code to play around with
1433         getutmpx symbol.
1435         [BZ #10823]
1436         * resolv/res_send.c (__libc_res_nsend): Fix copying of IPv4 server
1437         addresses.  Patch by Petar Bogdanovic <petar@smokva.net>.
1439 2009-10-24  Joseph Myers  <joseph@codesourcery.com>
1441         * sysdeps/ieee754/ldbl-128/w_expl.c: Add hidden_def (__expl).
1443 2009-10-27  Jakub Jelinek  <jakub@redhat.com>
1445         [BZ #10817]
1446         * math/w_coshl.c (__coshl): Use __finitel instead of __finite.
1447         Reported by Ray Chason.
1449 2009-10-21  H.J. Lu  <hongjiu.lu@intel.com>
1451         * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
1452         strend-sse4.
1453         * sysdeps/x86_64/multiarch/strchr.S: New file.
1454         * sysdeps/x86_64/multiarch/strend-sse4.S: New file.
1455         * sysdeps/x86_64/multiarch/strrchr.S: New file.
1457 2009-10-21  Andreas Schwab  <schwab@redhat.com>
1459         * elf/dl-sym.c (do_sym): Resolve STT_GNU_IFUNC symbols.
1461 2009-10-19  Andreas Schwab  <schwab@redhat.com>
1463         * include/math.h: Add hidden protos for __exp/__expf/__expl.
1464         * sysdeps/ieee754/dbl-64/w_exp.c: Add hidden alias.
1465         * sysdeps/ieee754/flt-32/w_expf.c: Likewise.
1466         * sysdeps/ieee754/ldbl-96/w_expl.c: Likewise.
1467         * sysdeps/i386/fpu/s_expm1.S: Call __exp to handle overflow.
1468         * sysdeps/i386/fpu/s_expm1f.S: Call __expf to handle overflow.
1469         * sysdeps/i386/fpu/s_expm1l.S: Call __expl instead of
1470         __ieee751_expl to handle overflow.
1472 2009-10-14  David S. Miller  <davem@davemloft.net>
1474         * sysdeps/unix/sysv/linux/sparc/sparc32/____longjmp_chk.S: New file.
1475         * sysdeps/unix/sysv/linux/sparc/sparc64/____longjmp_chk.S: New file.
1477 2009-10-13  Andreas Schwab  <schwab@redhat.com>
1479         * csu/elf-init.c (__libc_csu_init): Run preinit array even if
1480         !USE_MULTIARCH.
1482 2009-10-08  Ulrich Drepper  <drepper@redhat.com>
1484         [BZ #10730]
1485         * stdlib/random_r.c (__initstate_r): Remove duplicate __set-errno.
1486         Patch in part by Steve Ward <planet36@gmail.com>.
1488         [BZ #10731]
1489         * stdlib/rand_r.c: Fix typo.
1491         * po/cs.po: Update from translation team.
1493 2009-10-06  Andreas Schwab  <schwab@redhat.com>
1495         * elf/dl-load.c (_dl_map_object_from_fd): Close fd before
1496         returning if RTLD_NOLOAD.
1498 2009-10-06  Roland McGrath  <roland@redhat.com>
1500         * sysdeps/x86_64/multiarch/strstr-c.c
1501         [! SHARED]: Omit libc_hidden_builtin_def fiddling.
1503         * sysdeps/x86_64/multiarch/strcasestr-c.c: Remove
1504         libc_hidden_builtin_def fiddling, does not apply to strcasestr at all.
1506         * sysdeps/x86_64/multiarch/init-arch.h
1507         [NOT_IN_libc] (__get_cpu_features): Define it as a macro.
1508         (HAS_CPU_FEATURE): New macro.
1509         (HAS_SSE2, HAS_POPCOUNT, HAS_SSE4_2, HAS_FMA): Use it.
1510         * sysdeps/x86_64/multiarch/init-arch.c
1511         (__get_cpu_features): #undef it before definition.
1513 2009-10-05  Andreas Schwab  <schwab@redhat.com>
1515         * locale/C-time.c: Revert week-1stday back to 19971130 and set
1516         first_weekday to 1 and first_workday to 2.
1518 2009-10-01  Ulrich Drepper  <drepper@redhat.com>
1520         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Define F_SETOWN_EX and
1521         F_GETOWN_EX.
1522         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1523         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1524         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
1525         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1526         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1527         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1529 2009-09-28  Andreas Schwab  <schwab@redhat.com>
1531         * stdio-common/printf_fp.c: Check for and avoid integer overflows.
1532         * stdio-common/vfprintf.c: Likewise.
1534 2009-09-27  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1536         * sysdeps/mach/hurd/mkdirat.c: Include <hurd/fd.h>.
1537         (mkdirat): Call __directory_name_split_at instead of
1538         __directory_name_split.
1540 2009-09-28  Ulrich Drepper  <drepper@redhat.com>
1542         * locale/programs/locale-spec.c (locale_special): If nothing matches
1543         fail with an appropriate message.
1545 2009-09-10  H.J. Lu  <hongjiu.lu@intel.com>
1547         * configure.in: Exclude binutils 2.X.  Support binutils 2.100
1548         and XX.
1550 2009-09-25  Andreas Schwab  <schwab@redhat.com>
1552         * elf/dl-reloc.c (RESOLVE_MAP): Always pass
1553         DL_LOOKUP_ADD_DEPENDENCY to _dl_lookup_symbol_x.
1555 2009-09-28  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1557         * bits/termios.h [__USE_UNIX98] (IXANY): Define macro.
1559 2009-09-20  Andreas Schwab  <schwab@linux-m68k.org>
1561         * iconvdata/iso646.c (gconv_init): Correctly initialize the
1562         character size elements in step data.
1564 2009-09-20  Ulrich Drepper  <drepper@redhat.com>
1566         * po/hu.po: Update from translation team.
1567         * po/vi.po: Likewise.
1569 2009-09-19  Roland McGrath  <roland@redhat.com>
1571         * libio/wfileops.c (_IO_wfile_seekoff): Remove unused variables.
1573 2009-09-15  Roland McGrath  <roland@redhat.com>
1575         * aclocal.m4 (GLIBC_PROVIDES): Add _AS_ECHO_PREPARE.
1576         * nptl/sysdeps/pthread/configure: Regenerated.
1577         * nptl/sysdeps/x86_64/configure: Regenerated.
1578         * sysdeps/unix/sysv/linux/configure: Regenerated.
1579         * sysdeps/x86_64/elf/configure: Regenerated.
1581         * Makefile (autoconf-it): Set execute bit only on top-level configure.
1583         * configure.in: Let add-ons set $libc_add_on_config_subdirs to have
1584         the effect of AC_CONFIG_SUBDIRS relative to the add-on directory.
1585         * aclocal.m4 (GLIBC_PROVIDES): Add AC_CONFIG_SUBDIRS.
1586         * configure: Regenerated.
1588 2009-09-09  Ulrich Drepper  <drepper@redhat.com>
1590         * posix/getconf.c (main): Handle -- on command line.
1592 2009-09-05  H.J. Lu  <hongjiu.lu@intel.com>
1594         * configure.in: Support binutils 2.100 and 3.0.
1596 2009-09-08  Jakub Jelinek  <jakub@redhat.com>
1598         * sysdeps/s390/s390-32/____longjmp_chk.c: Removed.
1599         * sysdeps/s390/s390-64/____longjmp_chk.c: Removed.
1600         * sysdeps/unix/sysv/linux/s390/s390-32/____longjmp_chk.c: New file.
1601         * sysdeps/unix/sysv/linux/s390/s390-64/____longjmp_chk.c: New file.
1603 2009-09-07  Ulrich Drepper  <drepper@redhat.com>
1605         * locale/programs/ld-collate.c (struct locale_collate_t): Add
1606         unnamed_section_defined field.
1607         (collate_read): Test and set unnamed_section_defined.
1609         * posix/getconf.c (vars): Handle POSIX2_LINE_MAX in addition to
1610         _POSIX2_LINE_MAX.
1612 2009-09-04  H.J. Lu  <hongjiu.lu@intel.com>
1614         * configure.in: Support binutils 2.20.
1616 2009-09-03  Ulrich Drepper  <drepper@redhat.com>
1618         * sysdeps/i386/i686/multiarch/strstr-c.c (__strstr_sse42,
1619         __strstr_ia32): Add attribute_hidden.
1621 2009-09-01  Andreas Schwab  <schwab@redhat.com>
1623         * hesiod/nss_hesiod/hesiod-grp.c (internal_gid_from_group): Fix
1624         parsing of group entry.
1626 2009-09-02  Andreas Schwab  <schwab@redhat.com>
1628         * libio/wfileops.c (_IO_wfile_seekoff): Account for readahead in
1629         external buffer.  Always discard readahead in internal buffer.
1630         * libio/Makefile (tests): Add bug-wsetpos.
1631         * libio/bug-wsetpos.c: New file.
1633 2009-09-02  Jakub Jelinek  <jakub@redhat.com>
1635         * sysdeps/x86_64/multiarch/strstr-c.c (__strstr_sse42, __strstr_sse2):
1636         Add attribute_hidden.
1637         * sysdeps/x86_64/multiarch/strcasestr-c.c (__strcasestr_sse42,
1638         __strcasestr_sse2): Likewise.
1639         * sysdeps/x86_64/multiarch/s_fma.c (__fma_sse2): Add attribute_hidden.
1640         (__fma_fma): Make static.
1641         * sysdeps/x86_64/multiarch/s_fmaf.c (__fmaf_sse2): Add attribute_hidden.
1642         (__fmaf_fma): Make static.
1644 2009-08-31  Andreas Schwab  <schwab@redhat.com>
1646         * libio/wfileops.c (_IO_wfile_seekoff): Remove dead code and
1647         reformulate in-buffer optimisation check to match code in
1648         _IO_new_file_seekoff.
1650 2009-08-31  Joshua W. Boyer  <jwboyer@linux.vnet.ibm.com>
1652         * sysdeps/powerpc/powerpc32/power6/memcpy.S: Change srdi instruction
1653         to srwi in 32-bit memcpy for power6.
1655 2009-09-01  Andreas Schwab  <schwab@redhat.com>
1657         * include/stdio.h: Declare hidden proto for fflush.
1658         * libio/iofflush.c: Add hidden weak alias for fflush.
1660 2009-09-01  Jakub Jelinek  <jakub@redhat.com>
1662         * sysdeps/x86_64/fpu/bits/mathinline.h: Include bits/wordsize.h.
1663         (__signbitf, __signbit): Only use SSE inline asm for 64-bit.
1665 2009-08-31  Andreas Schwab  <schwab@redhat.com>
1667         * sysdeps/x86_64/fpu/bits/mathinline.h: Use __asm instead of asm.
1669 2009-08-31  Ulrich Drepper  <drepper@redhat.com>
1671         [BZ #10560]
1672         * malloc/malloc.c: Add local assert definition to avoid problems with
1673         memory allocation in the real one.
1675 2009-08-27  H.J. Lu  <hongjiu.lu@intel.com>
1677         * sysdeps/i386/i686/multiarch/init-arch.c (ENABLE_SSSE3_ON_ATOM):
1678         Removed.
1679         * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Don't
1680         turn off SSSE3 on Atom.
1682 2009-08-28  Ulrich Drepper  <drepper@redhat.com>
1684         * stdlib/tst-strtol.c (tests): More tests.
1685         * stdlib/tst-strtoll.c (tests): Likewise.
1687 2009-08-26  Ulrich Drepper  <drepper@redhat.com>
1689         * sysdeps/ieee754/dbl-64/wordsize-64/s_isinf.c: New file.
1691         * sysdeps/ieee754/dbl-64/wordsize-64/s_isnan.c: New file.
1693 2009-08-25  Ulrich Drepper  <drepper@redhat.com>
1695         * sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c: Add llround aliases.
1696         * sysdeps/ieee754/dbl-64/wordsize-64/s_llround.c: New file.
1698         * sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c: New file
1700         * sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c: New file.
1702         * sysdeps/ieee754/dbl-64/wordsize-64/s_round.c: New file.
1704 2009-08-25  Joseph Myers  <joseph@codesourcery.com>
1706         * math/s_fdiml.c (__fdiml): Use fpclassify instead of fpclassifyl.
1708 2009-08-25  Ulrich Drepper  <drepper@redhat.com>
1710         * sysdeps/x86_64/fpu/s_scalbln.c: New file.
1711         * sysdeps/x86_64/fpu/s_scalbn.c: New file.
1713         * sysdeps/ieee754/dbl-64/wordsize-64/s_scalbn.c: New file.
1715         * sysdeps/x86_64/fpu/s_signbit.S: New file.
1716         * sysdeps/x86_64/fpu/s_signbitf.S: New file.
1718         * sysdeps/ieee754/dbl-64/wordsize-64/s_lround.c: New file.
1719         * sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c: New file.
1721         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Remove
1722         leftover YMM_SIZE definition.
1724 2009-08-24  Ulrich Drepper  <drepper@redhat.com>
1726         * math/math_private.h (ieee_double_shape_type): Add uint64_t word to
1727         union.
1728         (EXTRACT_WORDS64, INSERT_WORDS64): Define.
1729         * sysdeps/x86_64/fpu/math_private.h (EXTRACT_WORDS64, INSERT_WORDS64):
1730         Redefine.
1731         * sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c: New file.
1733         * sysdeps/x86_64/fpu/math_private.h: Add specialized GET_FLOAT_WORD
1734         and SET_FLOAT_WORD definitions.
1736 2009-08-24  Roland McGrath  <roland@redhat.com>
1738         * sysdeps/unix/syscall-template.S: New file.
1739         * sysdeps/unix/make-syscalls.sh: Generate rules to use it.
1740         * sysdeps/unix/Makefile (omit-deps): Do not omit syscall stubs' deps.
1741         (compile-syscall): Pass mkdep and -g options as normal.
1742         (s-proto.d, s-proto-cancel.d): Don't "-include" these.
1743         (common-generated): Don't add them here.
1745 2009-08-24  Ulrich Drepper  <drepper@redhat.com>
1747         * math/s_fdim.c: In case of overflows set errno.
1748         * math/s_fdimf.c: Likewise.
1749         * math/s_fdiml.c: Likewise.
1751         * math/math.h: Define math_errhandling of __FAST_MATH__ is not defined.
1752         * sysdeps/i386/fpu/bits/mathinline.h: Undefine math_errhandling if we
1753         are using the inline optimizations.
1755         * sysdeps/x86_64/fpu/bits/mathinline.h (__signbit): Optimize.
1756         (__signbitf): Likewise.
1758 2009-08-23  Ulrich Drepper  <drepper@redhat.com>
1760         * posix/regcomp.c (parse_dup_op): Verify the expression is correctly
1761         terminated.
1762         * posix/Makefile (tests): Add bug-regex29.
1763         * posix/bug-regex29.c: New file.
1765         * posix/unistd.h: Define _POSIX_VERSION and _POSIX2_* correctly if
1766         older POSIX versions are selected.
1768         * stdio-common/printf_fp.c: ISO C expects to print the sign of NaN
1769         as well.
1770         * stdio-common/printf_fphex.c: Likewise.
1771         * stdio-common/tstdiomisc.c: Add more tests.
1773         * locale/locale.h: Include xlocale.h and the thread-local locale
1774         declarations for XPG7, not XPG6.
1776 2009-08-21  Andreas Schwab  <schwab@redhat.com>
1778         * sysdeps/powerpc/powerpc32/____longjmp_chk.S: Removed.
1779         * sysdeps/powerpc/powerpc64/____longjmp_chk.S: Removed.
1780         * sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S: New file.
1781         * sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S: New file.
1782         * sysdeps/powerpc/powerpc32/__longjmp-common.S: Move CHECK_SP earlier.
1783         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
1785 2009-08-20  Roland McGrath  <roland@redhat.com>
1787         * sysdeps/generic/elf/backtracesyms.c (__backtrace_symbols):
1788         Use l_addr instead of l_map_start (dli_fbase).
1789         Print "FILE([+-]OFFSET) [ADDRESS]" with the file-relative
1790         address when there is no proximate symbol.
1791         * sysdeps/generic/elf/backtracesymsfd.c (__backtrace_symbols_fd):
1792         Likewise.
1794 2009-08-16  Ulrich Drepper  <drepper@redhat.com>
1796         * scripts/gen-as-const.awk: Fix test for 64-bit platform.
1798 2009-08-14  Ulrich Drepper  <drepper@redhat.com>
1800         * test-skeleton.c (signal_handler): Renamed from timeout_handler.
1801         Also handle SIGINT.  In that case only do the cleanup and then
1802         re-raise the signal.
1803         (main): Install handler for SIGINT.
1805 2009-08-10  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
1807         * stdlib/longlong.h [__sh__] (udiv_qrnnd, sub_ddmmss): Add "t" to
1808         clobber list.
1810 2009-08-01  H.J. Lu  <hongjiu.lu@intel.com>
1812         * elf/Makefile (distribute): Add tst-audit6.c tst-auditmod6a.c
1813         tst-auditmod6b.c tst-auditmod6c.c tst-audit7.c tst-auditmod7a.c
1814         tst-auditmod7b.c.
1815         (tests): Add tst-audit6 tst-audit7.
1816         (modules-names): Add st-auditmod6a tst-auditmod6b tst-auditmod6c
1817         tst-auditmod7a tst-auditmod7b.
1818         ($(objpfx)tst-audit6): New.
1819         ($(objpfx)tst-audit6.out): Likewise.
1820         ($(objpfx)tst-audit7): Likewise.
1821         ($(objpfx)tst-audit7.out): Likewise.
1822         (tst-audit6-ENV): Likewise.
1823         (tst-audit7-ENV): Likewise.
1824         (CFLAGS-tst-auditmod6b.c): Likewise.
1825         (CFLAGS-tst-auditmod6c.c): Likewise.
1826         (CFLAGS-tst-auditmod7b.c): Likewise.
1827         * elf/tst-audit6.c: New file.
1828         * elf/tst-audit7.c: New file.
1829         * elf/tst-auditmod6a.c: New file.
1830         * elf/tst-auditmod6b.c: New file.
1831         * elf/tst-auditmod6c.c: New file.
1832         * elf/tst-auditmod7a.c: New file.
1833         * elf/tst-auditmod7b.c: New file.
1834         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Move
1835         saving and restoring SSE/AVX registers to ...
1836         * sysdeps/x86_64/dl-trampoline.h: This.  New file.
1838 2009-08-07  H.J. Lu  <hongjiu.lu@intel.com>
1840         * sysdeps/i386/i686/multiarch/strcspn.S (STRCSPN): Use PIC
1841         only if SHARED is defined.
1842         * sysdeps/i386/i686/multiarch/strspn.S (strspn): Likewise.
1844 2009-08-03  Jim Meyering  <meyering@redhat.com>
1846         * sysdeps/i386/configure.in: Use AC_HEADER_CHECK.
1848 2009-08-08  Ulrich Drepper  <drepper@redhat.com>
1850         * sysdeps/x86_64/multiarch/strlen.S: Move SSE4.2 version into the same
1851         section as the other functions for this architecture.
1852         * sysdeps/x86_64/multiarch/rawmemchr.S: Likewise.
1854 2009-08-07  Ulrich Drepper  <drepper@redhat.com>
1856         * sysdeps/x86_64/strcmp.S: Add support to compile with
1857         USE_SSSE3.  In this case palignr is used.
1858         * sysdeps/x86_64/multiarch/strcmp.S (strcmp): If SSE4.2 is not
1859         available but SSSE3 is, pick __str{,n}cmp_ssse3.
1860         * sysdeps/x86_64/multiarch/Makefile [subdir=string] (sysdep_routines):
1861         Add strcmp-ssse3 and strncmp-ssse3.
1862         * sysdeps/x86_64/multiarch/strcmp-ssse3.S: New file.
1863         * sysdeps/x86_64/multiarch/strncmp-ssse3.S: New file.
1865         * sysdeps/x86_64/multiarch/strcspn-c.c (STRCSPN_SSE42): Avoid
1866         warning through fake initialization.
1868 2009-08-07  H.J. Lu  <hongjiu.lu@intel.com>
1870         * sysdeps/i386/i686/multiarch/strlen.S (ENTRY): Add the missing "; \".
1872 2009-08-07  Andreas Schwab  <schwab@redhat.com>
1874         * elf/dl-lookup.c (do_lookup_x): Enter correct name into table of
1875         unique symbols.
1877 2009-08-05  H.J. Lu  <hongjiu.lu@intel.com>
1879         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Properly use
1880         EBX from EAX = 1.  Handle EAX = 11.
1882 2009-08-07  Andreas Schwab  <schwab@redhat.com>
1884         * Makefile (TAGS): Use separate sed -e expressions to avoid \
1885         inside ''.
1887 2009-08-03  H.J. Lu  <hongjiu.lu@intel.com>
1889         * sysdeps/i386/i686/multiarch/strcspn.S: Add comments for no
1890         hidden IFUNC functions.
1891         * sysdeps/i386/i686/multiarch/strspn.S: Likewise.
1893         * sysdeps/i386/i686/multiarch/strlen.S: New file.
1895         * sysdeps/i386/i686/multiarch/Makefile [subdir=string]
1896         (sysdep_routines): Add strcspn-c, strpbrk-c, strspn-c, strstr-c, and
1897         strcasestr-c.
1898         (CFLAGS-strcspn-c.c): Define.
1899         (CFLAGS-strpbrk-c.c): Define.
1900         (CFLAGS-strspn-c.c): Define.
1901         (CFLAGS-strstr.c): Define.
1902         (CFLAGS-strcasestr.c): Define.
1903         * sysdeps/i386/i686/multiarch/strcspn-c.c: New file.
1904         * sysdeps/i386/i686/multiarch/strcspn.S: New file.
1905         * sysdeps/i386/i686/multiarch/strpbrk-c.c: New file.
1906         * sysdeps/i386/i686/multiarch/strpbrk.S: New file.
1907         * sysdeps/i386/i686/multiarch/strspn-c.c: New file.
1908         * sysdeps/i386/i686/multiarch/strspn.S: New file.
1909         * sysdeps/i386/i686/multiarch/strstr-c.c: New file.
1910         * sysdeps/i386/i686/multiarch/strstr.c: New file.
1911         * sysdeps/i386/i686/multiarch/strcasestr-c.c: New file.
1912         * sysdeps/i386/i686/multiarch/strcasestr.c: New file.
1913         * sysdeps/x86_64/multiarch/strcspn-c.c (STRCSPN_SSE42): Use
1914         -16L instead of 0xfffffffffffffff0L.
1915         * sysdeps/x86_64/multiarch/strspn-c.c (__strspn_sse42): Likewise.
1917 2009-08-02  Ulrich Drepper  <drepper@redhat.com>
1919         * sysdeps/i386/configure.in: Add test for <cpuid.h>.
1921 2009-07-31  Ulrich Drepper  <drepper@redhat.com>
1923         * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S (longjmp_msg): Yet
1924         another rewrite.  Much smaller and faster.
1925         * sysdeps/unix/sysv/linux/i386/____longjmp_chk.S: Likewise.
1927         * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S (longjmp_msg): Get
1928         ss_flags from the correct location.
1930 2009-07-31  H.J. Lu  <hongjiu.lu@intel.com>
1932         * sysdeps/i386/i686/Makefile (sysdep_routines): Add cacheinfo.
1933         * sysdeps/i386/i686/cacheinfo.c: New file.
1934         * sysdeps/i386/i686/multiarch/Makefile: New file.
1935         * sysdeps/i386/i686/multiarch/ifunc-defines.sym: New file.
1936         * sysdeps/i386/i686/multiarch/init-arch.c: New file.
1937         * sysdeps/i386/i686/multiarch/init-arch.h: New file.
1938         * sysdeps/i386/i686/multiarch/sched_cpucount.c: New file.
1939         * sysdeps/unix/sysv/linux/i386/i686/sysconf.c: New file.
1940         * sysdeps/x86_64/cacheinfo.c: Include <cpuid.h>.
1941         (__cpuid_count): New. Provide the default.
1942         (__x86_64_prefetchw): Define only if DISABLE_PREFETCHW is not defined.
1943         (__x86_64_preferred_memory_instruction): Define only if
1944         DISABLE_PREFERRED_MEMORY_INSTRUCTION is not defined.
1945         (intel_check_word): Use __cpuid.
1946         (handle_intel): Likewise.
1947         (handle_amd): Likewise.
1948         (__cache_sysconf): Likewise.
1949         (init_cacheinfo): Updated.  Use __cpuid and __cpuid_count.
1950         (__cache_sysconf): Likewise.
1951         (init_cacheinfo): Updated.  Use __cpuid and __cpuid_count.
1952         * sysdeps/x86_64/multiarch/init-arch.c: Include <cpuid.h>.
1953         (get_common_indeces): Use __cpuid.
1954         (__init_cpu_features): Likewise.  Disable SSSE3 on Atom only
1955         if ENABLE_SSSE3_ON_ATOM is not defined.
1956         * sysdeps/x86_64/multiarch/init-arch.h (HAS_SSE2): Define.
1957         * sysdeps/x86_64/multiarch/sched_cpucount.c (POPCNT): Use
1958         popcnt instead of popcntq.
1960 2009-07-31  Jakub Jelinek  <jakub@redhat.com>
1962         * malloc/Makefile (CFLAGS-obstack.c): Add $(uses-callbacks).
1964 2009-07-30  Ulrich Drepper  <drepper@redhat.com>
1966         * sysdeps/unix/sysv/linux/i386/____longjmp_chk.S: New file.
1967         * sysdeps/i386/____longjmp_chk.S: Remove all code.  This is now a file
1968         which always causes a compile error.
1970         * sysdeps/i386/__longjmp.S: Remove bound-checking pointer support.
1972         * sysdeps/unix/sysv/linux/x86_64/____longjmp_chk.S: New file.  Content
1973         comes from...
1974         * sysdeps/x86_64/____longjmp_chk.S: ...here.  This is now a file
1975         which always causes a compile error.
1977         * debug/Makefile (tests): Add tst-longjmp_chk2.
1978         * debug/tst-longjmp_chk2.c: New file.
1980         * sysdeps/x86_64/__longjmp.S: Remove CHECK_RSP handling.  Fix CFI.
1981         Remove incorrect use of BP_SYM.
1982         * sysdeps/x86_64/____longjmp_chk.S: Rewrite.  Complete implementation
1983         here now since it is more complex than just a simple check.
1985         * sysdeps/ia64/backtrace.c (backtrace_helper): Stop backtrace when
1986         we make no more progress.
1988 2009-07-29  Ulrich Drepper  <drepper@redhat.com>
1990         * math/s_fma.c: Don't define alias if __fma is a macro.
1991         * math/s_fmaf.c: Likewise.
1992         * sysdeps/x86_64/multiarch/s_fma.c: New file.
1993         * sysdeps/x86_64/multiarch/s_fmaf.c: New file.
1994         Partially based on a patch by H.J. Lu <hongjiu.lu@intel.com>.
1996         * sysdeps/x86_64/multiarch/init-arch.h (__get_cpu_features): Declare.
1997         (HAS_POPCOUNT, HAS_SSE4_2): Add variants which work outside libc.
1998         New macro HAS_FMA.
1999         * sysdeps/x86_64/multiarch/init-arch.c (__get_cpu_features): New
2000         function.
2001         * include/libc-symbols.h (libm_ifunc): Define.
2002         * sysdeps/x86_64/multiarch/Versions: New file.
2004         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Improve CFI.
2006 2009-07-28  H.J. Lu  <hongjiu.lu@intel.com>
2008         * sysdeps/x86_64/dl-trampoline.S: Properly restore AVX registers.
2010 2009-07-29  Ulrich Drepper  <drepper@redhat.com>
2012         * elf/dl-runtime.c (_dl_fixup): Indicate before _dl_lookup_symbol_x
2013         call that registers used in calling conventions need to be preserved.
2014         * elf/dl-lookup.c (do_lookup_x): Use RTLD_*_FOREIGN_CALL macros
2015         to preserve register content if necessary.
2016         * sysdeps/x86_64/dl-trampoline.S (_dl_x86_64_save_sse): New function.
2017         (_dl_x86_64_restore_sse): New function.
2018         * sysdeps/x86_64/tst-xmmymm.sh: There is now one more function that
2019         is allowed to modify xmm/ymm registers.
2021         * stdio-common/scanf15.c: Undefine _LIBC.  We want to test from an
2022         application's perspective.
2023         * stdio-common/scanf17.c: Likewise.
2025 2009-07-28  Ulrich Drepper  <drepper@redhat.com>
2027         * csu/libc-tls.c (__libc_setup_tls) [TLS_TCB_AT_TP]: Don't add TCB
2028         size to memsz.
2029         (init_static_tls) [TLS_TCB_AT_TP]: Add it to GL(dl_tls_static_size)
2030         here.
2031         * elf/dl-reloc.c (_dl_try_allocate_static_tls): Compute freebytes in
2032         two steps to catch bugs.
2034 2009-07-27  Ulrich Drepper  <drepper@redhat.com>
2036         * sysdeps/x86_64/tst-xmmymm.sh: Refine testing.  The script now
2037         determines which files are used in runtime lookups and only checks
2038         those for SSE use.
2039         * sysdeps/x86_64/rtld-memchr.c: Removed.  Not needed with refined
2040         testing.
2041         * sysdeps/x86_64/rtld-rawmemchr.c: Removed.
2042         * sysdeps/x86_64/multiarch/rtld-rawmemchr.c: Removed
2043         * sysdeps/x86_64/Makefile: Emit warning that tst-xmmymm.sh might
2044         take a while.
2046         * elf/dl-open.c: Move _dl_scope_free to...
2047         * elf/dl-scope.c: ...here.  New file.
2048         * elf/Makefile (dl-routines): Add scope.
2050         * resolv/resolv.h (RES_USE_DNSSEC): Define.
2051         * resolv/res_debug.c (p_option): Handle RES_USE_EDNS0 and
2052         RES_USE_DNSSEC.
2053         * resolv/res_mkquery.c (__res_nopt): Set flags for RES_USE_DNSSEC.
2054         * resolv/res_query.c (__libc_res_nquery): Handle RES_USE_DNSSEC in
2055         all the places we handled RES_USE_EDNS0 only before.
2056         Patch by Adam Tkac <atkac@redhat.com>.
2058 2009-07-27  Jakub Jelinek  <jakub@redhat.com>
2060         * elf/dl-lookup.c (do_lookup_x): Fix check for table more than
2061         3/4 full.  Pass size + 1 rather than size to _dl_higher_prime_number.
2062         Update size when reallocating.
2064 2009-07-26  Ulrich Drepper  <drepper@redhat.com>
2066         * sysdeps/x86_64/tst-xmmymm.sh: New file.  Check whether any of the
2067         functions used in ld.so modify xmm/ymm registers.
2068         * sysdeps/x86_64/Makefile:  Hook new test up.
2069         * sysdeps/x86_64/rtld-memchr.c: New file.
2070         * sysdeps/x86_64/rtld-memcmp.c: New file.
2071         * sysdeps/x86_64/rtld-rawmemchr.c: New file.
2072         * sysdeps/x86_64/rtld-strchr.S: New file.
2073         * sysdeps/x86_64/rtld-strlen.S: New file.
2074         * sysdeps/x86_64/multiarch/rtld-rawmemchr.c: New file.
2075         * sysdeps/x86_64/multiarch/rtld-strlen.S: New file.
2077 2009-07-26  H.J. Lu  <hongjiu.lu@intel.com>
2079         * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Remove
2080         strncmp-c.
2081         * sysdeps/x86_64/multiarch/strcmp.S (aftertail): Removed.
2082         (exit): Likewise.
2083         (Byte1): Likewise.
2084         (Byte2): Likewise.
2085         (Byte3): Likewise.
2086         (Byte4): Likewise.
2087         (Byte5): Likewise.
2088         (Byte6): Likewise.
2089         (next_8_bytes): Likewise.
2090         (Byte0): Remove commented out codes.
2091         (unaligned_table): Align jump table at 8 bytes.
2092         Add _sse4_2 to all labels.  Always include "../strcmp.S".
2093         * sysdeps/x86_64/multiarch/strncmp-c.c: Removed.
2094         * sysdeps/x86_64/strcmp.S: Add SSE2 support.
2095         * sysdeps/x86_64/strncmp.S: New file.
2097 2009-07-26  Ulrich Drepper  <drepper@redhat.com>
2099         [BZ #10422]
2100         * sysdeps/unix/sysv/linux/eventfd.c: Add compatibility for old
2101         kernels, dropped when eventfd2 support was added.
2102         * sysdeps/unix/sysv/linux/signalfd.c: Add compatibility for old
2103         kernels, dropped when signalfd4 support was added.
2104         * sysdeps/unix/sysv/linux/kernel-features.h: More CLOEXEC syscalls
2105         added, name them.
2107         [BZ #10452]
2108         * resolv/res_send.c (send_dg): Pass full SERVFAIL, NOTIMP, REFUSED
2109         replies up.
2111         * elf/elf.h: Define NT_GNU_GOLD_VERSION.
2113 2009-07-25  Ulrich Drepper  <drepper@redhat.com>
2115         * sysdeps/x86_64/multiarch/strcmp.S: Some more optimizations for
2116         modern processor versions.  Patch by H.J. Lu <hongjiu.lu@intel.com>.
2118         [BZ #10448]
2119         * sysdeps/posix/getaddrinfo.c (gaih_inet): If NSS module contains no
2120         callback we must touch the status to avoid using stale value.
2122         * sysdeps/x86_64/multiarch/strcmp.S: Exclude unused code from being
2123         compiled in.
2125 2009-07-24  Ulrich Drepper  <drepper@redhat.com>
2127         * sysdeps/unix/sysv/linux/configure.in: Don't automatically include
2128         /lib/modules/* headers anymore.  We have sane headers in the standard
2129         place now.
2131 2009-06-16  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
2133         * sysdeps/s390/dl-procinfo.c (_dl_s390_cap_flags): "hpage",
2134         "etf3enh" and "highgprs" added.
2135         (_dl_s390_platforms): "z10" added.
2136         * sysdeps/s390/dl-procinfo.h (_DL_HWCAP_COUNT, _DL_PLATFORMS_COUNT):
2137         Increased for the new entries.
2138         (HWCAP enum): HWCAP_S390_HPAGE, HWCAP_S390_ETF3EH and
2139         HWCAP_S390_HIGH_GPRS added.
2141         * sysdeps/s390/s390-64/Makefile: Adjusted to build the new modules.
2142         * sysdeps/s390/s390-64/iso-8859-1_cp037_z900.c: New file.
2143         * sysdeps/s390/s390-64/utf16-utf32-z9.c: New file.
2144         * sysdeps/s390/s390-64/utf8-utf16-z9.c: New file.
2145         * sysdeps/s390/s390-64/utf8-utf32-z9.c: New file.
2147 2009-07-23  Ulrich Drepper  <drepper@redhat.com>
2149         * sysdeps/x86_64/cacheinfo.c [USE_MULTIARCH]: Rearrange code to
2150         avoid additional cpuid instructions.  Most of the information is
2151         stored somewhere.
2153         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Add more
2154         cache descriptors.
2155         * sysdeps/x86_64/cacheinfo.c (intel_02_known): Likewise.
2157         * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Reset
2158         SSSE3 bit for Atoms.
2159         * sysdeps/x86_64/multiarch/strcpy.S: New need to perform Atom test
2160         here anymore.
2162         * posix/tst-rfc3484.c (do_test): Initialize entire sockaddr_in
2163         structure before copying it to avoid warning.
2164         * posix/tst-rfc3484-2.c (do_test): Likewise.
2165         * posix/tst-rfc3484-3.c (do_test): Likewise.
2167         [BZ #10416]
2168         * include/unistd.h: Make header file suitable for C++ test cases.
2169         Patch by Duncan Simpson <dps@simpson.demon.co.uk>.
2171         * sysdeps/unix/sysv/linux/i386/makecontext.S: Ensure we preserve the
2172         stack alignment in the exit code.
2174         * elf/dl-lookup.c (dl_lookup_x): The hashval for unique symbol can
2175         potentially be zero.
2177         * elf/tst-unique1.c: Extend test to check for unloading DSO with
2178         unique symbol definition.
2179         Patch by Jakub Jelinek.
2180         * elf/dl-lookup.c (do_lookup_x): When entering a new unique symbol,
2181         make sure the object with the definition cannot be unloaded.  Adjust
2182         a few types.
2183         * sysdeps/generic/ldsodefs.h (struct rtld_global): The map element in
2184         the unique symbol hash table should not be const.
2186 2009-07-21  Ulrich Drepper  <drepper@redhat.com>
2188         * sysdeps/x86_64/multiarch/strstr.c: Minor cleanups.  Remove
2189         unnecesary variables.  Comment fixes.
2191 2009-07-20  Ulrich Drepper  <drepper@redhat.com>
2193         * sysdeps/x86_64/multiarch/strstr.c [USE_AS_STRCASESTR] (STRSTR_SSE42):
2194         Use NONASCII_CASE information provided by the locale to determine
2195         whether optimized string load function can be used.  Minor cleanups.
2197 2009-07-20  H.J. Lu  <hongjiu.lu@intel.com>
2199         * string/strcasestr.c (STRCASESTR): New macro.
2200         (__strcasestr): Renamed to ..
2201         (STRCASESTR): ...this.
2202         * string/strstr.c (STRSTR): New macro.
2203         (strstr): Renamed to ..
2204         (STRSTR): ...this.
2205         * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
2206         strstr-c strcasestr-c
2207         (CFLAGS-strstr.c): New.
2208         (CFLAGS-strcasestr.c): Likewise.
2209         * sysdeps/x86_64/multiarch/strcasestr-c.c: New file.
2210         * sysdeps/x86_64/multiarch/strcasestr.c: New file.
2211         * sysdeps/x86_64/multiarch/strstr-c.c: New file.
2212         * sysdeps/x86_64/multiarch/strstr.c: New file.
2214 2009-07-20  Ulrich Drepper  <drepper@redhat.com>
2216         * locale/localeinfo.h (LIMAGIC): Update value for LC_CTYPE.
2217         * locale/langinfo.h: Define _NL_CTYPE_NONASCII_CASE.
2218         * locale/C-ctype.c (_nl_C_LC_CTYPE): Add initializer for
2219         _NL_CTYPE_NONASCII_CASE.
2220         * locale/programs/ld-ctype.c (locale_ctype_t): Add nonascii_case
2221         field.
2222         (ctype_finish): Check whether there are any 8-bit characters outside
2223         the range ASCII has or whether the mapping isn't the same as for
2224         ASCII (±0x20).  Set nonascii_case appropriately.
2225         (ctype_output): Add output handler for nonascii_case.
2227 2009-07-17  Ulrich Drepper  <drepper@redhat.com>
2229         * sysdeps/generic/sysdep.h: Define cfi_personality, cfi_lsda,
2230         CFI_PERSONALITY, CFI_LSDA, and DW_EH_PE_* constants.
2232 2009-07-16  Ulrich Drepper  <drepper@redhat.com>
2234         [BZ #10360]
2235         * resolv/res-mkquery.c (__res_nopt): If anslen is > 0xffff store
2236         0xffff in the EDNS0 record.
2238 2009-07-16  Ulrich Drepper  <drepper@redhat.com>
2240         * nscd/cache.c (cache_add): Use atomic_compare_and_exchange_bool_rel
2241         instead of atomic_compare_and_exchange_bool_acq to ensure pointer
2242         is written before the list head update.
2243         Patch by Andreas Schwab <aschwab@redhat.com>.
2245 2009-07-16  Ulrich Drepper  <drepper@redhat.com>
2246             Jakub Jelinek  <jakub@redhat.com>
2248         * malloc/malloc.c [ATOMIC_FASTBINS] (_int_free): Make check for
2249         corruption thread-safe.
2251 2009-07-13  Jakub Jelinek  <jakub@redhat.com>
2253         * include/atomic.h (catomic_compare_and_exchange_val_rel): If arch
2254         overrides atomic_compare_and_exchange_val_rel, define to
2255         atomic_compare_and_exchange_val_rel by default, otherwise default
2256         to catomic_compare_and_exchange_val_acq.
2257         (catomic_compare_and_exchange_bool_rel): If arch overrides
2258         atomic_compare_and_exchange_bool_rel, define to
2259         atomic_compare_and_exchange_bool_rel by default.
2260         * malloc/malloc.c (_int_free): Revert 2009-07-02 change.
2261         Use catomic_compare_and_exchange_val_rel instead of
2262         catomic_compare_and_exchange_val_acq.
2264 2009-07-16  Ulrich Drepper  <drepper@redhat.com>
2266         * sysdeps/generic/ldsodefs.h: Add prototype for
2267         _dl_higher_prime_number.
2268         * elf/dl-misc.c (_dl_higher_prime_number): Mark with internal_function.
2270         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Optimize
2271         restoring of ymm registers a bit.
2273 2009-07-15  H.J. Lu  <hongjiu.lu@intel.com>
2275         * sysdeps/x86_64/memcmp.S: New file.
2277 2009-07-15  Ulrich Drepper  <drepper@redhat.com>
2279         * sysdeps/x86-64/dl-trampoline.h: Remove after integrating code into...
2280         * sysdeps/x86-64/dl-trampoline.S: ...here.  Rewrite to avoid function
2281         pointers in writable memory.
2283 2009-07-07  H.J. Lu  <hongjiu.lu@intel.com>
2285         * config.h.in: Add HAVE_AVX_SUPPORT entry.
2286         * config.make.in: Add config-cflags-avx entry.
2287         * configure.in: Substitute libc_cv_cc_avx.
2288         * elf/Makefile: Add rules to build and run tst-audit4 and tst-audit5.
2289         * elf/tst-audit4.c: New file.
2290         * elf/tst-audit5.c: New file.
2291         * elf/tst-auditmod4a.c: New file.
2292         * elf/tst-auditmod4b.c: New file.
2293         * elf/tst-auditmod5a.c: New file.
2294         * elf/tst-auditmod5b.c: New file.
2295         * sysdeps/x86_64/Makefile (gen-as-const-headers): Add
2296         link-defines.sym.
2297         * sysdeps/x86_64/bits/link.h (La_x86_64_ymm): New.
2298         (La_x86_64_vector): Likewise.
2299         (La_x86_64_regs): Append lr_vector.
2300         (La_x86_64_retval): Append lr_vector0/lrv_vector1.
2301         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Move
2302         saving and restoring SSE registers to ...
2303         * sysdeps/x86_64/dl-trampoline.h: This.  New file.
2304         * sysdeps/x86_64/dl-trampoline.S: Include <config.h> and
2305         <link-defines.h>.
2306         (_dl_runtime_profile): Use LR_SIZE to allocate space for
2307         La_x86_64_regs.  Allocate extra space and jump to memory at
2308         save_and_restore_vector if HAVE_AVX_SUPPORT is defined.
2309         (save_and_restore_vector_sse): New.
2310         (save_and_restore_vector_avx): Likewise.
2311         (check_avx): Likewise.
2312         (save_and_restore_vector): Likewise.
2313         * sysdeps/x86_64/elf/configure.in: Set libc_cv_cc_avx and
2314         HAVE_AVX_SUPPORT.
2315         * sysdeps/x86_64/link-defines.sym: New file.
2317 2009-07-10  Ulrich Drepper  <drepper@redhat.com>
2319         * elf/do-lookup.h: Removed after folding content into...
2320         * elf/dl-lookup.c: ...here.
2322         * sysdeps/unix/sysv/linux/sys/epoll.h: Fix comment.
2324 2009-07-09  Ulrich Drepper  <drepper@redhat.com>
2326         * configure.in: Check for gnu_unique_symbol symbol type.
2327         * config.h.in: Add HAVE_ASM_UNIQUE_OBJECT entry.
2328         * elf/do-lookup.h (do_lookup_x): Take new parameter with link map of
2329         the undefined symbol.  Handle STB_GNU_UNIQUE binding of found symbol.
2330         * elf/dl-lookup.c (_dl_lookup_symbol_x): Adjust callers for do_lookup_x
2331         change.
2332         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add definitions for
2333         unique symbol table.
2334         * elf/rtld.c (rtld_global): Initialize lock of unique symbol hash table
2335         for first namespace.
2336         * elf/dl-open.c (_dl_open): For new namespace, initialize lock for
2337         unique symbol hash table.
2338         * elf/Makefile: Add rules to build and run tst-unique1 and tst-unique2.
2339         * elf/tst-unique1.c: New file.
2340         * elf/tst-unique1mod1.c: New file.
2341         * elf/tst-unique1mod2.c: New file.
2342         * elf/tst-unique2.c: New file.
2343         * elf/tst-unique2mod1.c: New file.
2344         * elf/tst-unique2mod2.c: New file.
2346 2009-07-07  Ulrich Drepper  <drepper@redhat.com>
2348         * elf/elf.h (STB_GNU_UNIQUE): Define.
2350         * elf/dl-misc.c (_dl_higher_prime_number): New function.  Moved here
2351         from...
2352         * include/inline-hashtab.h: ...here.
2353         (htab_expand): Adjust for renamed function.  Correct memory handling.
2355 2009-07-06  Ulrich Drepper  <drepper@redhat.com>
2357         * elf/do-lookup.h (do_lookup_x): Optimize test for valid symbol types.
2359 2009-07-03  Andreas Schwab  <aschwab@redhat.com>
2361         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_ARCH_2_06): Fix value.
2362         (PPC_FEATURE_HAS_VSX): Likewise.
2364 2009-07-03  Ulrich Drepper  <drepper@redhat.com>
2366         * sysdeps/x86_64/multiarch/strcspn-c.c: Minor cleanups.
2367         * sysdeps/x86_64/multiarch/strspn-c.c: Likewise.
2369         * sysdeps/x86_64/multiarch/strcmp.S: Make sure functions are all
2370         aligned to 16 byte boundaries.
2371         * sysdeps/x86_64/multiarch/strcpy.S: Likewise.
2372         * sysdeps/x86_64/multiarch/strlen.S: Likewise.
2373         * sysdeps/x86_64/multiarch/rawmemchr.S: Likewise.
2375 2009-07-02  H.J. Lu  <hongjiu.lu@intel.com>
2377         * config.h.in (HAVE_SSE4_SUPPORT): New macro.
2378         * config.make.in (config-cflags-sse4): New variable.
2379         * configure.in: Substitute libc_cv_cc_sse4.
2380         * sysdeps/i386/configure.in: Set libc_cv_cc_sse4 and
2381         HAVE_SSE4_SUPPORT.
2382         * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
2383         strcspn-c, strpbrk-c, strspn-c for string if gcc supports SSE4.
2384         * sysdeps/x86_64/multiarch/strcspn-c.c: New file.
2385         * sysdeps/x86_64/multiarch/strcspn.S: New file.
2386         * sysdeps/x86_64/multiarch/strpbrk-c.c: New file.
2387         * sysdeps/x86_64/multiarch/strpbrk.S: New file.
2388         * sysdeps/x86_64/multiarch/strspn-c.c: New file.
2389         * sysdeps/x86_64/multiarch/strspn.S: New file.
2391 2009-06-30  H.J. Lu  <hongjiu.lu@intel.com>
2393         * elf/Makefile (distribute): Remove tst-audit.sh.  Add
2394         tst-audit2.c, tst-audit3.c, tst-auditmod3a.c, tst-auditmod3b.c.
2395         (tests): Add tst-audit3 for x86_64.
2396         (modules-names): Add tst-auditmod3a, tst-auditmod3b.
2397         ($(objpfx)tst-audit3): Define.
2398         ($(objpfx)tst-audit3.out): Define.
2399         (tst-audit3-ENV): Define.
2400         * elf/tst-audit3.c: New file.
2401         * elf/tst-auditmod3a.c: New file.
2402         * elf/tst-auditmod3b.c: New file.
2403         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Save
2404         and restore xmm6.
2406         * string/stpncpy.c (STPNCPY): New.  Defined if not defined.
2407         (__stpncpy): Renamed to ...
2408         (STPNCPY): This.
2409         (stpncpy): Create alias only if STPNCPY is not defined.
2410         * string/strncpy.c (STRNCPY): New.  Defined to strncpy if not
2411         defined.
2412         (strncpy): Renamed to ...
2413         (STRNCPY): This.
2414         * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
2415          stpncpy-c strncpy-c for string.
2416         * sysdeps/x86_64/multiarch/stpcpy.S: New file.
2417         * sysdeps/x86_64/multiarch/stpncpy-c.c: New file.
2418         * sysdeps/x86_64/multiarch/stpncpy.S: New file.
2419         * sysdeps/x86_64/multiarch/strcpy.S: New file.
2420         * sysdeps/x86_64/multiarch/strncpy-c.c: New file.
2421         * sysdeps/x86_64/multiarch/strncpy.S: New file.
2423 2009-07-02  Ulrich Drepper  <drepper@redhat.com>
2425         * malloc/malloc.c [ATOMIC_FASTBINS] (_int_free): Add full barrier when
2426         adding to fast bin list.
2428 2009-07-01  Ulrich Drepper  <drepper@redhat.com>
2430         * nis/nss_nis/nis-network.c (_nss_nis_getnetbyaddr_r): Don't use
2431         inet_makeaddr.  This worked only with class-based networks.
2432         * nis/nss_nisplus/nisplus-network.c (_nss_nisplus_getnetbyaddr_r):
2433         Likewise.
2435         * nss/nss_files/files-network.c (netbyaddr): If type is AF_UNSPEC,
2436         recognize all types.
2437         * nss/getent.c (networks_keys): Pass AF_UNSPEC instead of AF_UNIX
2438         to getnetbyaddr.  Fix network parameter to getnetbyaddr.  It must
2439         be in host byte order.
2441 2009-06-26  H.J. Lu  <hongjiu.lu@intel.com>
2443         * sysdeps/x86_64/multiarch/ifunc-defines.sym (FAMILIY_OFFSET): Define.
2444         (MODEL_OFFSET): Define.
2445         * sysdeps/x86_64/multiarch/init-arch.h (cpu_features): Add
2446         family and model.
2447         * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Break
2448         out common code into new function get_common_indeces. Determine
2449         extended family and model for Intel processors.
2451 2009-06-26  Ulrich Drepper  <drepper@redhat.com>
2453         * resolv/resolv.h: Define RES_SNGLKUPREOP.
2454         * resolv/res_init.c (res_setoptions): Recognize single-request-reopen
2455         option.
2456         * resolv/res_send.c (reopen): New function.  Broken out of...
2457         (send_dg): ... here.  Recognize RES_SNGLKUPREOP.  Implement second
2458         fallback mechanism.  If single-request fails switch to
2459         single-request-reopen mode which opens a new socket for the second
2460         request.
2462 2009-06-25  Andreas Schwab  <aschwab@redhat.com>
2464         * sysdeps/powerpc/powerpc32/____longjmp_chk.S (LOAD_ARG): Define.
2465         (CHECK_SP): Use it.
2467 2009-06-24  Andreas Schwab  <aschwab@redhat.com>
2469         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S: Fix cfa offset
2470         for saved registers.
2471         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S: Likewise.
2472         * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S: Likewise.
2473         * sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S: Likewise.
2475 2009-06-23  Andreas Schwab  <aschwab@redhat.com>
2477         * time/tzfile.c (__tzfile_read): Don't use an empty TZ string.
2479 2009-06-22  Ulrich Drepper  <drepper@redhat.com>
2481         * po/id.po: Update from translation team.
2483         * po/bg.po: Update from translation team.
2485 2009-06-22  H.J. Lu  <hongjiu.lu@intel.com>
2487         * string/strncmp.c (STRNCMP): New.  Defined to strncmp if not
2488         defined.
2489         (strncmp): Renamed to STRNCMP.
2490         * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
2491         strncmp-c for string.
2492         * sysdeps/x86_64/multiarch/init-arch.h (HAS_SSE4_2): Define.
2493         * sysdeps/x86_64/multiarch/strcmp.S: New file.
2494         * sysdeps/x86_64/multiarch/strncmp.S: New file.
2495         * sysdeps/x86_64/multiarch/strncmp-c.c: New file.
2497 2009-06-19  H.J. Lu  <hongjiu.lu@intel.com>
2499         * elf/Makefile (distribute): Add ifuncmain1staticpie.c,
2500         ifuncmain5.c, ifuncmain5pic.c, ifuncmain5picstatic.c,
2501         ifuncmain5pie.c, ifuncmain5static.c, ifuncmain5staticpic.c,
2502         ifuncdep5.c, ifuncdep5pic.c, ifuncmod5.c, ifuncmain7.c,
2503         ifuncmain7pic.c, ifuncmain7picstatic.c, ifuncmain7pie.c, and
2504         ifuncmain7static.c.
2505         (tests-static): Add ifuncmain5static, ifuncmain5picstatic,
2506         ifuncmain7static, and ifuncmain7picstatic.
2507         (tests): Also depend on $(objpfx)ifuncmain1staticpie.out,
2508         $(objpfx)ifuncmain5pie.out, $(objpfx)ifuncmain6pie.out, and
2509         $(objpfx)ifuncmain7pie.out.
2510         (modules-names): Add ifuncmod5 ifuncmod6
2511         (ifuncmod5.so-no-z-defs): Define.
2512         (ifuncmod6.so-no-z-defs): Define.
2513         (CFLAGS-ifuncmain5pic.c): Define.
2514         (CFLAGS-ifuncmain5picstatic.c): Define.
2515         (CFLAGS-ifuncmain5staticpic.c): Define.
2516         (CFLAGS-ifuncdep5pic.c): Define.
2517         (CFLAGS-ifuncmain7pic.c): Define.
2518         (CFLAGS-ifuncmain7picstatic.c): Define.
2519         (CFLAGS-ifuncmain1staticpie.c): Define.
2520         (CFLAGS-ifuncmain5pie.c): Define.
2521         (CFLAGS-ifuncmain6pie.c): Define.
2522         (CFLAGS-ifuncmain7pie.c): Define.
2523         ($(objpfx)ifuncmain1staticpie.out): Define.
2524         ($(objpfx)ifuncmain1staticpie): Define.
2525         ($(objpfx)ifuncmain5pie.out): Define.
2526         ($(objpfx)ifuncmain5pie): Define.
2527         ($(objpfx)ifuncmain6pie.out): Define.
2528         ($(objpfx)ifuncmain6pie): Define.
2529         ($(objpfx)ifuncmain5): Define.
2530         ($(objpfx)ifuncmain5pic): Define.
2531         ($(objpfx)ifuncmain5static): Define.
2532         ($(objpfx)ifuncmain5staticpic): Define.
2533         ($(objpfx)ifuncmain5picstatic): Define.
2534         (generated): Add ifuncmain1staticpie, ifuncmain1staticpie.out,
2535         ifuncmain5pie, ifuncmain5pie.out, ifuncmain6pie, and
2536         ifuncmain6pie.out.
2537         * elf/b/elf/ifuncmain1staticpie.c: New file.
2538         * elf/ifuncdep5.c: New file.
2539         * elf/ifuncdep5pic.c: New file.
2540         * elf/ifuncmain5.c: New file.
2541         * elf/ifuncmain5pic.c: New file.
2542         * elf/ifuncmain5picstatic.c: New file.
2543         * elf/ifuncmain5pie.c: New file.
2544         * elf/ifuncmain5static.c: New file.
2545         * elf/ifuncmain5staticpic.c: New file.
2546         * elf/ifuncmain6pie.c: New file.
2547         * elf/ifuncmain7.c: New file.
2548         * elf/ifuncmain7pic.c: New file.
2549         * elf/ifuncmain7picstatic.c: New file.
2550         * elf/ifuncmain7pie.c: New file.
2551         * elf/ifuncmain7static.c: New file.
2552         * elf/ifuncmod5.c: New file.
2553         * elf/ifuncmod6.c: New file.
2555 2009-06-20  Ulrich Drepper  <drepper@redhat.com>
2557         [BZ #10085]
2558         * nis/nss_compat/compat-initgroups.c (nss_setgrent): New variable.
2559         (nss_endgrent): New variable.
2560         (struct ent_t): Add need_endgrent and skip_initgroups_dyn
2561         fields. Change type of files to bool and adjust all users.
2562         (init_nss_interface): Initialize nss_setgrent and nss_endgrent.
2563         (internal_endgrent): Call nss_endgrent if necessary.
2564         (add_group): New function.  Broken out of...
2565         (check_and_add_group): ...here.
2566         (getgrent_next_nss): Remove test that any callback is available.
2567         Use skip_initgroups_dyn to determine whether to use initgroups_dyn
2568         callback.  If there is no blacklist we can trust the results returned
2569         by the initgroups_dyn callback.  In case there is a callback and we
2570         find a group entry for the group ID but it doesn't contain the
2571         correct member, switch to the slow mode and use getgrent_r.
2572         (internal_getgrent_r): When we see a +: entry, determine whether
2573         there is any callback and which we can use the initgroups_dyn
2574         callback.
2576 2009-06-18  Ulrich Drepper  <drepper@redhat.com>
2578         * malloc/malloc.c (_int_malloc): Add some consistency checks.
2579         (_int_free): Likewise.
2581         * sysdeps/unix/sysv/linux/bits/socket.h: Define PF_IEEE802154 and
2582         AF_IEEE802154.
2583         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Likewise.
2584         * sysdeps/unix/sysv/linux/net/if_arp.h: Define ARPHRD_IEEE802154
2585         and ARPHRD_IEEE802154_PHY.
2587         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: Add missing definitions
2588         relative to generic Linux version.
2590 2009-06-17  H.J. Lu  <hongjiu.lu@intel.com>
2592         * elf/Makefile ($(objpfx)ifuncmain1pie): Use $(+link-pie).
2593         ($(objpfx)ifuncmain1vispie): Likewise.
2595 2009-06-16  Ulrich Drepper  <drepper@redhat.com>
2597         * login/Makefile: Build pt_chown as PIE.
2599 2009-06-15  Andreas Schwab  <aschwab@redhat.com>
2601         * debug/xtrace.sh (do_help): Don't treat bug reporting message as
2602         a format string.
2603         * elf/sln.c (usage): Likewise.
2604         * malloc/memusage.sh (do_help): Likewise.
2605         * nss/getent.c (more_help): Likewise.
2606         * posix/getconf.c (main): Likewise.
2607         * sunrpc/rpcinfo.c (usage): Likewise.
2608         * sysdeps/unix/sysv/linux/lddlibc4.c (main): Likewise.
2610 2009-06-16  Ulrich Drepper  <drepper@redhat.com>
2612         * login/programs/pt_chown.c: Use libcap to drop privileges other than
2613         those needed.
2614         * login/Makefile: If necessary link pt_chown with -lcap.
2615         * sysdeps/generic/pty-private.h: Define FAIL_ENOMEM.
2616         * sysdeps/unix/grantpt.c: Handle FAIL_ENOMEM.
2618 2009-06-16  Jakub Jelinek  <jakub@redhat.com>
2620         * sysdeps/x86_64/memchr.S (memchr): Use unsigned instead of signed
2621         comparisons.
2622         * string/test-memchr.c (do_random_tests): Test very large lengths
2623         as well.
2625 2009-06-02  H.J. Lu  <hongjiu.lu@intel.com>
2627         * Makeconfig (+link-pie): Define.
2628         (+prectorS): Define.
2629         (+postctorS): Define.
2630         * elf/Makefile ($(objpfx)tst-pie1): Use $(+link-pie).
2631         * nscd/Makefile ($(objpfx)nscd): Likewise.
2633 2009-04-22  Ryan S. Arnold  <rsa@us.ibm.com>
2635         [BZ #10107]
2636         * sysdeps/powerpc/powerpc32/power6/memcpy.S (memcpy): Replace cmpldi
2637         with cmplwi.
2638         * sysdeps/powerpc/powerpc32/power6/memset.S (memset): Likewise.
2640 2009-06-16  Ulrich Drepper  <drepper@redhat.com>
2642         * sysdeps/unix/sysv/linux/grantpt.c: Remove file after folding changes
2643         into ...
2644         * sysdeps/unix/grantpt.c: ...here.
2646 2009-06-15  Ulrich Drepper  <drepper@redhat.com>
2648         * sysdeps/unix/sysv/linux/grantpt.c (grantpt): Only call chown and
2649         chmod if it is necessary.
2651         [BZ #10166]
2652         * sysdeps/unix/sysv/linux/grantpt.c: Remove shortcut which was used
2653         when the slave device is in devpts or devfs.
2655         [BZ #10183]
2656         * posix/tst-cpucount.c: Don't try more than CPU_SETSIZE bits.
2658         [BZ #10195]
2659         * inet/netinet/icmp6.h (struct nd_opt_home_agent_info): Change type
2660         of nd_opt_home_agent_info_preference to uint16_t.
2661         Patch by Arnaud Ebalard <arno@natisbad.org>.
2663         [BZ #10207]
2664         * nss/getent.c: Add support for printing gshadow data.
2666         [BZ #10203]
2667         * nis/nss_nis/nis-pwd.c (internal_nis_endpwent): Free all buffers,
2668         not just the currently used one and those which follow.
2669         Patch by Joe Landers <jlanders@vmware.com>.
2671         [BZ #10196]
2672         * libio/tst-fgetwc.c (do_test): Use de_DE.UTF-8 as locale name.
2673         * libio/Makefile: Run tst-fgetwc with necessary envvar.
2674         Patch by Bruce Dubbs <bdubbs@linuxfromscratch.org>.
2676         [BZ #10217]
2677         * stdlib/abort.c: Define variable __abort_msg.
2678         * stdlib/Versions: Export __abort_msg with GLIBC_PRIVATE version.
2679         * include/stdlib.h: Declare __abort_msg.
2680         * assert/assert-perr.c: Don't free buffer for message immediately.
2681         Store atomically in __abort_msg and free old buffer if necessary.
2682         * assert/assert.c: Likewise.
2683         * sysdeps/posix/libc_fatal.c: Allocate buffer for message, copy it,
2684         store pointer in __abort_msg, and possibly free old string.
2685         * sysdeps/unix/sysv/linux/libc_fatal.c: Likewise.
2687         * time/tzfile.c (__tzfile_read): Correct computation of tzspec_len.
2689         [BZ #10211]
2690         * time/tzfile.c (__tzfile_compute): If we use the envvar format still
2691         handle leap seconds if they are available.
2692         Patch by Akinori Hattori <hattya@gentoo.org>.
2694         * timezone/tzselect.ksh: Update from tzcode2009i.
2695         * timezone/zdump.c: Likewise.
2696         * timezone/zic.c: Likewise.
2698         * timezone/africa: Update from tzdata2009i.
2699         * timezone/antarctica: Likewise.
2700         * timezone/asia: Likewise.
2701         * timezone/australasia: Likewise.
2702         * timezone/backward: Likewise.
2703         * timezone/etcetera: Likewise.
2704         * timezone/europe: Likewise.
2705         * timezone/factory: Likewise.
2706         * timezone/iso3166.tab: Likewise.
2707         * timezone/leapseconds: Likewise.
2708         * timezone/northamerica: Likewise.
2709         * timezone/pacificnew: Likewise.
2710         * timezone/solar87: Likewise.
2711         * timezone/solar88: Likewise.
2712         * timezone/solar89: Likewise.
2713         * timezone/southamerica: Likewise.
2714         * timezone/systemv: Likewise.
2715         * timezone/yearistype: Likewise.
2716         * timezone/zone.tab: Likewise.
2718 2009-06-15  Jakub Jelinek  <jakub@redhat.com>
2720         * elf/dl-lookup.c (_dl_debug_bindings): When resolving to
2721         STT_GNU_IFUNC symbol or in 8 into type_class.
2723         * sysdeps/i386/dl-irel.h (elf_irel): Use Elf32_Addr type
2724         instead of Elf64_Addr.
2726 2009-06-14  Ulrich Drepper  <drepper@redhat.com>
2728         * po/sv.po: Update from translation team.
2730         [BZ #10229]
2731         * misc/sys/select.h (__NFDBITS): Expression should have type int.
2732         * sysdeps/x86_64/bits/select.h: Remove asm versions for __FD_SET,
2733         __FD_CLR, and __FD_ISSET.  gcc nowadays generates better code from
2734         the C version.
2736 2009-06-12  Ulrich Drepper  <drepper@redhat.com>
2738         * Versions.def: Add GLIBC_2.11 for libpthread.
2740 2009-06-11  Ulrich Drepper  <drepper@redhat.com>
2742         * resolv/res_send.c (send_dg): Remember we switched to
2743         single-request mode.
2745 2009-06-09  Ulrich Drepper  <drepper@redhat.com>
2747         * dlfcn/dlfcn.h: Remove comma at end of enum.
2748         Patch by J.H.M. Dassen <rdassen@redhat.com>.
2750         * libio/fileops.c (_IO_new_file_fopen): Don't prematurely stop
2751         parsing mode string.
2753 2009-06-05  Ulrich Drepper  <drepper@redhat.com>
2755         * sysdeps/x86_64/rawmemchr.S: Minor optimization.
2757         * sysdeps/x86_64/multiarch/rawmemchr.S: New file.
2759         * sysdeps/x86_64/multiarch/strlen.S: New file.
2760         * sysdeps/x86_64/multiarch/ifunc-defines.sym: New file.
2761         * sysdeps/x86_64/multiarch/Makefile: Add rule to build ifunc-defines.h.
2762         * sysdeps/x86_64/multiarch/init-arch.h: Name structure with register
2763         content.
2765         * csu/elf-init.c: Only compile in IFUNC functionality if USE_MULTIARCH
2766         is defined.
2768 2009-06-04  Ulrich Drepper  <drepper@redhat.com>
2770         * sysdeps/x86_64/strlen.S: Minor optimizations.
2772 2009-06-02  H.J. Lu  <hongjiu.lu@intel.com>
2774         * elf/Makefile (distribute): Add ifuncmain1.c, ifuncmain1pic.c,
2775         ifuncmain1vis.c, ifuncmain1vispic.c, ifuncmain1static.c,
2776         ifuncmain1staticpic.c, ifuncmain1picstatic.c, ifuncdep1.c,
2777         ifuncdep1pic.c, ifuncmod1.c, ifuncmain1pie.c, ifuncmain1vispie.c,
2778         ifuncmain2.c, ifuncmain2static.c, ifuncdep2.c,
2779         funcmain2pic.c, ifuncmain2picstatic.c, ifuncdep2pic.c,
2780         ifuncmain3.c, ifuncmod3.c,.
2781         ifuncmain4.c, ifuncmain4static.c, ifuncmain4picstatic.c.
2782         (tests-static): Add ifuncmain1static, ifuncmain1picstatic,
2783         ifuncmain2static, ifuncmain2picstatic, ifuncmain4static,
2784         ifuncmain4picstatic.
2785         (tests): Add ifuncmain1, ifuncmain1pic, ifuncmain1vis,
2786         ifuncmain1vispic, ifuncmain1staticpic, ifuncmain2, ifuncmain2pic,
2787         ifuncmain3, ifuncmain4.
2788         (tests): Depend on $(objpfx)ifuncmain1pie.out and
2789         $(objpfx)ifuncmain1vispie.out.
2790         (modules-names): Add ifuncmod1 ifuncmod3.
2791         (generated): Add ifuncmain1pie ifuncmain1pie.out
2792         ifuncmain1vispie ifuncmain1vispie.out.
2793         Define rules to build and run the tests.
2794         * elf/ifuncdep1.c: New file.
2795         * elf/ifuncdep1pic.c: New file.
2796         * elf/ifuncdep2.c: New file.
2797         * elf/ifuncdep2pic.c: New file.
2798         * elf/ifuncmain1.c: New file.
2799         * elf/ifuncmain1pic.c: New file.
2800         * elf/ifuncmain1picstatic.c: New file.
2801         * elf/ifuncmain1pie.c: New file.
2802         * elf/ifuncmain1static.c: New file.
2803         * elf/ifuncmain1staticpic.c: New file.
2804         * elf/ifuncmain1vis.c: New file..
2805         * elf/ifuncmain1vispic.c: New file..
2806         * elf/ifuncmain1vispie.c: New file.
2807         * elf/ifuncmain2.c: New file.
2808         * elf/ifuncmain2pic.c: New file.
2809         * elf/ifuncmain2picstatic.c: New file.
2810         * elf/ifuncmain2static.c: New file.
2811         * elf/ifuncmain3.c: New file.
2812         * elf/ifuncmain4.c: New file.
2813         * elf/ifuncmain4picstatic.c: New file.
2814         * elf/ifuncmain4static.c: New file.
2815         * elf/ifuncmod1.c: New file.
2816         * elf/ifuncmod3.c: New file.
2818 2009-06-03  Ulrich Drepper  <drepper@redhat.com>
2820         * elf/dl-sysdep.c (_dl_show_auxv): Terminate correct string.
2822 2009-06-02  Ulrich Drepper  <drepper@redhat.com>
2824         [BZ #10221]
2825         * posix/Makefile (routines): Add execvpe.
2826         * posix/Versions: Export execvpe for GLIBC_2.11.
2827         * posix/execvp.c: Now only a wrapper.  Move code to...
2828         * posix/execvpe.c: ...here.  New file.
2829         * posix/unistd.h: Declare execvpe.
2831 2009-06-01  Ulrich Drepper  <drepper@redhat.com>
2833         * sysdeps/i386/dl-machine.h (elf_machine_rel): Reorder conditions
2834         for STT_GNU_IFUNC handling for efficiency.
2835         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
2837         * sysdeps/i386/dl-irel.h (elf_irel): Use __libc_fatal instead of just
2838         _exit.
2839         * sysdeps/x86_64/dl-irel.h (elf_irela): Likewise.
2841 2009-05-31  Ulrich Drepper  <drepper@redhat.com>
2843         * sysdeps/x86_64/multiarch/sched_cpucount.c: Also use optimized code
2844         for !SHARED.
2846 2009-05-29  H.J. Lu  <hongjiu.lu@intel.com>
2848         * csu/elf-init.c: Include <link.h> and <dl-irel.h> if LIBC_NONSHARED
2849         is not defined.
2850         (__rela_iplt_start): New declaration.
2851         (__rela_iplt_end): Likewise.
2852         (__rel_iplt_start): Likewise.
2853         (__rel_iplt_end): Likewise.
2854         (__libc_csu_init): Process __rela_iplt_start and __rel_iplt_start.
2855         * elf/elf.h (R_386_IRELATIVE): New macro.
2856         (R_X86_64_IRELATIVE): New macro.
2857         (R_386_NUM): Updated.
2858         (R_X86_64_NUM): Likewise.
2859         * include/libc-symbols.h (libc_ifunc_hidden_def1): New macro.
2860         (libc_ifunc_hidden_def): New macro.
2861         * sysdeps/generic/dl-irel.h: New file.
2862         * sysdeps/i386/dl-irel.h: New file.
2863         * sysdeps/x86_64/dl-irel.h: New file.
2864         * sysdeps/i386/dl-machine.h (elf_machine_rel): Handle R_386_IRELATIVE.
2865         (elf_machine_rela): Check SHN_UNDEF for STT_GNU_IFUNC symbol.
2866         Handle R_386_IRELATIVE.
2867         (elf_machine_lazy_rel): Handle R_386_IRELATIVE.
2868         (elf_machine_lazy_rela): Likewise.
2869         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Handle
2870         R_X86_64_IRELATIVE.
2871         (elf_machine_lazy_rel): Handle R_X86_64_IRELATIVE.
2873 2009-05-31  Ulrich Drepper  <drepper@redhat.com>
2875         * sysdeps/x86_64/multiarch/init-arch.h: Define COMMON_CPUID_INDEX_1
2876         instead of INTEL_CPUID_INDEX_1 and AMD_CPUID_INDEX_1.  So far there
2877         are no differences.  If an architecture has bits in CPUID index 1
2878         meaning different things the values for the COMMON_CPUID_INDEX_1
2879         index must not be set.
2880         (INTEL_HAS_POPCOUNT, AMD_HAS_POPCOUNT): Removed in favor of...
2881         (HAS_POPCOUNT): ...this.  New macro.
2882         * sysdeps/x86_64/multiarch/init-arch.c: Use COMMON_CPUID_INDEX_1
2883         instead of INTEL_CPUID_INDEX_1 and AMD_CPUID_INDEX_1.  Unify code
2884         to set the value for Intel and AMD architectures.
2885         * sysdeps/x86_64/cacheinfo.c: Use COMMON_CPUID_INDEX_1 instead of
2886         INTEL_CPUID_INDEX_1.
2887         * sysdeps/x86_64/multiarch/sched_cpucount.c: Adjust for HAS_POPCOUNT
2888         change.
2890 2009-05-30  Andreas Schwab  <schwab@linux-m68k.org>
2892         * configure.in: Move AC_CANONICAL_HOST before first use of $host
2893         and $build.
2895 2009-05-29  Jakub Jelinek  <jakub@redhat.com>
2897         * sysdeps/ieee754/ldbl-128/s_expm1l.c: Include <errno.h>.
2898         (__expm1l): Set errno to ERANGE on overflow.
2899         * sysdeps/ieee754/ldbl-128/s_tanl.c: Include <errno.h>.
2900         (__tanl): Set errno to EDOM for ±Inf.
2901         * sysdeps/ieee754/ldbl-128/s_cosl.c: Include <errno.h>.
2902         (__cosl): Set errno to EDOM for ±Inf.
2903         * sysdeps/ieee754/ldbl-128/s_sinl.c: Include <errno.h>.
2904         (__sinl): Set errno to EDOM for ±Inf.
2906         * sysdeps/s390/s390-32/__longjmp.c (__longjmp): If CHECK_SP is
2907         defined, use it.
2908         * sysdeps/s390/s390-64/__longjmp.c (__longjmp): Likewise.
2909         * sysdeps/s390/s390-32/____longjmp_chk.c: New file.
2910         * sysdeps/s390/s390-64/____longjmp_chk.c: New file.
2912 2009-05-29  Ulrich Drepper  <drepper@redhat.com>
2914         * sysdeps/x86_64/cacheinfo.c: Compact intel_02_known array.  Adjust
2915         code accessing it.
2916         * sysdeps/unix/sysv/linux/i386/sysconf.c: Likewise.
2918 2009-05-22  Andreas Schwab  <schwab@linux-m68k.org>
2920         * sysdeps/ieee754/ldbl-128ibm/s_sinl.c: Set errno for ±Inf.
2921         * sysdeps/ieee754/ldbl-128ibm/s_cosl.c: Likewise.
2922         * sysdeps/ieee754/ldbl-128ibm/s_tanl.c: Likewise.
2923         * sysdeps/ieee754/ldbl-128ibm/s_expm1l.c: Set errno for overflow.
2925         * sysdeps/powerpc/powerpc32/____longjmp_chk.S: New file.
2926         * sysdeps/powerpc/powerpc64/____longjmp_chk.S: New file.
2927         * sysdeps/powerpc/powerpc32/__longjmp-common.S: Use CHECK_SP if
2928         defined.
2929         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
2930         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
2932 2009-05-22  Jakub Jelinek  <jakub@redhat.com>
2934         * sysdeps/unix/sysv/linux/accept4.c: Include kernel-features.h.
2935         (accept4): If __NR_accept4 is not defined, but __NR_socketcall
2936         is, either do nothing at all if __ASSUME_ACCEPT4, or
2937         call __internal_accept4 and handle EINVAL -> ENOSYS translation.
2938         * sysdeps/unix/sysv/linux/internal_accept4.S: New file.
2939         * sysdeps/unix/sysv/linux/i386/accept4.S (SOCKOP_accept4): Don't
2940         define.
2941         * sysdeps/unix/sysv/linux/i386/internal_accept4.S: New file.
2942         * sysdeps/unix/sysv/linux/Makefile (sysdep-routines): Add
2943         internal_accept4 in socket directory.
2945 2009-05-20  H.J. Lu  <hongjiu.lu@intel.com>
2947         * sysdeps/ia64/configure.in: New file.
2949 2009-05-21  H.J. Lu  <hongjiu.lu@intel.com>
2951         [BZ #10162]
2952         * sysdeps/ia64/memchr.S: Use speculative load.
2954         * sysdeps/unix/sysv/linux/ia64/____longjmp_chk.S: New file.
2955         * sysdeps/unix/sysv/linux/ia64/__longjmp.S: If CHECK_RSP is defined,
2956         use it.
2958         * sysdeps/i386/__longjmp.S: Add .text.
2959         * sysdeps/x86_64/__longjmp.S: Likewise.
2961 2009-05-21  Ulrich Drepper  <drepper@redhat.com>
2963         * sysdeps/unix/sysv/linux/kernel-features.h: Don't define
2964         __ASSUME_ACCEPT4 for IA-64.
2966 2009-05-21  Jakub Jelinek  <jakub@redhat.com>
2968         * sysdeps/unix/sysv/linux/accept4.c (__NR_accept4): Don't define.
2970         * sysdeps/unix/sysv/linux/socketcall.h (SOCKOP_paccept): Remove.
2971         (SOCKOP_accept4): Define.
2973 2009-05-20  Ulrich Drepper  <drepper@redhat.com>
2975         Sun approved the change of the license.
2976         * sunrpc/auth_des.c: Replace license text.
2977         * sunrpc/auth_none.c: Likewise.
2978         * sunrpc/auth_unix.c: Likewise.
2979         * sunrpc/authdes_prot.c: Likewise.
2980         * sunrpc/authuxprot.c: Likewise.
2981         * sunrpc/bindrsvprt.c: Likewise.
2982         * sunrpc/clnt_gen.c: Likewise.
2983         * sunrpc/clnt_perr.c: Likewise.
2984         * sunrpc/clnt_raw.c: Likewise.
2985         * sunrpc/clnt_simp.c: Likewise.
2986         * sunrpc/clnt_tcp.c: Likewise.
2987         * sunrpc/clnt_udp.c: Likewise.
2988         * sunrpc/clnt_unix.c: Likewise.
2989         * sunrpc/des_crypt.c: Likewise.
2990         * sunrpc/des_soft.c: Likewise.
2991         * sunrpc/get_myaddr.c: Likewise.
2992         * sunrpc/getrpcport.c: Likewise.
2993         * sunrpc/key_call.c: Likewise.
2994         * sunrpc/key_prot.c: Likewise.
2995         * sunrpc/openchild.c: Likewise.
2996         * sunrpc/pm_getmaps.c: Likewise.
2997         * sunrpc/pm_getport.c: Likewise.
2998         * sunrpc/pmap_clnt.c: Likewise.
2999         * sunrpc/pmap_prot.c: Likewise.
3000         * sunrpc/pmap_prot2.c: Likewise.
3001         * sunrpc/pmap_rmt.c: Likewise.
3002         * sunrpc/rpc/auth.h: Likewise.
3003         * sunrpc/rpc/auth_unix.h: Likewise.
3004         * sunrpc/rpc/clnt.h: Likewise.
3005         * sunrpc/rpc/des_crypt.h: Likewise.
3006         * sunrpc/rpc/key_prot.h: Likewise.
3007         * sunrpc/rpc/netdb.h: Likewise.
3008         * sunrpc/rpc/pmap_clnt.h: Likewise.
3009         * sunrpc/rpc/pmap_prot.h: Likewise.
3010         * sunrpc/rpc/pmap_rmt.h: Likewise.
3011         * sunrpc/rpc/rpc.h: Likewise.
3012         * sunrpc/rpc/rpc_des.h: Likewise.
3013         * sunrpc/rpc/rpc_msg.h: Likewise.
3014         * sunrpc/rpc/svc.h: Likewise.
3015         * sunrpc/rpc/svc_auth.h: Likewise.
3016         * sunrpc/rpc/types.h: Likewise.
3017         * sunrpc/rpc/xdr.h: Likewise.
3018         * sunrpc/rpc_clntout.c: Likewise.
3019         * sunrpc/rpc_cmsg.c: Likewise.
3020         * sunrpc/rpc_common.c: Likewise.
3021         * sunrpc/rpc_cout.c: Likewise.
3022         * sunrpc/rpc_dtable.c: Likewise.
3023         * sunrpc/rpc_hout.c: Likewise.
3024         * sunrpc/rpc_main.c: Likewise.
3025         * sunrpc/rpc_parse.c: Likewise.
3026         * sunrpc/rpc_parse.h: Likewise.
3027         * sunrpc/rpc_prot.c: Likewise.
3028         * sunrpc/rpc_sample.c: Likewise.
3029         * sunrpc/rpc_scan.c: Likewise.
3030         * sunrpc/rpc_scan.h: Likewise.
3031         * sunrpc/rpc_svcout.c: Likewise.
3032         * sunrpc/rpc_tblout.c: Likewise.
3033         * sunrpc/rpc_util.c: Likewise.
3034         * sunrpc/rpc_util.h: Likewise.
3035         * sunrpc/rpcinfo.c: Likewise.
3036         * sunrpc/rpcsvc/bootparam_prot.x: Likewise.
3037         * sunrpc/rpcsvc/key_prot.x: Likewise.
3038         * sunrpc/rpcsvc/klm_prot.x: Likewise.
3039         * sunrpc/rpcsvc/mount.x: Likewise.
3040         * sunrpc/rpcsvc/nfs_prot.x: Likewise.
3041         * sunrpc/rpcsvc/rex.x: Likewise.
3042         * sunrpc/rpcsvc/rstat.x: Likewise.
3043         * sunrpc/rpcsvc/rusers.x: Likewise.
3044         * sunrpc/rpcsvc/sm_inter.x: Likewise.
3045         * sunrpc/rpcsvc/spray.x: Likewise.
3046         * sunrpc/rpcsvc/yppasswd.x: Likewise.
3047         * sunrpc/rtime.c: Likewise.
3048         * sunrpc/svc.c: Likewise.
3049         * sunrpc/svc_auth.c: Likewise.
3050         * sunrpc/svc_authux.c: Likewise.
3051         * sunrpc/svc_raw.c: Likewise.
3052         * sunrpc/svc_run.c: Likewise.
3053         * sunrpc/svc_simple.c: Likewise.
3054         * sunrpc/svc_tcp.c: Likewise.
3055         * sunrpc/svc_udp.c: Likewise.
3056         * sunrpc/svc_unix.c: Likewise.
3057         * sunrpc/svcauth_des.c: Likewise.
3058         * sunrpc/xcrypt.c: Likewise.
3059         * sunrpc/xdr.c: Likewise.
3060         * sunrpc/xdr_array.c: Likewise.
3061         * sunrpc/xdr_float.c: Likewise.
3062         * sunrpc/xdr_mem.c: Likewise.
3063         * sunrpc/xdr_rec.c: Likewise.
3064         * sunrpc/xdr_ref.c: Likewise.
3065         * sunrpc/xdr_sizeof.c: Likewise.
3066         * sunrpc/xdr_stdio.c: Likewise.
3068         * po/da.po: Update from translation team.
3070 2009-05-18  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3072         * sysdeps/sh/____longjmp_chk.S: New file.
3073         * sysdeps/sh/sh3/__longjmp.S: If CHECK_SP is defined, use it.
3074         * sysdeps/sh/sh4/__longjmp.S: Likewise.
3076 2009-05-18  Jakub Jelinek  <jakub@redhat.com>
3077             Ulrich Drepper  <drepper@redhat.com>
3079         * nscd/nscd_helper.c (MINIMUM_HASHENTRY_SIZE): Define.
3080         (__nscd_cache_search): Assume each entry in the
3081         hash chain needs one hashentry and half of datahead.  Use
3082         MINIMUM_HASHENTRY_SIZE instead of sizeof(hashentry).
3084 2009-05-16  Ulrich Drepper  <drepper@redhat.com>
3086         * posix/sys/wait.h: Fix typos.  Pretty printing.
3087         * stdlib/stdlib.h: Likewise.  Correct comments.
3089         [BZ #10159]
3090         * stdlib/stdlib.h (__WAIT_INT): Match the definition in <sys/wait.h>.
3092         * nscd/nscd_helper.c (__nscd_cache_search): Fix exit condition in last
3093         patch.
3095 2009-05-15  Ulrich Drepper  <drepper@redhat.com>
3097         * nscd/nscd_helper.c (__nscd_cache_search): Introduce loop counter.
3098         Use it if we absolutely cannot reach any more correct list elements
3099         because that many do not fit into the currently mapped database.
3101 2009-05-14  Jakub Jelinek  <jakub@redhat.com>
3103         * nscd/nscd_helper.c: Include stddef.h.
3104         (__nscd_cache_search): Add datalen argument.  Use atomic_forced_read
3105         in a couple of places.  Return NULL if trail is not less than
3106         datasize, don't consider dataheads with length smaller than
3107         offsetof (struct datahead, data) + datalen.
3108         * nscd/nscd_client.h (__nscd_cache_search): Adjust prototype.
3109         * nscd/nscd_gethst_r.c (nscd_gethst_r): Adjust callers.
3110         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
3111         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
3112         * nscd/nscd_getai.c (__nscd_getai): Likewise.
3113         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise.
3114         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
3116         * sysdeps/unix/sysv/linux/i386/fallocate64.c (__fallocate64_l64):
3117         Rename ...
3118         (fallocate64): ... to this.
3119         * sysdeps/unix/sysv/linux/fallocate64.c (__fallocate64_l64):
3120         Rename ...
3121         (fallocate64): ... to this.
3122         * sysdeps/unix/sysv/linux/Versions (libc): Remove fallocate64.
3123         * sysdeps/unix/sysv/linux/wordsize-64/Versions (libc): Add
3124         fallocate64@@GLIBC_2.10.
3125         * sysdeps/unix/sysv/linux/i386/Versions (libc): Add
3126         fallocate64@@GLIBC_2.11.
3127         * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise.
3128         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Likewise.
3129         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise.
3130         * sysdeps/unix/sysv/linux/sh/Versions (libc): Likewise.
3132         * nscd/selinux.c (nscd_avc_destroy): Removed.
3133         * nscd/selinux.h (nscd_avc_destroy): Likewise.
3134         * nscd/nscd.c (termination_handler): Don't call
3135         nscd_avc_destroy.
3137 2009-05-12  Jakub Jelinek  <jakub@redhat.com>
3139         * include/atomic.h: Formatting.
3140         (catomic_compare_and_exchange_val_acq): Don't define if already
3141         defined by bits/atomic.h.
3143 2009-05-15  Ulrich Drepper  <drepper@redhat.com>
3145         * math/libm-test.inc (expm1_test): Add test for range error.
3147         * Versions.def: Add GLIBC_2.11 for libc.
3148         * debug/Makefile (routines): Add longjmp_chk.
3149         Add rules to build and run tst-longjmp_chk.
3150         * debug/Versions: Export __longjmp_chk for GLIBC_2.11.
3151         * debug/longjmp_chk.c: New file.
3152         * debug/tst-longjmp_chk.c: New file.
3153         * include/bits/setjmp2.: New file.
3154         * include/stdio.h: Mark __fortify_fail as internal_function.
3155         * setjmp/Makefile (headers): Add bits/setjmp2.h.
3156         * setjmp/bits/setjmp2.h: New file.
3157         * setjmp/longjmp.c: If __libc_siglongjmp is defined, don't define any
3158         of the aliases.
3159         * setjmp/setjmp.h: Include <bits/setjmp2.h> if _FORTIFY_SOURCE is
3160         defined.
3161         * sysdeps/i386/____longjmp_chk.S: New file.
3162         * sysdeps/x86_64/____longjmp_chk.S: New file.
3163         * sysdeps/i386/__longjmp.S: If CHECK_ESP is defined, use it.
3164         * sysdeps/x86_64/__longjmp.S: Likewise.
3166         * version.h: Bump for 2.11 development.
3168         * elf/check-execstack.c: New file.
3169         * elf/Makefile: Add rules to build and run check-execstack.
3171 2009-05-10  Ulrich Drepper  <drepper@redhat.com>
3173         * version.h (VERSION): Bump to 2.10.1.
3175         * nss/getXXbyYY_r.c: If NO_COMPAT_NEEDED is defined don't define any
3176         compatibility functions.
3177         * nss/getXXent_r.c: Likewise.
3178         * gshadow/getsgent_r.c: Define NO_COMPAT_NEEDED.
3179         * gshadow/getsgnam_r.c: Likewise.
3180         * gshadow/Version: Remove duplicate entries.
3182         * sysdeps/x86_64/cacheinfo.c (intel_02_cache_info): Add missing entries
3183         for recent processor.
3184         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_cache_info):
3185         Likewise.
3187 2009-05-09  Ulrich Drepper  <drepper@redhat.com>
3189         * version.h (VERSION): Bump for 2.10 release.
3190         * include/features.h (__GLIBC_MINOR__): Bump to 10.
3192         * Makeconfig: Undo last change.  Add asflags-cpu to ASFLAGS in the
3193         same place we add ASFLAGS-config.
3195 2009-05-05  Aurelien Jarno  <aurelien@aurel32.net>
3197         [BZ #10128]
3198         * resolv/res_query.c (__libc_res_nquery): If one query returns NOTIMP
3199         or FORMERR and the other NOERROR, don't raise an error.
3201 2009-05-06  Ryan S. Arnold  <rsa@us.ibm.com>
3203         [BZ #10118]
3204         * Makeconfig (+asflags): New variable based upon ASFLAG or
3205         asflags-cpu.
3206         (ASFLAGS): Add override to set ASFLAGS to +asflags.
3207         * config.make.in (asflags-cpu): Add variable based upon
3208         @libc_cv_cc_submachine@ to propagate -mcpu=CPU from --with-cpu=CPU to
3209         the assembler.
3210         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/setcontext.S:
3211         Remove unneeded file now that the assembler emits _ARCH_PWR6 and
3212         recognizes power6 instruction set due to passing -mcpu=power6 from
3213         --with-cpu=power6 when compiling .S files.
3214         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/swapcontext.S:
3215         Likewise.
3216         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/setcontext.S:
3217         Likewise.
3218         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/swapcontext.S:
3219         Likewise.
3221 2009-05-09  Jakub Jelinek  <jakub@redhat.com>
3223         * string/stratcliff.c (do_test): Test for zero length
3224         STRNLEN, MEMCHR, STRNCPY, STPNCPY, MEMCPY, MEMPCPY and memccpy
3225         at the end of the page.
3227 2009-05-08  Ulrich Drepper  <drepper@redhat.com>
3229         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_AT_RANDOM.
3231         * sysdeps/x86_64/memchr.S: Handle invalid buffer pointers when
3232         count is zero.
3234         * po/da.po: Update from translation team.
3236 2009-05-05  Jakub Jelinek  <jakub@redhat.com>
3238         * io/sys/stat.h (fstatat64): Guard prototype with __USE_LARGEFILE64,
3239         guard __extern_inline wrapper with __USE_ATFILE instead of __USE_GNU.
3241 2009-05-05  Ulrich Drepper  <drepper@redhat.com>
3243         * sysdeps/unix/sysv/linux/sys/personality.h: Add ADDR_COMPAT_LAYOUT
3244         and READ_IMPLIES_EXEC.
3246 2009-05-04  Ulrich Drepper  <drepper@redhat.com>
3248         * po/da.po: Update from translation team.
3250 2009-04-29  Jakub Jelinek  <jakub@redhat.com>
3252         * sysdeps/unix/sysv/linux/ifaddrs.c: Revert unintended 2008-08-12
3253         comment change.
3255 2009-04-27  Jakub Jelinek  <jakub@redhat.com>
3257         * locale/programs/locarchive.c (create_archive): Add MAP_PRIVATE
3258         to MAP_ANON in PROT_NONE mmap64 call.
3259         (open_archive): Likewise.
3260         (file_data_available_p): Use mmap64 instead of mremap.
3261         (enlarge_archive): Likewise.  Update head if ah->addr changed.
3262         Attempt to reserve address space after mmap64 region.
3264 2009-04-26  Ulrich Drepper  <drepper@redhat.com>
3266         * sysdeps/ieee754/dbl-64/s_expm1.c: Set errno for overflow.
3267         * sysdeps/ieee754/flt-32/s_expm1f.c: Likewise.
3268         * sysdeps/x86_64/fpu/s_expm1l.S: Likewise.
3270         * sysdeps/ieee754/k_standard.c (__kernel_standard): Pole errors in
3271         atanh should set ERANGE.
3273         [BZ #10087]
3274         * elf/dl-runtime.c (_dl_fixup): Use DL_FIXUP_VALUE_ADDR to access
3275         result of lookup to make call to implement STT_GNU_IFUNC.
3276         (_dl_profile_fixup): Likewise.
3277         Patch by H.J. Lu <hjl.tools@gmail.com>.
3279         * nscd/connections.c (send_ro_fd): Define temporary variable to avoid
3280         warning.
3282         * sysdeps/unix/sysv/linux/dl-osinfo.h (dl_fatal): Remove inline
3283         from definition.
3285         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Don't define
3286         label if it is not used.
3288         * elf/dl-profile.c (_dl_start_profile): Define real-type variant
3289         of gmon_hist_hdr and gmon_hdr structures and use them.
3290         * elf/sprof.c: Likewise.
3292         * elf/dl-load.c (open_verify): Add temporary variable to avoid
3293         warning.
3295         * nscd/nscd_helper.c (get_mapping): Avoid casts to avoid warnings.
3297         * sunrpc/clnt_raw.c (clntraw_private_s): Use union in definition
3298         to avoid cast.
3300         * inet/rexec.c (rexec_af): Make sa2 a union to avoid warnings.
3301         * inet/rcmd.c (rcmd_af): Make from a union of the various needed types
3302         to avoid warnings.
3303         (iruserok_af): Use ss_family instead of casts.
3305         * gmon/gmon.c (write_hist): Define real-type variant of
3306         gmon_hist_hdr structure and use it.
3307         (write_gmon): Likewise for gmon_hdr.
3309         * sysdeps/unix/sysv/linux/readv.c: Avoid declaration of replacement
3310         function if we are not going to define it.
3311         * sysdeps/unix/sysv/linux/writev.c: Likewise.
3313         * inet/inet6_option.c (option_alloc): Add temporary variable to
3314         avoid warning.
3316         * libio/strfile.h (struct _IO_streambuf): Use correct type and
3317         name of VTable element.
3318         * libio/iovsprintf.c: Avoid casts to avoid warnings.
3319         * libio/iovsscanf.c: Likewise.
3320         * libio/vasprintf.c: Likewise.
3321         * libio/vsnprintf.c: Likewise.
3322         * stdio-common/isoc99_vsscanf.c: Likewise.
3323         * stdlib/strfmon_l.c: Likewise.
3324         * debug/vasprintf_chk.c: Likewise.
3325         * debug/vsnprintf_chk.c: Likewise.
3326         * debug/vsprintf_chk.c: Likewise.
3328         * nss/nsswitch.c (__nss_lookup_function): En/Decrypt cached
3329         function pointers.
3331 2009-04-26  Jakub Jelinek  <jakub@redhat.com>
3333         * sysdeps/ieee754/dbl-64/s_tan.c (tan): Fix -Wsequence-point warnings.
3335 2009-04-25  Ulrich Drepper  <drepper@redhat.com>
3337         * posix/bits/posix1_lim.h: Cleanup namespace a bit.
3339         * sysdeps/i386/fpu/s_tan.S: Set errno for ±Inf.
3340         * sysdeps/i386/fpu/s_tanf.S: Likewise.
3341         * sysdeps/i386/fpu/s_tanl.S: Likewise.
3342         * sysdeps/ieee754/dbl-64/s_tan.c: Likewise.
3343         * sysdeps/ieee754/flt-32/s_tanf.c: Likewise.
3344         * sysdeps/x86_64/fpu/s_tanl.S: Likewise.
3345         * math/libm-test.inc: Add tests for errno after tan calls with
3346         ±Inf.
3348         * sysdeps/ieee754/k_standard.c (__kernel_standard): Use correct
3349         errno value vor pow(+-0,neg).
3350         * math/libm-test.inc (pow_test): Add tests for errno value for
3351         pole errors.
3353         * math/w_fmod.c: Also handle x=±Inf as error.
3354         * math/w_fmodf.c: Likewise.
3355         * math/w_fmodl.c: Likewise.
3356         * math/libm-test.inc (fmod_test): Add tests for errno after calls for
3357         x=±Inf or y=0.
3359         * sysdeps/i386/fpu/s_cos.S: Set errno for ±Inf.
3360         * sysdeps/i386/fpu/s_cosf.S: Likewise.
3361         * sysdeps/i386/fpu/s_cosl.S: Likewise.
3362         * sysdeps/i386/fpu/s_sin.S: Likewise.
3363         * sysdeps/i386/fpu/s_sinf.S: Likewise.
3364         * sysdeps/i386/fpu/s_sinl.S: Likewise.
3365         * sysdeps/ieee754/dbl-64/s_sin.c: Likewise.
3366         * sysdeps/ieee754/flt-32/s_cosf.c: Likewise.
3367         * sysdeps/ieee754/flt-32/s_sinf.c: Likewise.
3368         * sysdeps/ieee754/ldbl-96/s_cosl.c: Likewise.
3369         * sysdeps/ieee754/ldbl-96/s_sinl.c: Likewise.
3370         * sysdeps/x86_64/fpu/s_cosl.S: Likewise.
3371         * sysdeps/x86_64/fpu/s_sinl.S: Likewise.
3372         * math/libm-test.inc: Add tests for errno after sin/cos calls with
3373         ±Inf.
3375         * stdlib/strtod_l.c (round_and_return): We have to set errno to
3376         ERANGE for underflows.
3377         * stdlib/tst-strtod.c (tests): Two tests should set errno to ERANGE.
3379         * stdio-common/stdio_lim.h.in (L_cuserid): Not part of POSIX since
3380         the 2001 revision.
3382         * libio/tst-widetext.input: Remove surrogates.
3384         * include/features.h: _POSIX_C_SOURCE >= 200112L implies C99.
3386         * sysdeps/ieee754/k_standard.c (__kernel_standard): Pole errors
3387         for lgamma should set errno to ERANGE, not EDOM.
3388         * math/libm-test.inc (lgamma_test): Check errno for pole errors.
3390 2009-04-24  Ulrich Drepper  <drepper@redhat.com>
3392         [BZ #10093]
3393         * iconv/gconv_simple.c (BODY for UTF-8 to INTERNAL): Don't accept
3394         UTF-16 surrogates.
3396         * locale/programs/locarchive.c (enlarge_archive): Conserve address
3397         space when temporarily mapping the whole content of the old file.
3399         [BZ #10100]
3400         * misc/hsearch_r.c (hsearch_r): Add back ensurance that hval is
3401         not zero.
3403 2009-04-24  Jakub Jelinek  <jakub@redhat.com>
3405         * iconvdata/sjis.c (BODY): Don't advance inptr before
3406         STANDARD_FROM_LOOP_ERR_HANDLER (2) for 2 byte invalid input.
3407         Use STANDARD_FROM_LOOP_ERR_HANDLER with 2 instead of 1 for
3408         two byte chars.
3410 2009-04-24  Ulrich Drepper  <drepper@redhat.com>
3412         * locale/locarchive.h (struct locarhandle): Rename len field to
3413         mmaped and add new reserved field.
3414         * locale/programs/locarchive.c (RESERVE_MMAP_SIZE): Define.
3415         (create_archive): Reserve address space and then map file into it.
3416         (open_archive): Likewise.
3417         (file_data_available_p): New function.
3418         (compare_from_file): New function.
3419         (close_archive): Adjust to member name changes.
3420         (add_locale): Before comparing locale data, check it is mapped.
3421         Otherwise fall back to reading from the file.
3423 2009-04-23  H.J. Lu  <hongjiu.lu@intel.com>
3425         * stdio-common/psiginfo.c: Include <errno.h>.
3427 2009-04-23  Ulrich Drepper  <drepper@redhat.com>
3429         [BZ #9920]
3430         * stdlib/random_r.c (__srandom_r): Change type of word to int32_t
3431         to get consistency between 32 and 64 bit architectures.
3433         [BZ #10052]
3434         * sysdeps/unix/make-syscalls.sh: Add rule to create target
3435         directory for dummy syscall rules.
3436         Patch by Chris Steinbroner <hesh@pobox.com>.
3438 2009-04-23  Aurelien Jarno  <aurelien@aurel32.net>
3440         [BZ #10092]
3441         * sysdeps/unix/sysv/linux/sys/mount.h: Define MNT_DETACH and
3442         MNT_EXPIRE.
3444 2009-04-23  Ulrich Drepper  <drepper@redhat.com>
3446         * sysdeps/unix/sysv/linux/preadv.c: The kernel API changed.  Adjust.
3447         * sysdeps/unix/sysv/linux/pwritev.c: Likewise.
3449 2009-04-23  Jakub Jelinek  <jakub@redhat.com>
3451         * sysdeps/posix/pwritev.c (PWRITEV): Fix up comment.  Copy
3452         data from vector to temporary buffer and call PWRITEV after it
3453         instead of vice versa.
3454         * sysdeps/posix/preadv.c: Fix up comment.
3455         * misc/preadv.c: Likewise.
3456         * misc/preadv64.c: Likewise.
3457         * misc/pwritev.c: Likewise.
3458         * misc/pwritev64.c: Likewise.
3459         * misc/sys/uio.h (preadv, pwritev, preadv64, pwritev64): Likewise.
3461 2009-04-23  Ulrich Drepper  <drepper@redhat.com>
3463         * shadow/sgetspent_r.c (__sgetspent_r): Recognize too small buffers.
3465         * shadow/Makefile (tests): Add tst-shadow.
3466         * shadow/tst-shadow.c: New file.
3468         [BZ #9955]
3469         * gshadow/Makefile: New file.
3470         * gshadow/Versions: New file.
3471         * gshadow/fgetsgent.c: New file.
3472         * gshadow/fgetsgent_r.c: New file.
3473         * gshadow/getsgent.c: New file.
3474         * gshadow/getsgent_r.c: New file.
3475         * gshadow/getsgnam.c: New file.
3476         * gshadow/getsgnam_r.c: New file.
3477         * gshadow/gshadow.h: New file.
3478         * gshadow/putsgent.c: New file.
3479         * gshadow/sgetsgent.c: New file.
3480         * gshadow/sgetsgent_r.c: New file.
3481         * gshadow/tst-gshadow.c: New file.
3482         * include/gshadow.h: New file.
3483         * Makeconfig (all-subdirs): Add gshadow.
3484         * Makefile (installed-headers): Add gshadow/gshadow.h.
3485         * nss/Makefile (databases): Add sgrp.
3486         * nss/Versions: Add gshadow functions as private exports.
3487         * nss/nsswitch.conf: Add gshadow entry.
3488         * nss/sgrp-lookup.c: New file.
3489         * nss/nss_files/files-parse.c: Add STRING_LIST macro.  Rewrite
3490         parse_list to handle STRING_LIST and TRAILING_LIST_PARSER.
3491         * nss/nss_files/files-sgrp.c: New file.
3492         * sysdeps/generic/paths.h: Add _PATH_GSHADOW.
3493         * sysdeps/unix/sysv/linux/paths.h: Likewise.
3495 2009-04-22  Ulrich Drepper  <drepper@redhat.com>
3497         * stdio-common/printf.h: Add missing const to register_printf_modifier.
3498         * stdio-common/reg-modifier.c: Likewise.
3500 2009-04-22  Andrew Stubbs  <ams@codesourcery.com>
3502         * sysdeps/sh/sh4/setjmp.S (__sigsetjmp): Adjust JB_SIZE when there
3503         is no FPU.
3505 2009-04-20  Ulrich Drepper  <drepper@redhat.com>
3507         [BZ #10086]
3508         * sysdeps/unix/sysv/linux/sys/timex.h: Add definitions from kernel
3509         headers up to 2.6.30.
3511         * po/ca.po: Update from translation team.
3513 2009-04-19  Ulrich Drepper  <drepper@redhat.com>
3515         [BZ #10069]
3516         * elf/dl-open.c (dl_open_worker): We cannot guarantee that we can load
3517         an object that uses static TLS if the TLS modid is higher than the
3518         reserve we always allocate.  At least for multi-threaded code.
3520 2009-04-18  Ulrich Drepper  <drepper@redhat.com>
3522         * stdlib/strfmon_l.c (__vstrfmon_l): Don't wrap when computing width.
3523         Numerically stable check for valid width.
3525         * locale/programs/locarchive.c (open_archive): Map the entire file
3526         and not just the administrative data.
3527         (add_locale): When we find a hash sum match compare the content
3528         to be sure.
3530         * malloc/malloc.c (malloc_info): Output address space information.
3532 2009-04-17  Ulrich Drepper  <drepper@redhat.com>
3534         * malloc/malloc.c (malloc_info): Also output system memory information.
3536         * sysdeps/unix/sysv/linux/kernel-features.h: All supported
3537         architectures have preadv/pwritev in 2.6.30.
3539         * sysdeps/posix/preadv.c: Reading of zero bytes is no error.
3540         * sysdeps/posix/readv.c: Likewise.
3541         Reported by Markus Armbruster <armbru@redhat.com>.
3543         * malloc/hooks.c (top_check): Force hook value into register.
3545 2009-04-16  Samuel Thibault  <samuel.thibault@ens-lyon.org>
3547         * elf/rtld.c (dl_main): Really call _dl_sysdep_start_cleanup after all
3548         calls to _dl_relocate_object.
3550 2009-04-16  Ulrich Drepper  <drepper@redhat.com>
3552         [BZ #9957]
3553         * malloc/malloc.c (force_reg): Define.
3554         (sYSMALLOc): Load hook variable into variable
3555         before test and force into register.
3556         (sYSTRIm): Likewise.
3557         (public_mALLOc): Force hook value into register.
3558         (public_fREe): Likewise.
3559         (public_rEALLOc): Likewise.
3560         (public_mEMALIGn): Likewise.
3561         (public_vALLOc): Likewise.
3562         (public_pVALLOc): Likewise.
3563         (public_cALLOc): Likewise.
3564         (__posix_memalign): Likewise.
3565         * malloc/arena.c (ptmalloc_init): Load hook variable into variable
3566         before test and force into register.
3567         * malloc/hooks.c (top_check): Likewise.
3568         (public_sET_STATe): Pretty printing.
3570         * resolv/res_send.c (send_dg): Don't just ignore the result we got
3571         in case we only receive one reply in single-request mode.
3573 2009-04-16  Jakub Jelinek  <jakub@redhat.com>
3575         * elf/dl-open.c (_dl_open): Bump GL(dl_nns) to 1 if no libraries
3576         are dlopened in statically linked program even for __LM_ID_CALLER.
3578 2009-04-16  Ulrich Drepper  <drepper@redhat.com>
3580         * resolv/res_send.c (send_dg): Don't switch into single-request
3581         mode if we already are in it.
3583 2009-04-15  Ulrich Drepper  <drepper@redhat.com>
3585         * sysdeps/unix/sysv/linux/getsysstats.c (next_line): Make sure there
3586         are always at least 4 bytes in the returned line.
3588 2009-04-15  Jakub Jelinek  <jakub@redhat.com>
3590         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Check
3591         __libc_use_alloca (8192), if the stack is too small use 512 bytes
3592         instead of 8K.  Stop searching in /proc/stat after hitting first
3593         line not starting with cpu.
3594         (next_line): Truncate too long
3595         lines at buffer size * 3/4 instead of pretending there were line
3596         breaks inside of large lines.
3598 2009-04-14  Ulrich Drepper  <drepper@redhat.com>
3600         * sysdeps/x86_64/mp_clz_tab.c: New file.
3602 2009-03-17  Ryan S. Arnold  <rsa@us.ibm.com>
3603             Ulrich Drepper  <drepper@redhat.com>
3605         * sysdeps/unix/sysv/linux/fallocate.c: Handle old kernel headers.
3606         * sysdeps/unix/sysv/linux/fallocate64.c: Likewise.
3607         * sysdeps/unix/sysv/linux/wordsize-64/fallocate.c: Likewise.
3609 2009-03-25  Andrew Stubbs  <ams@codesourcery.com>
3611         * sysdeps/sh/libc-tls.c: New file.
3613         * sysdeps/sh/bits/setjmp.h (__jmp_buf): Give name to structure type.
3615 2009-04-14  Roland McGrath  <roland@redhat.com>
3617         * elf/elf.h: Add various missing ARM constants, to match binutils.
3619 2009-04-14  Ulrich Drepper  <drepper@redhat.com>
3621         Optimizations from GMP.
3622         * sysdeps/x86_64/add_n.S: New file.
3623         * sysdeps/x86_64/addmul_1.S: New file.
3624         * sysdeps/x86_64/lshift.S: New file.
3625         * sysdeps/x86_64/mul_1.S: New file.
3626         * sysdeps/x86_64/rshift.S: New file.
3627         * sysdeps/x86_64/sub_n.S: New file.
3628         * sysdeps/x86_64/submul_1.S: New file.
3630 2009-04-14  Jakub Jelinek  <jakub@redhat.com>
3632         * sysdeps/powerpc/powerpc32/elf/start.S: Ensure .data is non-empty.
3633         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
3634         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
3635         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
3637 2009-04-14  Ulrich Drepper  <drepper@redhat.com>
3639         * sysdeps/unix/sysv/linux/kernel-features.h: SH also has
3640         preadv/pwritev.
3642 2009-04-13  Ulrich Drepper  <drepper@redhat.com>
3644         * sysdeps/x86-64/strrchr.S: New file.
3646 2009-04-10  Ulrich Drepper  <drepper@redhat.com>
3648         * stdio-common/printf.h (struct printf_info): Add user element.
3649         New types printf_arginfo_size_function, printf_va_arg_function.
3650         Declare register_printf_specifier, register_printf_modifier,
3651         register_printf_type.
3652         * stdio-common/printf-parse.h (struct printf_spec): Add size element.
3653         (union printf_arg): Add pa_user element.
3654         Adjust __printf_arginfo_table type.
3655         Add __printf_va_arg_table, __printf_modifier_table,
3656         __handle_registered_modifier_mb, and __handle_registered_modifier_wc
3657         declarations.
3658         * stdio-common/printf-parsemb.c: Recognize registered modifiers.
3659         If registered arginfo call failed try normal specifier.
3660         * stdio-common/printf-prs.c: Pass additional parameter to arginfo
3661         function.
3662         * stdio-common/Makefile (routines): Add reg-modifier and reg-type.
3663         * stdio-common/Versions: Export register_printf_modifier,
3664         register_printf_type, and register_printf_specifier for GLIBC_2.10.
3665         * stdio-common/reg-modifier.c: New file.
3666         * stdio-common/reg-type.c: New file.
3667         * stdio-common/reg-printf.c (__register_printf_specifier): New
3668         function.  Mostly the old __register_printf_function function but
3669         uses locking and type of third parameter changed.
3670         (__register_printf_function): Implement using
3671         __register_printf_specifier.
3672         * stdio-common/vfprintf.c (vfprintf): Collect argument sizes in
3673         calls to arginfo functions.  Allocate enough memory for user-defined
3674         types.  Call new va_arg functions to get user-defined types.
3675         Try installed handlers even for existing format specifiers first.
3677 2009-04-09  Ulrich Drepper  <drepper@redhat.com>
3679         * sysdeps/x86_64/rawmemchr.S: New file.
3681         * stdio-common/vfprintf.c (vfprintf): Slightly more compact code.
3682         Simplified code and possible copy problem fixed.
3684         * sysdeps/unix/sysv/linux/preadv.c: Avoid prototype for static
3685         function if it is not defined.  Add some necessary casts.
3686         * sysdeps/unix/sysv/linux/pwritev.c: Likewise.
3688         * sysdeps/unix/sysv/linux/kernel-features.h: SPARC and IA64 also
3689         have preadv/pwritev in 2.6.30.
3691 2009-04-08  Ulrich Drepper  <drepper@redhat.com>
3693         * malloc/malloc.c (malloc_info): New function.
3694         * malloc/malloc.h: Declare it.
3695         * malloc/Versions: Export malloc_info for GLIBC_2.10.
3697         * sysdeps/unix/sysv/linux/preadv64.c (PREAD): Use __libc_pread64
3698         to avoid PLT slot.
3700         * malloc/malloc.c (_int_realloc): Add parameter with old block
3701         size.  Remove duplicated test.  Don't handle mmap'ed blocks here.
3702         Adjust all callers.
3703         * malloc/hooks.c (realloc_check): Adjust _int_realloc call.
3705 2009-04-07  Ulrich Drepper  <drepper@redhat.com>
3707         * sysdeps/x86_64/strchrnul.S: New file.
3709         * crypt/Makefile (LDLIBS-crypt.so): Use this variable instead of
3710         depending libcrypt on -lfreebl3.
3712         * sysdeps/unix/sysv/linux/kernel-features.h: Power also has
3713         preadv/pwritev in 2.6.30.
3715         * resolv/nss_dns/dns-host.c (getanswer_r): Use strcasecmp
3716         instead of __strcasecmp.
3718         * string/stratcliff.c (do_test): Add memchr tests..
3719         * wcsmbs/wcsatcliff.c (MEMCHR): Define.
3720         * sysdeps/x86_64/memchr.S: Fix handling of end of buffer after
3721         first read quad word.
3723 2009-04-06  Ulrich Drepper  <drepper@redhat.com>
3725         * string/strverscmp.c (__strverscmp): Fix last cleanups.
3726         * string/tst-svc.input: Add new test case.
3727         * string/tst-svc.expect: Adjust.
3728         * string/Makefile: Don't ignore tst-svc error.
3730         * sysdeps/x86_64/memchr.S: New file.
3732         * resolv/resolv.h (RES_SNGLKUP): Define.
3733         * resolv/res_init.c (res_setoptions): Recognize single-request option.
3734         * resolv/res_send.c (send_dg): If we sent two requests at once and
3735         only get one reply before timeout switch to mode where we send the
3736         second request only after the first answer has been received.
3738 2009-04-05  Ulrich Drepper  <drepper@redhat.com>
3740         * sysdeps/x86_64/strlen.S: Optimize by using SSE2 instructions.
3741         * sysdeps/x86_64/strchr.S: Likewise.
3743 2009-04-03  Ulrich Drepper  <drepper@redhat.com>
3745         * configure.in: We need to test for the compiler earlier.
3747         * misc/Makefile (routines): Add preadv, preadv64, pwritev, pwritev64.
3748         * misc/Versions: Export preadv, preadv64, pwritev, pwritev64 for
3749         GLIBC_2.10.
3750         * misc/sys/uio.h: Declare preadv, preadv64, pwritev, pwritev64.
3751         * sysdeps/unix/sysv/linux/kernel-features.h: Add entries for preadv
3752         and pwritev.
3753         * misc/preadv.c: New file.
3754         * misc/preadv64.c: New file.
3755         * misc/pwritev.c: New file.
3756         * misc/pwritev64.c: New file.
3757         * sysdeps/posx/preadv.c: New file.
3758         * sysdeps/posx/preadv64.c: New file.
3759         * sysdeps/posx/pwritev.c: New file.
3760         * sysdeps/posx/pwritev64.c: New file.
3761         * sysdeps/unix/sysv/linux/preadv.c: New file.
3762         * sysdeps/unix/sysv/linux/preadv64.c: New file.
3763         * sysdeps/unix/sysv/linux/pwritev.c: New file.
3764         * sysdeps/unix/sysv/linux/pwritev64.c: New file.
3765         * sysdeps/unix/sysv/linux/wordsize-64/preadv64.c: New file.
3766         * sysdeps/unix/sysv/linux/wordsize-64/pwritev64.c: New file.
3768         * sysdeps/unix/sysv/linux/readv.c (__libc_readv): Fix calling of
3769         compatibility code.
3770         * sysdeps/unix/sysv/linux/writev.c (__libc_writev): Likewise.
3772         * sysdeps/unix/sysv/linux/kernel-features.h: Define
3773         __ASSUME_COMPLETE_READV_WRITEV.
3774         * sysdeps/unix/sysv/linux/readv.c: No need for userlevel fallback
3775         with modern kernels.
3776         * sysdeps/unix/sysv/linux/writev.c: Likewise.
3778         * sysdeps/posix/readv.c: Since read is a cancellation point we have
3779         to free a possible malloced buffer in case of cancellation.
3780         * sysdeps/posix/writev.c: Likewise for write.
3782 2009-04-02  Ulrich Drepper  <drepper@redhat.com>
3784         * sysdeps/unix/sysv/linux/bits/socket.h: Add missing protocol numbers.
3786         * configure.in: Recognize --enable-nss-crypt.
3787         * config.make.in: Add nss-crypt entry.
3788         * crypt/Makefile: If nss-crypt==yes, don't build md5.c, sha256.c,
3789         sha512.c.  Don't run md5test, sha256test, sha512test.  Pass -DUSE_NSS
3790         and include path for NSS directory to compiler for md5-crypt,
3791         sha256-crypt, sha512-crypt.  Link libcrypt.so with -lfreebl3.
3792         * crypt/md5-crypt.c: If USE_NSS is defined, don't use local hash
3793         function implementation, use NSS.  Introduce wrappers around the
3794         hash function calls.  Little code size optimization.
3795         * crypt/sha256-crypt.c: Likewise.
3796         * crypt/sha512-crypt.c: Likewise.
3797         * scripts/check-local-headers.sh: Ignore nss3 directory.
3799         * configure.in: Rename pic_default to libc_cv_pic_default.
3800         * config.make.in: Likewise.
3802 2009-04-01  Roland McGrath  <roland@redhat.com>
3804         * elf/elf.h (R_SPARC_GLOB_JMP): New macro.
3805         (R_SPARC_GOTDATA_HIX22, R_SPARC_GOTDATA_LOX10): New macros.
3806         (R_SPARC_GOTDATA_OP_HIX22, R_SPARC_GOTDATA_OP_LOX10): Likewise.
3807         (R_SPARC_GOTDATA_OP, R_SPARC_H34): Likewise.
3808         (R_SPARC_SIZE32, R_SPARC_SIZE64): Likewise.
3809         (R_SPARC_GNU_VTINHERIT, R_SPARC_GNU_VTENTRY, R_SPARC_REV32): Likewise.
3810         (R_SPARC_NUM): Update.
3811         From Dave Miller <davem@davemloft.net>.
3813 2009-04-01  Ulrich Drepper  <drepper@redhat.com>
3815         * sysdeps/unix/sysv/linux/sys/eventfd.h (EFD_SEMAPHORE): Define.
3817 2009-03-31  Ulrich Drepper  <drepper@redhat.com>
3819         * elf/dl-open.c: Keep track of used name spaces and only iterate over
3820         those which are used.
3821         * elf/dl-addr.c: Likewise.
3822         * elf/dl-caller.c: Likewise.
3823         * elf/dl-fini.c: Likewise.
3824         * elf/dl-iteratephdr.c: Likewise.
3825         * elf/dl-libc.c: Likewise.
3826         * elf/dl-load.c: Likewise.
3827         * elf/dl-support.c: Likewise.
3828         * elf/dl-sym.c: Likewise.
3829         * elf/rtld.c: Likewise.
3830         * sysdeps/generic/ldsodefs.h: Likewise.
3832         * elf/dl-load.c: Remove support for systems without MAP_ANON.
3833         * elf/dl-minimal.c: Likewise.
3834         * elf/dl-misc.c: Likewise.
3835         * elf/rtld.c: Likewise.
3836         * sysdeps/generic/ldsodefs.h: Likewise.
3838 2009-03-30  Ulrich Drepper  <drepper@redhat.com>
3840         * elf/do-lookup.h (do_lookup_x): Minor optimization and cleanup.
3841         Avoid reuse of complex expression.
3843         * po/fr.po: Update from translation team.
3845 2009-03-16  Ulrich Drepper  <drepper@redhat.com>
3847         * include/dirent.h: Yet more changes to match sort function type
3848         change.
3849         * sysdeps/unix/sysv/linux/i386/alphasort64.c: Likewise.
3850         * sysdeps/unix/sysv/linux/i386/olddirent.h: Likewise.
3851         * sysdeps/unix/sysv/linux/i386/versionsort64.c: Likewise.
3853 2009-03-16  Thomas Schwinge  <tschwinge@gnu.org>
3855         * dirent/scandir64.c (scandir64): Adjust declaration to type change.
3857 2009-03-16  Ulrich Drepper  <drepper@redhat.com>
3859         * nscd/connections.c (restart): Try to preserve the process name
3860         by reading the /proc/self/exe symlink and using the return name.
3861         Patch by Jeff Bastian <jbastian@redhat.com>.
3863 2009-03-15  Ulrich Drepper  <drepper@redhat.com>
3865         [BZ #9733]
3866         * elf/dl-load.c (_dl_map_object_from_fd): Only call audit hooks
3867         if we are not loading a new audit library.
3868         * elf/dl-reloc (_dl_relocate_object): Third parameter is now a bitmask.
3869         Only use profiling trampoline for auditing if we are not relocating
3870         an audit library.
3871         * elf/dl-open.c (dl_open_worker): Adjust _dl_relocate_object call.
3872         * elf/rtld.c: Likewise.
3873         * sysdeps/generic/ldsodefs.h: Adjust _dl_relocate_object prototype.
3875         * elf/rtld.c (dl_main): Extend help message for --audit option.
3877         [BZ #9759]
3878         * dirent/dirent.h: Adjust prototypes of scandir, scandir64, alphasort,
3879         alphasort64, versionsort, and versionsort64 to POSIX 2008.
3880         * dirent/alphasort.c: Adjust implementation to type change.
3881         * dirent/alphasort64.c: Likewise.
3882         * dirent/scandir.c: Likewise.
3883         * dirent/versionsort.c: Likewise.
3884         * dirent/versionsort64.c: Likewise.
3885         * sysdeps/wordsize-64/alphasort.c: Add hack to hide alphasort64
3886         declaration.
3887         * sysdeps/wordsize-64/versionsort.c: Add hack to hide versionsort64
3888         declaration.
3890         [BZ #9880]
3891         * inet/inet6_rth.c (inet6_rth_reverse): Compute number of segments
3892         correctly.  Set segleft member in output as required.
3893         Patch partly by Yang Hongyang <yanghy@cn.fujitsu.com>.
3894         * inet/tst-inet6_rth.c (do_test): Add tests for inet6_rth_reverse.
3896         [BZ #9881]
3897         * inet/inet6_rth.c (inet6_rth_add): Add some error checking.
3898         Patch mostly by Yang Hongyang <yanghy@cn.fujitsu.com>.
3899         * inet/Makefile (tests): Add tst-inet6_rth.
3900         * inet/tst-inet6_rth.c: New file.
3902         [BZ #5807]
3903         * string/strlen.c (strlen): Fix omission in the expression to test
3904         for NUL bytes.
3906 2009-03-14  Ulrich Drepper  <drepper@redhat.com>
3908         * crypt/sha256test.c (main): Perform 100,000 'a' test in a second way.
3910         * elf/dl-runtime.c (reloc_offset): Define.
3911         (reloc_index): Define.
3912         (_dl_fixup): Rename reloc_offset parameter to reloc_arg.
3913         (_dl_fixup_profile): Likewise.  Use reloc_index instead of
3914         computing index from reloc_offset.
3915         (_dl_call_pltexit): Likewise.
3916         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_resolve): Just pass
3917         the relocation index to _dl_fixup.
3918         (_dl_runtime_profile): Likewise for _dl_fixup_profile and
3919         _dl_call_pltexit.
3920         * sysdeps/x86_64/dl-runtime.c: New file.
3922         [BZ #9893]
3923         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Fix
3924         alignment of La_x86_64_regs.  Store xmm parameters.
3925         Patch mostly by Jiri Olsa <olsajiri@gmail.com>.
3927         [BZ #9913]
3928         * string/strverscmp.c (__strverscmp): Fix case of different digits
3929         in fractional part of string.
3930         Patch by Jingyu Liu <jyliu@fortinet.com>.
3931         * string/Makefile (tests): Add tst-svc2.
3932         * string/tst-svc2.c: New file.
3934         * string/strverscmp.c (__strverscmp): Optimize size of tables.
3936         * locale/iso-639.def: Add Min Nan.
3938 2009-03-11  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
3940         [BZ #9948]
3941         * elf/dl-sysdep.c (_dl_show_auxv): Add support for AT_BASE_PLATFORM.
3943 2009-03-14  Ulrich Drepper  <drepper@redhat.com>
3945         * elf/dl-sysdep.c (auxvars): Compress data structure.
3947         * sysdeps/i386/dl-machine.h (elf_machine_rel): Implement
3948         STT_GNU_IFUNC handling.
3949         (elf_machine_rela): Likewise.
3951 2009-03-13  Ulrich Drepper  <drepper@redhat.com>
3953         * config.h.in (USE_MULTIARCH): Define.
3954         * configure.in: Handle --enable-multi-arch.
3955         * elf/dl-runtime.c (_dl_fixup): Handle STT_GNU_IFUNC.
3956         (_dl_fixup_profile): Likewise.
3957         * elf/do-lookup.c (dl_lookup_x): Likewise.
3958         * sysdeps/x86_64/dl-machine.h: Handle STT_GNU_IFUNC.
3959         * elf/elf.h (STT_GNU_IFUNC): Define.
3960         * include/libc-symbols.h (libc_ifunc): Define.
3961         * sysdeps/x86_64/cacheinfo.c: If USE_MULTIARCH is defined, use the
3962         framework in init-arch.h to get CPUID values.
3963         * sysdeps/x86_64/multiarch/Makefile: New file.
3964         * sysdeps/x86_64/multiarch/init-arch.c: New file.
3965         * sysdeps/x86_64/multiarch/init-arch.h: New file.
3966         * sysdeps/x86_64/multiarch/sched_cpucount.c: New file.
3968         * config.make.in (experimental-malloc): Define.
3969         * configure.in: Handle --enable-experimental-malloc.
3970         * malloc/Makefile: Handle experimental-malloc flag.
3971         * malloc/malloc.c: Implement PER_THREAD and ATOMIC_FASTBINS features.
3972         * malloc/arena.c: Likewise.
3973         * malloc/hooks.c: Likewise.
3974         * malloc/malloc.h: Define M_ARENA_TEST and M_ARENA_MAX.
3976 2009-03-11  Ulrich Drepper  <drepper@redhat.com>
3978         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Add branch
3979         prediction.  A few size optimizations.
3981 2009-03-10  Ulrich Drepper  <drepper@redhat.com>
3983         * time/tzset.c: Optimize a bit for size.
3985 2009-03-10  Jakub Jelinek  <jakub@redhat.com>
3987         * include/stdio.h (fmemopen): Add libc_hidden_proto.
3988         * libio/fmemopen.c (fmemopen): Add libc_hidden_def.
3990         * elf/sprof.c: Avoid warning about multi-line comment.
3992 2009-03-10  Ulrich Drepper  <drepper@redhat.com>
3994         * time/tzset.c (__tzset_parse_tz): Use correct string when parsing
3995         DST name.
3996         * time/tst-posixtz.c: Add tests for quoted timezone names.
3998 2009-03-10  Jakub Jelinek  <jakub@redhat.com>
4000         * posix/unistd.h (_POSIX_VERSION, _POSIX2_VERSION, _POSIX2_C_BIND,
4001         _POSIX2_C_DEV, _POSIX2_SW_DEV, _POSIX2_LOCALEDEF): Define to
4002         200809L instead of 200112L.
4003         (_XOPEN_VERSION): For __USE_XOPEN2K8 define to 700.
4004         * posix/tst-sysconf.c (STDVER): Define to 200809L instead of 200112L.
4006         * stdlib/quick_exit.c (quick_exit): Pass &__quick_exit_funcs
4007         instead of __quick_exit_funcs to __run_exit_handlers.
4008         * stdlib/at_quick_exit.c (at_quick_exit): Add attribute_hidden.
4009         * stdlib/exit.h (__run_exit_handlers): Add noreturn attribute.
4010         (__cxa_at_quick_exit): Remove attribute_hidden.
4011         * stdlib/exit.c (exit): Pass &__exit_funcs instead of __exit_funcs
4012         to __run_exit_handlers.
4013         * stdlib/cxa_at_quick_exit.c (__cxa_at_quick_exit): Remove
4014         attribute_hidden.
4016 2009-03-10  Ulrich Drepper  <drepper@redhat.com>
4018         * po/id.po: Update from translation team.
4020 2009-02-18  Jakub Jelinek  <jakub@redhat.com>
4022         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Use
4023         .machine push; .machine "power6" and .machine pop around mtfsf
4024         insns outside of _ARCH_PWR6 define.
4025         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
4026         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S:
4027         Likewise.
4028         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S:
4029         Likewise.
4030         * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (_SET_DI_FPSCR): Likewise.
4031         * sysdeps/powerpc/fpu/fenv_libc.h (fesetenv_register,
4032         relax_fenv_state): Likewise.
4034 2009-03-08  Ulrich Drepper  <drepper@redhat.com>
4036         * stdlib/Makefile (routines): Add quick_exit, at_quick_exit, and
4037         cxa_at_quick_exit.
4038         (static-only-routines): Add at_quick_exit.
4039         * stdlib/Versions: Export quick_exit and __cxa_at_quick_exit for
4040         GLIBC_2.10.
4041         * stdlib/quick_exit.c: New file.
4042         * stdlib/at_quick_exit.c: New file.
4043         * stdlib/cxa_at_quick_exit.c: New file.
4044         * stdlib/cxa_atexit.c (__cxa_atexit): Move body to new function.  Call
4045         it appropriately.
4046         (__internal_atexit): New function.
4047         (__new_exitfn): Now takes parameter to point to the list to use.
4048         * stdlib/cxa_finalize.c: Remove quick_exit handlers, don't call them.
4049         * stdlib/exit.c (__run_exit_handlers): New function.  Split from...
4050         (exit): ...here.  Just call __run_exit_handlers appropriately.
4051         * stdlib/exit.h: Declare __quick_exit_funcs, __run_exit_handlers,
4052         __internal_atexit, __cxa_at_quick_exit.  Adjust __new_exitfn.
4053         * stdlib/on_exit.c: Adjust call to __new_exitfn.
4054         * stdlib/stdlib.h: Declare at_quick_exit and quick_exit.
4056         * po/id.po: Update from translation team.
4058 2009-03-07  Ulrich Drepper  <drepper@redhat.com>
4060         * po/ru.po: Update from translation team.
4062 2009-03-04  Ulrich Drepper  <drepper@redhat.com>
4064         * po/nl.po: Update from translation team.
4066 2009-03-03  Ulrich Drepper  <drepper@redhat.com>
4068         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Declare fallocate{,64}.
4069         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
4070         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
4071         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
4072         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
4073         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
4074         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
4076         * po/pl.po: Update from translation team.
4078 2009-03-02  Ulrich Drepper  <drepper@redhat.com>
4080         [BZ #7083]
4081         * sysdeps/unix/sysv/linux/fallocate.c: New file.
4082         * sysdeps/unix/sysv/linux/fallocate64.c: New file.
4083         * sysdeps/unix/sysv/linux/wordsize-64/fallocate64.c: New file.
4084         * sysdeps/unix/sysv/linux/wordsize-64/fallocate.c: New file.
4085         * sysdeps/unix/sysv/linux/i386/fallocate64.c: New file.
4086         * sysdeps/unix/sysv/linux/i386/fallocate.c: New file.
4087         * sysdeps/unix/sysv/linux/Versions: Export fallocate and fallocate64
4088         for GLIBC_2.10.
4089         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
4090         Add fallocate and fallocate64.
4092         * io/fcntl.h: Pretty printing.
4094 2009-03-02  Richard Guenther  <rguenther@suse.de>
4096         * misc/sys/cdefs.h (__extern_always_inline): Add __artificial__
4097         attribute also for non-C99 inline semantics variant.
4099 2009-02-12  Carlos Eduardo Seo  <cseo@linux.vnet.ibm.com>
4101         * sysdeps/powerpc/powerpc32/power7/fpu/Implies: New file.
4102         * sysdeps/powerpc/powerpc32/power7/Implies: Likewise.
4103         * sysdeps/powerpc/powerpc64/power7/fpu/Implies: Likewise.
4104         * sysdeps/powerpc/powerpc64/power7/Implies: Likewise.
4105         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/fpu/Implies:
4106         Likewise.
4107         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/fpu/Implies:
4108         Likewise.
4110 2009-03-02  Ulrich Drepper  <drepper@redhat.com>
4112         * po/cs.po: Update from translation team.
4114 2009-02-28  Ulrich Drepper  <drepper@redhat.com>
4116         * po/bg.po: Update from translation team.
4117         * po/sv.po: Likewise.
4118         * po/fi.po: Likewise.
4119         * po/vi.po: Likewise.
4121 2009-02-27  Roland McGrath  <roland@redhat.com>
4123         * Makeconfig (%.v.i): Depend on Makeconfig.
4124         Exclude % lines from initial #-comment removal.
4126 2009-02-27  Ulrich Drepper  <drepper@redhat.com>
4128         * po/ko.po: Update from translation team.
4130 2009-02-26  Roland McGrath  <roland@redhat.com>
4132         * shadow/lckpwdf.c (__lckpwdf): Move FLAGS inside block using it,
4133         avoids unused warning.
4135 2009-02-26  Andrew Stubbs  <ams@codesourcery.com>
4136             SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
4138         * sysdeps/unix/sysv/linux/sh/sys/procfs.h: Don't include signal.h,
4139         sys/ucontext.h and asm/elf.h.  Include sys/user.h.
4140         * sysdeps/unix/sysv/linux/sh/sys/user.h: Don't include features.h
4141         and asm/user.h.  Include asm/ptrace.h.
4142         (PTRACE_GETREGS, PTRACE_SETREGS, PTRACE_GETFPREGS,
4143         PTRACE_SETFPREGS, PTRACE_GETFDPIC, PTRACE_GETFDPIC_EXEC,
4144         PTRACE_GETFDPIC_INTERP, PTRACE_GETDSPREGS, PTRACE_SETDSPREGS):
4145         Undefine.
4146         (start_thread): Don't undefine.
4147         (elf_greg_t, ELF_NGREG, elf_fpregset_t, user_fpu_struct, user):
4148         Define.
4150 2009-02-26  Ulrich Drepper  <drepper@redhat.com>
4152         * wctype/wctype.h: The *_l functions are in POSIX 2008.
4153         * wcsmbs/wchar.h: mbsnrtowcs, open_wmemstream, wcpcpy, wcpncpy,
4154         wcscasecmp, wcsdup, wcsncasecmp, wcsnlen, wcsnrtombs,
4155         wcscasecmp_l, wcsncasecmp_l, wcscoll_l, and wcsxfrm_l.
4156         * sysdeps/mach/hurd/bits/posix_opt.h: Reset value of macros from
4157         200112L to 200809L.
4158         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise.
4159         * posix/getconf.c (vars): Add _SC_THREAD_ROBUST_PRIO_INHERIT and
4160         _SC_THREAD_ROBUST_PRIO_PROTECT entries.
4161         * bits/confname.h: Add _SC_THREAD_ROBUST_PRIO_INHERIT and
4162         _SC_THREAD_ROBUST_PRIO_PROTECT.
4163         * posix/unistd.h: fexecve is in POSIX 2008.
4164         * time/time.h: strftime_l is in POSIX 2008.
4165         * io/sys/stat.h: futimens is in POSIX 2008.
4166         * string/strings.h: strcasecmp_l and strncasecmp_l are in POSIX 2008.
4167         * string/string.h: stpcpy, stpncpy, strndup, strnlen, strsignal,
4168         strcoll_l, strerror_l, and strxfrm_l are in POSIX 2008.
4169         * stdlib/stdlib.h: mkdtemp is in POSIX 2008.
4170         * libio/stdio.h: dprintf, fmemopen, getdelim, getline,
4171         open_memstream, and vdprintf are in POSIX 2008.
4173 2009-02-25  Ulrich Drepper  <drepper@redhat.com>
4175         * include/features.h: Define macros for XPG7/POSIX 2008.
4176         * ctype/ctype.h: The *_l functions are in POSIX 2008.
4177         * dirent/dirent.h: alphasort, dirfd, scandir, and fdopendir are in
4178         POSIX 2008.
4179         * locale/langinfo.h: nl_langinfo_l is in POSIX 2008.
4180         * locale/xlocale.h: Define locale_t type.
4181         * locale/locale.h: duplocale, freelocale, newlocale, uselocale are
4182         in POSIX 2008.  Don't define locale_t here.
4183         * stdlib/monetary.h: strfmon_l is in POSIX 2008.
4184         * sysdeps/unix/sysv/linux/bits/stat.h: Protect UTIME_NOW and
4185         UTIME_OMIT only with __USE_ATFILE.
4186         * signal/signal.h: Declare psignal and psiginfo for POSIX 2008.
4187         * stdio-common/psiginfo.c: New file.
4188         * stdio-common/psiginfo-data.h: New file.
4189         * stdio-common/psiginfo-define.h: New file.
4190         * stdio-common/Makefile (routines): Add psiginfo.
4191         * stdio-common/Versions: Export psiginfo for GLIBC_2.10.
4192         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
4193         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
4194         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
4195         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
4196         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
4197         * io/sys/stat.h: Move mknodat definition into same conditional as
4198         mknod.
4199         * time/sys/time.h: futimesat is not among the functions accepted
4200         into the POSIX standard.
4202         * include/features.h: If no feature selection given and we select
4203         by default a POSIX mode, also define __USE_POSIX_IMPLICITLY.
4204         * posix/Versions: Export __posix_getopt.
4205         * posix/getopt.c (_getopt_initialize): Take additional parameter.
4206         Use it to alternatively initialize __posixly_correct.
4207         (_getopt_internal_r): Take addition parameter.  Pass on to
4208         _getopt_initialize.
4209         (_getopt_internal): Take addition parameter.  Pass on to
4210         _getopt_internal_r.
4211         (getopt): Pass additional zero to _getopt_internal.
4212         (__posix_getopt): New function.
4213         * posix/getopt.h: Add redirection for getopt.
4214         * posix/getopt1.c (getopt_long): Pass additional zero to
4215         _getopt_internal.
4216         (getopt_long_only): Likewise.
4217         (_getopt_long_r): Pass additional zero to _getopt_internal_r.
4218         (_getopt_long_only_r): Likewise.
4219         * posix/getopt_int.h: Adjust declarations of _getopt_internal and
4220         _getopt_internal_r.
4222 2009-02-24  Ulrich Drepper  <drepper@redhat.com>
4224         * bits/confname.h: Define _SC_TRACE_EVENT_NAME_MAX, _SC_TRACE_NAME_MAX,
4225         _SC_TRACE_SYS_MAX, _SC_TRACE_USER_EVENT_MAX, _SC_XOPEN_STREAMS.
4226         * sysdeps/posix/sysconf.c (__sysconf): Handle
4227         _SC_TRACE_EVENT_NAME_MAX, _SC_TRACE_NAME_MAX, _SC_TRACE_SYS_MAX,
4228         _SC_TRACE_USER_EVENT_MAX, _SC_XOPEN_STREAMS.
4230 2009-02-24  Roland McGrath  <roland@redhat.com>
4232         [BZ #9895]
4233         * README.template: Reworded not to use substituted version number.
4234         Renamed to ...
4235         * README: ... here (no longer generated).
4236         * Makefile (README): Target removed.
4238 2009-02-24  Ulrich Drepper  <drepper@redhat.com>
4240         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf):
4241         /proc/sys/kernel/rtsig_max doesn't exist anymore, use getrlimit
4242         instead.
4244         * io/sys/stat.h: The lstat functions have been mandatory since 2001.
4246         * time/tzset.c (tzset_internal): Correct parsing of TZ envvar.
4248 2009-02-22  Ulrich Drepper  <drepper@redhat.com>
4250         * po/bg.po: Update from translation team.
4252 2009-02-16  Jakub Jelinek  <jakub@redhat.com>
4254         * stdlib/monetary.h: Uglify function parameter names.
4255         * sunrpc/rpc/pmap_clnt.h: Likewise.
4256         * sunrpc/rpc/svc.h: Likewise.
4257         * sunrpc/rpc/xdr.h: Likewise.
4258         * sunrpc/rpc/clnt.h: Likewise.
4259         * resolv/netdb.h: Likewise.
4260         * resolv/arpa/nameser.h: Likewise.
4261         * resolv/resolv.h: Likewise.
4262         * argp/argp.h: Likewise.
4263         * locale/langinfo.h: Likewise.
4264         * io/sys/stat.h: Likewise.
4265         * posix/spawn.h: Likewise.
4266         * nis/rpcsvc/nislib.h: Likewise.
4267         * malloc/obstack.h: Likewise.
4268         * sysdeps/ia64/bits/link.h: Likewise.
4269         * sysdeps/i386/bits/link.h: Likewise.
4270         * sysdeps/s390/bits/link.h: Likewise.
4271         * sysdeps/powerpc/bits/link.h: Likewise.
4272         * sysdeps/x86_64/bits/link.h: Likewise.
4273         * sysdeps/sparc/bits/link.h: Likewise.
4274         * sysdeps/sh/bits/link.h: Likewise.
4275         * sysdeps/unix/sysv/linux/i386/sys/io.h: Likewise.
4276         * sysdeps/unix/sysv/linux/x86_64/sys/io.h: Likewise.
4277         * sysdeps/unix/sysv/linux/sparc/sys/eventfd.h: Likewise.
4278         * sysdeps/unix/sysv/linux/sys/eventfd.h: Likewise.
4280 2008-12-01  Fredrik Unger  <fred@tree.se>
4282         * soft-fp/double.h [_FP_W_TYPE_SIZE >= 64] (FP_UNPACK_SEMIRAW_D,
4283         FP_UNPACK_SEMIRAW_DP): Use _FP_UNPACK_RAW_1 instead of
4284         _FP_UNPACK_RAW_2, fix up first argument.
4286 2009-02-15  Ulrich Drepper  <drepper@redhat.com>
4288         * sysdeps/unix/sysv/linux/getsysstats.c (next_line): New function.
4289         (GET_NPROCS_PARSER): Change parameters and use next_line.
4290         (__get_nprocs): Rewrite to not use stdio routines.
4291         * sysdeps/unix/sysv/linux/sparc/getsysstats.c (GET_NPROCS_PARSER):
4292         Change parameters and use next_line.
4294 2009-02-13  Ulrich Drepper  <drepper@redhat.com>
4296         [BZ #5381]
4297         * nscd/nscd.h: Remove definitions and declarations for mem_in_flight.
4298         Change mempool_alloc prototype.
4299         * nscd/mem.c (gc): Don't handle mem_in_flight.
4300         (mempool_alloc): Third parameter now only indicates whether this is the
4301         first call (to allocate data) or not.  If it is, get db rdlock.
4302         Release it on error.  Don't handle mem_in_flight.
4303         * nscd/aicache.c (addhstaiX): Mark he parameter as const.
4304         Adjust third parameter of mempool_alloc calls.
4305         Nothing to do here in case mempool_alloc fails.
4306         Avoid local variable shadowing parameter.  No need to get db rdlock
4307         before calling cache_add.
4308         * nscd/cache.c (cache_add): Adjust call to mempool_alloc.  There is
4309         no mem_in_flight array anymore.
4310         * nscd/connections.c: Remove definition and handling of mem_in_flight.
4311         * nscd/grpcache.c (cache_addgr): Adjust third parameter of
4312         mempool_alloc calls.  Mark he parameter as const.  Nothing to do here
4313         in case mempool_alloc fails. No need to get db rdlock before calling
4314         cache_add.
4315         * nscd/hstcache.c (cache_addhst): Likewise.
4316         * nscd/initgrcache.c (addinitgroupsX): Likewise.
4317         * nscd/servicescache.c (cache_addserv): Likewise.
4318         * nscd/pwdcache.c (cache_addpw): Likewise.  Remove some debugging code.
4320 2009-02-11  Ulrich Drepper  <drepper@redhat.com>
4322         * po/lt.po: Update from translation team.
4324 2009-02-10  Ulrich Drepper  <drepper@redhat.com>
4326         * elf/dl-load.c (open_verify): In case VALID_ELF_HEADER is
4327         defined, allow additional data to be added using the optional
4328         MORE_ELF_HEADER_DATA macro.
4329         * sysdeps/unix/sysv/linux/ldsodefs.h (VALID_ELF_HEADER,
4330         VALID_ELF_OSABI, VALID_ELF_ABIVERSION, MORE_ELF_HEADER_DATA): Define.
4332 2009-02-08  Ulrich Drepper  <drepper@redhat.com>
4334         * include/atomic.h: Define catomic_and if not already defined.
4335         * sysdeps/x86_64/bits/atomic.h: Define catomic_and.
4336         * sysdeps/i386/i486/bits/atomic.h: Likewise.
4338 2009-02-07  Ulrich Drepper  <drepper@redhat.com>
4340         * malloc/malloc.c (_int_free): Second argument is now mchunkptr.
4341         Change all callers.
4342         (_int_realloc): Likewise.  Third argument is now padded size
4343         All _int_* functions are now static.
4345         * malloc/hooks.c: Change all callers to _int_free and _int_realloc.
4346         * malloc/arena.c: Likewise.
4347         * include/malloc.h: Remove now unnecessary declarations of the _int_*
4348         functions.
4350         * sunrpc/rpc_common.c: We cannot move _null_auth into .rodata that
4351         easily.
4353         * malloc/malloc.c: Add branch prediction for use of the hooks.
4355         * grp/compat-initgroups.c [NOT_IN_libc] (__libc_use_alloca): Define.
4357 2009-02-06  Ulrich Drepper  <drepper@redhat.com>
4359         [BZ #7095]
4360         * bits/confname.h: Add SUSv7 macros for getconf environments.
4361         * bits/environments.h: Likewise.
4362         * sysdeps/unix/sysv/linux/i386/bits/environments.h: Likewise.
4363         * sysdeps/unix/sysv/linux/powerpc/bits/environments.h: Likewise.
4364         * sysdeps/unix/sysv/linux/s390/bits/environments.h: Likewise.
4365         * sysdeps/unix/sysv/linux/sparc/bits/environments.h: Likewise.
4366         * sysdeps/unix/sysv/linux/x86_64/bits/environments.h: Likewise.
4367         * posix/confstr.c: Handle SUSv5 and SUSv7 environments.
4368         * posix/getconf.c: Likewise.
4369         * posix/sysconf.c: Likewise.
4370         * sysdeps/posix/sysconf.c: Likewise.
4371         * posix/Makefile (getconf.speclist): Also collect SUSv5 and SUSv7
4372         environments.
4374 2009-01-16  Petr Baudis  <pasky@suse.cz>
4376         [BZ #9753]
4377         * resolv/res_libc.c (__res_maybe_init): Call __res_vinit()
4378         even if we currently have zero nscount.
4380 2009-02-06  Ulrich Drepper  <drepper@redhat.com>
4382         [BZ #9781]
4383         * grp/compat-initgroups.c (compat_call): Switch to use malloc when
4384         the input line is too long.
4386         * po/Makefile (libc.pot): Add f_print as function taking c-format
4387         parameter.
4389         * debug/xtrace.sh: Unify translatable messages.
4390         * elf/ldd.bash.in: Likewise.
4391         * elf/sprof.c: Likewise.
4392         * locale/programs/locale.c: Likewise.
4393         * malloc/memusage.sh: Likewise.
4394         * nss/getent.c: Likewise.
4396 2009-02-06  Joseph Myers  <joseph@codesourcery.com>
4398         * debug/pcprofiledump.c (print_version,
4399         argp_program_version_hook): New function.
4400         * elf/ldconfig.c (more_help): New function.
4401         (argp): Use it.
4402         * elf/sln.c (usage): New function.
4403         (main): Support --help and --version.
4404         * malloc/memusagestat.c (print_version): New function.
4405         (argp_program_version_hook): New variable.
4406         * nscd/nscd.c (more_help): New function.
4407         (argp): Use it.
4408         * posix/getconf.c (main): Send --version output to stdout.
4409         Support --help.
4410         * sunrpc/rpc_main.c (usage, options_usage): Take STREAM and STATUS
4411         arguments.  All callers changed.
4412         (print_version): New function.
4413         (parseargs): Support --help and --version.
4414         * sunrpc/rpcinfo.c (usage): Take STREAM argument.  All callers
4415         changed.
4416         (print_version): New function.
4417         (main): Use getopt_long.  Support --help and --version.
4418         * sysdeps/unix/sysv/linux/lddlibc4.c (main): Support --help and
4419         --version.
4421 2009-02-06  Ulrich Drepper  <drepper@redhat.com>
4423         * malloc/memusage.c (DEFAULT_BUFFER_SIZE): Change to 32768.
4424         (update_data): Fix handling of wrapping back
4425         to the beginning of the buffer.
4427         [BZ #9823]
4428         * stdio-common/psignal.c (psignal): Fix test for empty string.
4430 2009-02-05  Ulrich Drepper  <drepper@redhat.com>
4432         * include/rpc/auth.h: Use libc_hidden_proto for _null_auth.
4433         * sunrpc/rpc_common.c: Add libc_hidden_def for _null_auth.  Also
4434         move _null_auth to .rodata.
4436         * time/tzset.c (__tzset_parse_tz): DST offset must also allow hour
4437         value of 24.
4439         * intl/dcigettext.c (DCIGETTEXT): Avoid some code duplication.
4441         * sysdeps/unix/opendir.c (__alloc_dir): We have a lot more memory
4442         today than when the original code was written.  Use larger
4443         buffers.  This also makes it unnecessary to have stat information,
4444         if this causes extra efforts.
4445         (__opendir): In case O_DIRECTORY works, don't call fstat just for
4446         __alloc_dir.
4448 2009-02-03  Andrew Stubbs  <ams@codesourcery.com>
4450         * sysdeps/sh/sh4/dl-trampoline.S: Only set HAVE_FPU if __SH_FPU_ANY__
4451         is set.
4452         * sysdeps/sh/sh4/setjmp.S: Support SH4-NOFPU.
4453         * sysdeps/sh/sh4/__longjmp.S: Likewise.
4454         * sysdeps/unix/sysv/linux/sh/sh4/getcontext.S: Likewise.
4455         * sysdeps/unix/sysv/linux/sh/sh4/setcontext.S: Likewise.
4456         * sysdeps/unix/sysv/linux/sh/sh4/swapcontext.S: Likewise.
4457         * sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Likewise.
4459 2009-02-04  Ulrich Drepper  <drepper@redhat.com>
4461         * po/ru.po: Update from translation team.
4463 2008-11-17  Nathan Sidwell  <nathan@codesourcery.com>
4465         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h (struct sigevent):
4466         Add _tid slot to maintain consistency with kernel.
4468 2009-02-04  Ulrich Drepper  <drepper@redhat.com>
4470         * libio/wfileops.c (_IO_wfile_underflow): Fix handling of
4471         incomplete characters at end of input buffer.
4472         * libio/Makefile (tests): Add tst-fgetwc.
4473         * libio/tst-fgetwc.c: New file.
4474         * libio/tst-fgetwc.input: New file.
4476 2009-02-02  Andrew Stubbs  <ams@codesourcery.com>
4478         * sysdeps/unix/sysv/linux/sh/Makefile (libm.so-no-z-defs): Define.
4480 2009-02-02  Ulrich Drepper  <drepper@redhat.com>
4482         [BZ #9793]
4483         * iconv/gconv_trans.c (__gconv_transliterate): Don't change
4484         *OUTBUFSTART unless the whole output fit into the buffer.
4485         * iconv/Makefile (tests): Add tst-iconv4.
4486         * iconv/tst-iconv4.c: New file.
4488 2009-02-01  Ulrich Drepper  <drepper@redhat.com>
4490         * sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new descriptors.
4491         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
4493 2009-01-29  Andrew Stubbs  <ams@codesourcery.com>
4495         * elf/Makefile (ld.so): Adjust the sed script to insert _begin in to
4496         newer linker scripts.
4498 2009-01-30  Ulrich Drepper  <drepper@redhat.com>
4500         [BZ #7040]
4501         * sysdeps/unix/sysv/linux/sys/inotify.h: Second parameter of
4502         inotify_rm_watch should have type int.
4504 2009-01-06  Steven Munroe  <sjmunroe@us.ibm.com>
4506         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp):
4507         Make aligned_restore_vmx a local symbol.
4508         * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp):
4509         Likewise.
4511 2009-01-30  Andreas Jaeger  <aj@suse.de>
4513         * sysdeps/unix/sysv/linux/bits/shm.h (SHM_EXEC): Define.
4514         * sysdeps/unix/sysv/linux/ia64/bits/shm.h (SHM_EXEC): Define.
4515         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (SHM_EXEC): Define.
4516         * sysdeps/unix/sysv/linux/s390/bits/shm.h (SHM_EXEC): Define.
4517         * sysdeps/unix/sysv/linux/sh/bits/shm.h (SHM_EXEC): Define.
4518         * sysdeps/unix/sysv/linux/sparc/bits/shm.h (SHM_EXEC): Define.
4519         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h (SHM_EXEC): Define.
4521 2009-01-11  Ryan S. Arnold  <rsa@us.ibm.com>
4523         [BZ #9726]
4524         * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (_SET_DI_FPSCR,
4525         _SET_SI_FPSCR): Clobber fp0 to prevent erroneous test-case passes.
4527 2009-01-08  Ryan S. Arnold  <rsa@us.ibm.com>
4529         [BZ #9726]
4530         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
4531         (__CONTEXT_FUNC_NAME): Fix mtfsf to use fp31 instead of fp0.
4532         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
4533         (__CONTEXT_FUNC_NAME): Fix mtfsf to use fp31 instead of fp0.
4535 2009-01-11  Thomas Schwinge  <tschwinge@gnu.org>
4537         * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Use
4538         memcpy instead of memcmp.
4539         (_dl_setup_pointer_guard): Likewise.
4541 2009-01-30  Ulrich Drepper  <drepper@redhat.com>
4543         * malloc/malloc.c (sYSMALLOc): Don't use assert when detecting
4544         manipulated brk, use malloc_printerr.
4545         * misc/sbrk.c (__sbrk): Better error handling for nonsense
4546         requests.
4548 2009-01-30  Jakub Jelinek  <jakub@redhat.com>
4550         * string/string.h (memchr, strchr, strrchr, strpbrk, strstr, index,
4551         rindex): For C++ add inlines so that they can be recognized as
4552         builtins.
4553         * string/strings.h: Define correct C++ prototypes for gcc 4.4.
4555 2009-01-29  Ulrich Drepper  <drepper@redhat.com>
4556             Jakub Jelinek  <jakub@redhat.com>
4558         * string/string.h: Define correct C++ prototypes for gcc 4.4.
4559         * wcsmbs/wchar.h: Likewise.
4561 2009-01-29  Ulrich Drepper  <drepper@redhat.com>
4563         * sysdeps/i386/stackinfo.h (stackinfo_get_sp): Define.
4564         (stackinfo_sub_sp): Define.
4566 2009-01-28  Ulrich Drepper  <drepper@redhat.com>
4568         [BZ #9750]
4569         * nscd/mem.c (gc): Use alloca_count to get the real stack usage.
4570         * include/alloca.h (alloca_account): Define.
4571         * sysdeps/x86_64/stackinfo.h (stackinfo_get_sp): Define.
4572         (stackinfo_sub_sp): Define.
4574         * nscd/connections.c (nscd_init): If database file access fails
4575         check whether this is due to permission problems and bail in that
4576         case.
4578         [BZ #9741]
4579         * nscd/mem.c (gc): Fix assignment of he_data in case malloc is used.
4580         Reported by Jun'ichi Nomura <j-nomura@ce.jp.nec.com>.
4582 2009-01-14  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4584         * sysdeps/unix/sysv/linux/sh/sysdep.h (INTERNAL_SYSCALL):
4585         Add "t" to clobber list.
4586         (INTERNAL_SYSCALL_NCS): Likewise.
4588 2009-01-28  Ulrich Drepper  <drepper@redhat.com>
4590         * nss/getent.c (print_networks): Don't print comma between aliases.
4592 2009-01-23  Ulrich Drepper  <drepper@redhat.com>
4594         * sysdeps/unix/sysv/linux/tst-clone.c (do_test): Avoid warning.
4596         * misc/hsearch_r.c (hcreate_r): We need at least three elements in
4597         the hash table.
4598         * misc/Makefile (tests): Add bug-hsearch1.
4599         * misc/bug-hsearch1.c: New file.
4601 2009-01-22  Roland McGrath  <roland@redhat.com>
4603         * Makeconfig (%.v.i): Strip trailing # comments,
4604         not only whole-line comments.
4606 2009-01-10  Ulrich Drepper  <drepper@redhat.com>
4608         * sysdeps/generic/dl-osinfo.h (_dl_setup_stack_chk_guard): Take
4609         one parameter.  If non-NULL use it to initialize return value.
4610         (_dl_setup_pointer_guard): New function.
4611         * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
4612         * sysdeps/generic/ldsodefs.h: Declare _dl_random.
4613         * elf/rtld.c (security_init): Pass _dl_random to
4614         _dl_setup_stack_chk_guard.  Call _dl_setup_pointer_guard to initialize
4615         pointer_chk_guard.
4616         * elf/dl-sysdep.c (_dl_random): New variable.
4617         (_dl_sysdep_start): Handle AT_RANDOM.
4618         (_dl_show_auxv): Likewise.
4619         * elf/dl-support.c (_dl_random): New variable.
4620         (_dl_aux_init): Handle AT_RANDOM.
4621         * csu/libc-start.c [!SHARED] (libc_start_main): Pass _dl_random
4622         to _dl_setup_stack_chk_guard.
4624         * elf/elf.h (AT_RANDOM): Define AT_BASE_PLATFORM and AT_RANDOM.
4626 2009-01-10  Roland McGrath  <roland@redhat.com>
4628         * nscd/nscd.c (parse_opt): Use argp_error for bad -i argument.
4630 2009-01-08  Ulrich Drepper  <drepper@redhat.com>
4632         * sysdeps/i386/fpu/libm-test-ulps: Adjust expm1 errors.
4634         [BZ #9706]
4635         * nss/nss_files/files-parse.c (strtou32): New function.
4636         (INT_FIELD): Use strotu32 instead of strtoul to unify behavior
4637         across 32-bit and 64-bit platforms.
4638         (INT_FIELD_MAYBE_NULL): Likewise.
4640 2009-01-08  Jakub Jelinek  <jakub@redhat.com>
4642         [BZ #9720]
4643         * sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who): Avoid
4644         comma after RUSAGE_CHILDREN if not -D_GNU_SOURCE.
4645         * sysdeps/unix/sysv/linux/sparc/bits/resource.h (enum __rusage_who):
4646         Likewise.
4648 2009-01-05  Paolo Bonzini  <bonzini@gnu.org>