Branch to __fork whenever libpthread.so is loaded.
[glibc/pb-stable.git] / ChangeLog
blob53172fc1cc91cf94ccfaf164e2ede9c63100dbb7
1 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
3         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
4         so that it can have aliases.
5         * inet/herrno.c (h_errno): Put it into .bss not .data section.
7 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
9         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
10         (profile_fixup): Likewise.
11         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
13 2002-11-24  Robert Love  <rml@tech9.net>
15         * posix/sched.h: Second parameter of sched_setaffinity and
16         sched_getaffinity is `unsigned int', not `unsigned long'.
17         * sysdeps/generic/sched_setaffinity.c: Likewise.
18         * sysdeps/generic/sched_getaffinity.c: Likewise.
20 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
22         * debug/catchsegv.sh: Fix typo in error messsage.
23         Reported by John Levon <levon@movementarian.org>.
25         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
26         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
27         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
28         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
29         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
30         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
31         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
33         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
34         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
36 2003-02-05  Jim Meyering  <jim@meyering.net>
38         Fix a heap-corrupting bug.
39         * io/ftw.c: Include <limits.h>.
40         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
41         (process_entry): Allocate enough space to hold the resulting
42         file name.  Don't presume that 2*dirbufsize is enough.
43         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
44         it is guaranteed to be defined.
46 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
48         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
49         * iconvdata/bug-iconv3.c: New file.
51 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
53         * sysdeps/unix/sysv/linux/s390/system.c: New file.
55 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
57         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
58         check.
59         * config.h.in (BROKEN_SPARC_WDISP22): Add.
61 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
63         * sysdeps/i386/i686/memmove.S: New file.
65 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
67         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
68         Include kernel-features.h
69         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
70         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
71         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
72         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
74 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
76         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
78 2003-01-25  Jim Meyering  <jim@meyering.net>
80         * io/ftw.c (object_compare): Compare inode numbers before device
81         numbers, since the former are much more likely to differ.
83 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
85         * time/tzfile.c (__tzfile_compute): Change return value type to
86         void.  Adjust return statements.
87         * include/time.h (__tzfile_compute): Adjust prototype.
89 2003-02-01  Jim Meyering  <jim@meyering.net>
91         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
92         always returns 1.
94 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
96         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
97         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
99 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
101         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
102         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
103         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
104         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
105         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
106         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
107         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
108         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
110 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
112         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
113         back to 2.4.19 for powerpc64.
114         * sysdeps/unix/sysv/linux/kernel-features.h
115         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
116         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
118 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
120         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
121         platforms with strange alignment requirements on wchar_t.
123 2003-01-31  Andreas Schwab  <schwab@suse.de>
125         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
126         aliases, already added by make-syscalls.sh.
127         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
128         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
129         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
130         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
131         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
132         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
133         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
134         * sysdeps/unix/inet/syscalls.list: Likewise.
135         * sysdeps/unix/syscalls.list: Likewise.
137 2003-01-31  Andreas Schwab  <schwab@suse.de>
139         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
140         any more.
142 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
144         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
145         not l to load tls from stack.
147 2003-01-30  Roland McGrath  <roland@redhat.com>
149         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
150         null argument before all else.
151         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
153 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
155         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
156         Move to RESOLVE protected part of the header.
157         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
158         Likewise.
160 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
162         * stdio-common/Makefile (tests): Add bug15.
163         (bug15-ENV): Define.
164         * stdio-common/bug15.c: New file.
166 2002-10-07  Wolfram Gloger  <wg@malloc.de>
168         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
169         to foreign sbrk()'s if arena is contiguous.  Bug report from
170         Bruno Haible <bruno@clisp.org>.
172 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
174         * sysdeps/s390/libc-tls.c: Include stdlib.h.
176 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
178         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
179         ps.__count.
181 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
183         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
184         restoring of %r6.
185         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
186         64-bit load.
187         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
189 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
191         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
192         (allocate_static_tls): ...here.  Add __attribute_noinline__.
193         Don't return on failure.
194         (_dl_reloc_bad_type): Add __attribute_noinline__.
195         * elf/do-rel.h (elf_dynamic_do_rel): Add
196         __attribute__((always_inline)).
197         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
198         elf_machine_rel_relative, elf_machine_rela_relative,
199         elf_machine_lazy_rel): Add prototypes with
200         __attribute__((always_inline)).
202 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
204         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
206 2003-01-29  Roland McGrath  <roland@redhat.com>
208         * configure.in: Barf if configured in $srcdir.
210 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
212         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
213         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
215 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
217         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
218         clone parameters to match the order used on ia32.
219         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
221 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
223         * elf/elf.h: Add new s390 relocs.
224         * elf/tls-macros.h: Add s390 versions.
225         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
226         * sysdeps/s390/dl-tls.h: New file.
227         * sysdeps/s390/libc-tls.c: New file.
228         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
229         relocs for class PLT.
230         (elf_machine_rela): Handle TLS relocs.
231         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
232         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
233         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
234         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
235         CLONE_CHILD_*TID flags.
236         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
237         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
238         bit offset.
239         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
240         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
241         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
242         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
243         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
244         Likewise.
245         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
246         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
247         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
248         variants.
249         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
250         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
251         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
252         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
253         variants.
255 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
257         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
258         from __libc_pause.  Implement using sigsuspend.
259         (__libc_pause): Call do_pause to do the real work.
261         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
262         sig_or_mask parameter is is_sig != 0.
264 2003-01-21  Philip Blundell  <philb@gnu.org>
266         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
268 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
270         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
272 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
274         * stdio-common/bug14.c: Use official name for the locale.
276         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
277         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
278         instead of __libc_cleanup_region_end.
280         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
281         as first parameter to __libc_cleanup_region_start.
283         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
284         (__fe_nomask_env): Use __prctl not prctl.
285         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
286         prctl syscall.
288         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
290         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
292         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
293         wrap-around in test.
295 2003-01-26  Andreas Schwab  <schwab@suse.de>
297         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
298         compatibility symbols.  Remove INTDEF for __divdi3.
299         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
300         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
301         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
302         define.
303         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
305 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
307         * elf/tls-macros.h: Add SPARC 32-bit definitions.
308         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
309         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
310         for the first half of the header.  Include tls.h.
311         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
312         relocs too.
313         (elf_machine_rela): Handle TLS relocs.
314         * sysdeps/sparc/dl-tls.h: New file.
316         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
317         support.
319         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
320         * sysdeps/sparc/sparc32/memchr.S: Likewise.
321         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
322         * sysdeps/sparc/sparc32/strcat.S: Likewise.
323         * sysdeps/sparc/sparc32/strchr.S: Likewise.
324         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
325         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
326         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
327         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
328         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
329         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
330         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
331         * sysdeps/sparc/sparc64/strcat.S: Likewise.
332         * sysdeps/sparc/sparc64/strchr.S: Likewise.
333         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
334         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
335         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
336         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
337         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
338         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
340 2003-01-24  Andreas Schwab  <schwab@suse.de>
342         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
343         elements, and process them backwards.
344         * elf/Makefile ($(objpfx)tst-array4): New target.
345         ($(objpfx)tst-array4.out): Likewise.
346         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
347         * elf/tst-array4.c: New file.
348         * elf/tst-array4.exp: Likewise.
350 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
352         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
354 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
356         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
357         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
358         cancellation handling and handle both __NR_pread64 and __NR_pread.
359         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
360         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
361         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
362         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
363         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
364         case, use register names consistently.
366 2003-01-27  Wolfram Gloger  <wg@malloc.de>
368         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
369         pointer, not of the computed chunk.  Bug report from Carlos
370         O'Donell <carlos@baldric.uwo.ca>.
372 2003-01-25  Andreas Schwab  <schwab@suse.de>
374         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
375         addressing to save GOT entries.
377 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
379         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
380         inline_syscall1, inline_syscall2, inline_syscall3,
381         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
382         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
383         __attribute__((unused)) to ChEcK.
385 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
387         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
388         Fix inline assembler constraints.
389         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
390         Likewise.
392         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
393         -fPIC.
395 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
397         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
398         compute the cosine, not the sine, even if x > 0.8.
400 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
402         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
403         _nss_nis_setspent.  Work around the different prototypes.
404         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
405         internal_nis_endrpcent.
406         (internal_nis_endrpcent): Change return type to void.  Change callers.
407         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
408         _nss_nis_setpwent.  Work around the different prototypes.
409         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
410         of the function to...
411         (internal_nis_endprotoent): ... here.  New function.
412         (internal_nis_setprotoent): Use internal_nis_endprotoent.
413         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
414         _nss_nis_setnetent.  Work around the different prototypes.
415         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
416         of the function to...
417         (internal_nis_endnetgrent): ... here.  New function.
418         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
420 2003-01-19  Jim Meyering  <jim@meyering.net>
422         * time/strftime.c: (widen): Merge nearly-identical definitions.
423         (nl_get_alt_digit) [! defined my_strftime]: Define.
424         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
425         _nl_get_alt_digit and _nl_get_walt_digit.
427 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
429         * time/strftime.c (my_strftime): Handle very large width
430         specifications for numeric values correctly.  Improve checks for
431         overflow.
432         * time/Makefile (tests): Add tst-strftime.
433         * time/tst-strftime.c: New file.
435 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
437         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
438         _nss_nis_sethostent.  Work around the different prototypes.
439         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
440         _nss_nis_setgrent.  Work around the different prototypes.
441         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
442         function.  Split out from _nss_nis_endetherent.
443         (internal_nis_setetherent): Use internal_nis_endetherent instead of
444         duplicating the code.
445         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
446         of _nss_nis_setaliasent.
447         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
448         internal_nis_endservent code, don't duplicate it.
450         * inet/rexec.c (rexec_af): Protect socket operations with
451         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
452         * inet/rcmd.c (rcmd_af): Likewise.
454 2003-01-17  Roland McGrath  <roland@redhat.com>
456         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
457         Add test of value 0.80190127184058835.
459         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
461 2003-01-17  Richard Henderson  <rth@redhat.com>
463         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
464         relocs for class PLT.
465         * sysdeps/alpha/libc-tls.c: New file.
466         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
467         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
469 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
471         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
472         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
473         on _dl_static_lock.
475 2003-01-17  Andreas Jaeger  <aj@suse.de>
477         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
479 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
481         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
482         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
483         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
484         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
485         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
486         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
487         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
488         is 2.4.21.
490 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
492         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
493         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
494         buffers.
496         * sysdeps/generic/sysconf.c: Unconditionally implement
497         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
498         * sysdeps/posix/sysconf.c: Likewise.
500 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
502         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
503         set *err to the returned error, not to REG_ESPACE unconditionally.
504         (build_word_op): Likewise.
505         * posix/Makefile (tests): Add bug-regex16.
506         * posix/bug-regex16.c: New test.
508 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
510         * elf/dl-load.c (_dl_map_object_from_fd): Use
511         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
512         been already initialized.
514 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
516         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
518 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
520         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
521         allocated too.  Reported by Al Viro <aviro@redhat.com>.
523 2003-01-16  Roland McGrath  <roland@redhat.com>
525         Tweak merged .abilist file format to merge duplicate symbols in
526         different sets into multi-version stanzas with new "| SET regexp..."
527         header continuation lines.
528         * scripts/merge-abilist.awk: Rewritten for new format.
529         * scripts/extract-abilist.awk: Likewise.
531 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
533         * nscd/connections.c (nscd_run): Remove bogus return which isn't
534         necessary with gcc 3.2+.
535         (nscd_init): Don't use error() to print message, use dbg_log.
537         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
538         expected size into state.
539         (UNPACK_BYTES): Do the reverse.
540         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
541         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
542         Reported by Al Viro <aviro@redhat.com>.
544         * stdio-common/Makefile (tests): Add bug14.
545         * stdio-common/bug14.c: New file.
547         * stdio-common/vfscanf.c: When recognizing multibyte characters in
548         string reset the byte counter after mbrtowc reported it is not a
549         partial character.  Reported by Al Viro <aviro@redhat.com>.
551 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
553         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
554         sysdep-cancel.h, not sysdep.h.
556 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
558         * nscd/connections.c (nscd_run): Protect accept call with
559         TEMP_FAILURE_RETRY.
561 2003-01-15  Andreas Schwab  <schwab@suse.de>
563         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
564         (common-generated): Add s-proto-bp.d.
565         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
566         of bp thunks.
567         * sysdeps/unix/s-proto-bp.S: New file.
568         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
569         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
570         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
572 2003-01-15  Roland McGrath  <roland@redhat.com>
574         * Makerules: Use -include for tls.make, suppresses warning.
575         Move gen-as-const-headers rules up so before-compile is set in time.
576         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
578 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
580         * nscd/nscd.c (main): Make code to close all file descriptors
581         faster and more robust.
583         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
584         request with one writev call.  Protect all read calls with
585         TEMP_FAILURE_RETRY.
586         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
587         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
589         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
590         Protect writev calls with TEMP_FAILURE_RETRY.
591         * nscd/grpcache.c: Likewise.
592         * nscd/pwdcache.c: Likewise.
594         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
595         IPv6 address in debug output.
597 2003-01-14  Roland McGrath  <roland@redhat.com>
599         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
600         $(objpfx) directories, and get rid of vpath directives.  The previous
601         arrangement resulted in files being written to the source directories
602         when run in a clean build.  Find all .abilist files in $(..)abilist/.
603         (update-abi-%): Likewise.
604         (generated): Don't add .symlist files, they'll be intermediates.
606         * sysdeps/generic/init-first.c: Add a comment.
608         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
610         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
611         #includes and expressions.
613         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
614         config list when it already contains cpu-.*-os.* without / part.
616         * Makerules (sed-remove-dotdot): New variable.
617         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
618         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
619         (check-abi-config): New variable, append /tls or /notls to the tuple.
620         (check-abi-%): Use that for -v config value.
621         Find .abilist files in abilist/libfoo.abilist, not in subdir.
622         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
624 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
626         * manual/install.texi: Correct description of header preparation for
627         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
629 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
631         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
632         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
633         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
635 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
637         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
638         (INTERNAL_SYSCALL): Make use of ERR parameter.
639         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
640         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
641         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
642         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
644 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
646         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
647         == IPPROTO_TCP.
648         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
650         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
651         Fix entry for bit 31.
653         * iconvdata/Makefile: Add rules to build IBM866NAV.
654         * iconvdata/ibm866nav.c: New file.
655         * iconvdata/tst-tables.sh: Add IBM866NAV.
656         * iconvdata/gconv-modules: Add entries for IBM866NAV.
658 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
660         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
661         to test void* parameters.
663         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
664         source pointer before dereferencing.
665         (__STRING_SMALLL_GET32): Likewise.
666         (__memset_gc): Add missing parenthesis around macro arguments.
667         Patch by Denis Zaitsev <zzz@cd-club.ru>.
669         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
670         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
672 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
674         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
675         defining.
677 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
679         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
680         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
681         here.
682         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
684 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
686         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
687         from here...
688         (PSEUDO): ... to here.
689         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
690         from here...
691         (PSEUDO): ... to here.
693 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
695         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
696         dirent64 instead of struct dirent for dirent.  Call readdir64
697         instead of readdir.
699         * locale/programs/locfile.c (siblings_uncached): Use struct
700         dirent64 instead of struct dirent for other_dentry.  Call
701         readdir64 instead of readdir.
703         * elf/ldconfig.c (direntry): Change type to struct dirent64.
704         (search_dir): Use readdir64 instead of readdir.
705         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
707 2003-01-12  Roland McGrath  <roland@redhat.com>
709         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
710         not strtol.  The former is usable in ld.so, the latter not.
712         * include/fcntl.h: Declare __libc_creat.
714         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
715         libhurduser-link.so-no-z-defs): New variables.
717         * malloc/malloc.c: Revert last change.
718         * malloc/malloc.h (_int_*): Move these decls to ...
719         * include/malloc.h: ... here.  Add attribute_hidden.
720         (_int_valloc): Declare it too.
722 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
724         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
725         search for removed searchlist.  Reported by Roland McGrath.
727         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
728         given as start file.
730         * io/ftw.c (ftw_startup): Use correct name in check for symlink
731         without existing target.  Patch by Jim Meyering.
733         * Makerules (build-shlib-helper): Don't use -z defs linker option
734         if no-z-defs is defined either.
736 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
738         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
739         file.
741 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
743         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
744         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
746 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
748         * io/ftwtest-sh: Add test case for relative path with /. at the end.
750 2003-01-12  Jim Meyering  <jim@meyering.net>
752         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
753         use the basename if we've already chdir'd into its parent directory.
755 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
757         * io/ftw.c (process_entry): Use relative path when using chdir()
758         to change directory after call to ftw_dir.
759         * io/ftwtest-sh: Add test for relative path argument to nftw()
760         with FTW_CHDIR option.
762 2002-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
764         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
765         Define for powerpc.
766         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
767         into account.
768         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
769         (INTERNAL_SYSCALL): Make use of ERR parameter.
770         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
771         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
772         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
773         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
775 2002-01-09  Richard Henderson  <rth@redhat.com>
777         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
778         DTPREL64 and TPREL64 without loadbase applied.
780 2002-01-09  Richard Henderson  <rth@redhat.com>
782         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
783         for NOT_IN_libc.
785         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
786         * sysdeps/unix/alpha/sysdep.h: ... here.
787         (PSEUDO_LOADGP): Remove.
788         (PSEUDO_PROLOGUE): Load GP in non-pic case.
789         (SYSCALL_ERROR_LABEL): New.
790         (PSEUDO): Use it in error branch.
791         (PSEUDO_END): Add $syscall_error label.
793 2003-01-12  Andreas Jaeger  <aj@suse.de>
795         * math/bits/mathcalls.h: Round is a const function.
797 2003-01-11  Jim Meyering  <jim@meyering.net>
799         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
800         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
801         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
802         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
803         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
804         [!_LIBC] (internal_function, dirent64, MAX): Define.
805         (__set_errno): Define if not already defined.
806         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
807         the basename, not the entire file name.
808         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
809         the basename, not the entire file name.
811 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
813         * string/tester.c (test_strcpy): Disable last added strcpy until
814         it is fixed.
816 2003-01-11  Philip Blundell  <philb@gnu.org>
818         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
820 2003-01-11  Andreas Schwab  <schwab@suse.de>
822         * Makerules: Add vpath for %.dynsym and %.so so that the
823         implicit rule chaining for check-abi works.
825 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
827         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
828         Add non-PIC case.
830 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
832         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
833         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
834         gp is used early.
835         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
836         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
837         Ensure libc.so in DT_NEEDED.
838         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
839         CHECK_STATIC_TLS before l_tls_offset use.
840         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
841         Likewise.
842         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
843         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
844         Allocate TLS_PRE_TCB_SIZE bytes below result.
845         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
846         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
847         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
848         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
849         bytes below result and add tcb_offset to memsz.
850         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
851         * sysdeps/ia64/dl-machine.h: Include tls.h.
852         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
853         too.
854         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
855         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
856         * sysdeps/ia64/libc-tls.c: New file.
858 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
860         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
861         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
862         Fix type.  Move definition out of #if.
863         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
864         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
865         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
866         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
867         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
868         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
869         support.
870         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
871         ftruncate64, pread64, pwrite64, truncate64 entries.
872         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
873         (INLINE_SYSCALL): New version that supports function call like
874         syscalls.  Add __builtin_expect.
875         (LOADARGS_n): Add argument size safety checks.
876         (INTERNAL_SYSCALL): New Macro.
877         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
878         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
879         redefinition of elf_fpreg_t and elf_fpregset_t.
881 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
883         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
884         simplify test for unloading.  If loader of a DSO is unloaded do not
885         use its scope anymore.  Fall back to own scope and adjust opencounts.
886         Fix several comments.
887         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
888         the l_searchlist, not only for l_initfini.
890         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
891         dependencies if objects cannot be removed.  Remove object with the
892         definition as not unloadable if necessary.
894         * elf/reldep6.c: Create relocation dependency before closing the first
895         module.
897 2003-01-10  Guido Günther  <agx@sigxcpu.org>
899         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
900         * sysdeps/unix/mips/brk.S: Likewise.
901         * sysdeps/unix/mips/pipe.S: Likewise.
903 2003-01-10  Andreas Schwab  <schwab@suse.de>
905         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
907         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
908         are known to have the vfork syscall.
910         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
912         * sysdeps/unix/sysv/linux/kernel-features.h
913         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
914         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
915         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
917 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
919         * elf/Makefile: Add rules to build and run reldep9 test.
920         * elf/reldep9.c: New file.
921         * elf/reldep9mod1.c: New file.
922         * elf/reldep9mod2.c: New file.
923         * elf/reldep9mod3.c: New file.
925 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
927         * elf/Makefile: Add rules to build and run nodelete2 test.
928         * elf/nodelete2.c: New file.
929         * elf/nodel2mod1.c: New file.
930         * elf/nodel2mod2.c: New file.
931         * elf/nodel2mod3.c: New file.
933 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
935         * posix/test-vfork.c (noop): Add __attribute_noinline__.
936         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
937         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
938         defining it.
939         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
940         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
941         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
942         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
943         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
945 2003-01-09  Andreas Schwab  <schwab@suse.de>
947         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
949 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
951         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
952         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
953         argument.
954         (INTERNAL_SYSCALL_DECL): Define.
956 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
958         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
959         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
960         argument.
961         (INTERNAL_SYSCALL_DECL): Define.
962         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
963         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
964         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
965         (INLINE_SYSCALL): Adjust.
966         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
967         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
968         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
969         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
970         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
971         add err argument to INTERNAL_SYSCALL* macros.
972         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
973         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
974         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
975         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
976         Likewise.
977         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
978         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
979         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
981 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
983         Unify symbols in user namespace exported by libc.so and libc.a.
984         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
985         argp_fmtstream_free, and argp_fmtstream_printf.
986         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
987         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
988         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
989         argp_fmtstream_point.
990         * gmon/gmon.c: Don't define write_profiling.
991         * libio/genops.c: Don't define _cleanup.
993         * intl/explodename.c (_nl_find_language.c): Mark as static.
994         * intl/loadinfo.h: Remove _nl_find_language prototype.
996         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
997         * libio/libioP.h: Remove declaration.
999         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
1000         * libio/libioP.h: Remove declaration.
1002         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
1003         * sysdeps/generic/framestate.c: Define STATIC before including
1004         unwind-dw2.c.
1006         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
1008 2003-01-06  Philip Blundell  <philb@gnu.org>
1010         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
1011         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
1013         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
1014         directive.
1015         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
1016         (SYSCALL_ERROR): New.
1017         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
1018         handling code.
1019         (INTERNAL_SYSCALL): Define.
1020         (INLINE_SYSCALL): Use it.
1021         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
1022         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
1023         SYSCALL_ERROR in place of __syscall_error.
1025 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
1027         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
1028         __bswap_32, __bswap_64): Put x into temporary variable
1029         to avoid warnings.
1030         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
1031         (inline) functions.
1032         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
1033         __bswap_32, __bswap_64): Put x into temporary variable
1034         to avoid warnings.
1035         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
1036         (inline) functions.
1037         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
1038         Likewise.
1040 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
1042         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
1043         alias.
1045 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
1047         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
1048         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
1050 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
1052         * math/libm-test.inc (significand_test): New function.
1053         (main): Call it.
1055 2003-01-06  Roland McGrath  <roland@redhat.com>
1057         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
1058         arguments.
1059         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
1060         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
1061         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
1063         * string/tester.c (test_strcpy): Add test with `void *' arguments.
1065 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
1067         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
1068         return significand and not the exponent.
1069         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
1071         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
1072         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
1074         * malloc/malloc.c: Mark all _int_* functions as static.
1076 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
1078         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
1079         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
1080         handling.
1081         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
1083 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1085         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
1086         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
1087         support.
1088         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
1089         ftruncate64, truncate64, pread64 and pwrite64 entries.
1090         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
1091         (INLINE_SYSCALL): Add __builtin_expect.
1092         (LOADARGS_n): Add argument size safety checks.
1093         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
1094         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
1095         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
1096         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
1097         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
1098         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
1100 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
1102         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
1103         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
1104         (LIBC_CANCEL_HANDLED): Add.
1106         * sysdeps/unix/sysv/linux/alpha/sysdep.h
1107         (inline_syscall_r0_constraint): Rename to...
1108         (inline_syscall_r0_out_constraint): ... this.  Add =.
1109         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
1111 2003-01-06  Andreas Schwab  <schwab@suse.de>
1113         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
1114         sure this is always inlined.
1115         (elf_machine_rela): Likewise.
1117         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
1119 2003-01-04  Roland McGrath  <roland@redhat.com>
1121         * Makeconfig (+mkdep): Add -MP flag.
1122         Suggested by Art Haas <ahaas@airmail.net>.
1124 2003-01-05  Andreas Schwab  <schwab@suse.de>
1126         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
1128 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1130         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
1131         SYSCALL_ERROR_HANDLER.
1132         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
1133         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
1134         Add support for cancellation handling.
1135         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
1136         SYSCALL_ERROR_HANDLER.
1137         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
1138         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
1139         Add support for cancellation handling.
1140         (SYSCALL_ERROR_HANDLER): Define PIC variants.
1142 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1144         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
1145         __syscall_pread64 and __syscall_pwrite64 cancelable.
1146         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
1147         (INTERNAL_SYSCALL): New macro.
1148         (LOADARGS_0, LOADARGS_1): Fix.
1150 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
1152         * Makerules (build-shlip-helper): Unless told otherwise, add
1153         -Wl,-z,defs to linker command line.
1154         * rt/Makefile (librt.so): Link with ld.so.
1155         * dlfcn/Makefile (libdl.so): Likewise.
1157 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
1159         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
1160         cancellation handling.
1161         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
1162         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
1164 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
1166         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
1167         order of parameters passed to kill.
1169 2003-01-04  Andreas Schwab  <schwab@suse.de>
1171         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
1173 2002-01-03  Paul Eggert  <eggert@twinsun.com>
1175         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
1176         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
1177         when compiling Bison 1.875's `bitset bset = obstack_alloc
1178         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
1180 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
1182         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
1183         unnecessary code.
1184         Correct reference counter in case SIGQUIT handler installation failed.
1186 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
1188         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
1189         Define using _Pragma(weak ...).
1191 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
1193         * resolv/res_libc.c: Provide declaration for __res_init_weak and
1194         reorder declarations.
1196 2003-01-03  Art Haas  <ahaas@airmail.net>
1198         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
1199         initializer syntax to C99.
1200         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
1201         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
1202         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
1203         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
1204         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
1205         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
1206         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
1207         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
1208         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
1209         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
1210         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
1211         * localedata/tests-mbwc/dat_mblen.c: Likewise.
1212         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
1213         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
1214         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
1215         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
1216         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
1217         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
1218         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
1219         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
1220         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
1221         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
1222         * localedata/tests-mbwc/dat_towlower.c: Likewise.
1223         * localedata/tests-mbwc/dat_towupper.c: Likewise.
1224         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
1225         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
1226         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
1227         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
1228         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
1229         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
1230         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
1231         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
1232         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
1233         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
1234         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
1235         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
1236         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
1237         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
1238         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
1239         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
1240         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
1241         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
1242         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
1243         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
1244         * localedata/tests-mbwc/dat_wctob.c: Likewise.
1245         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
1246         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
1247         * localedata/tests-mbwc/dat_wctype.c: Likewise.
1248         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
1250 2003-01-03  Richard Henderson  <rth@redhat.com>
1252         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
1253         (inline_syscall_r0_constraint): New.
1254         (inline_syscall[0-6]): Use them.
1256 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
1258         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
1259         Add rtld_hidden_proto.
1260         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
1261         (_dl_allocate_tls): Likewise.  Remove INTDEF.
1263 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1265         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
1266         Morita <toshiyasu.morita@hsa.hitachi.com>.
1267         * sysdeps/sh/memcpy.S: Likewise.
1269 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
1271         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
1272         any, but unify the test.
1274 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
1276         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
1277         sigaction): Protect weak_alias and libc_hidden_weak with
1278         #ifndef LIBC_SIGACTION.
1279         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
1280         sigaction): Likewise.
1281         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
1282         sigaction): Likewise.
1283         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
1284         sigaction): Likewise.
1285         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
1286         sigaction): Likewise.
1287         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
1288         sigaction): Likewise.
1289         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
1290         sigaction): Likewise.
1291         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
1292         sigaction): Likewise.  Remove SIGCANCEL handling here.
1293         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
1294         Likewise.
1296 2003-01-02  Art Haas  <ahaas@airmail.net>
1298         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
1300 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
1302         * posix/getconf.c: Update copyright year.
1303         * nss/getent.c: Likewise.
1304         * nscd/nscd_nischeck.c: Likewise.
1305         * iconv/iconvconfig.c: Likewise.
1306         * iconv/iconv_prog.c: Likewise.
1307         * elf/ldconfig.c: Likewise.
1308         * catgets/gencat.c: Likewise.
1309         * csu/version.c: Likewise.
1310         * elf/ldd.bash.in: Likewise.
1311         * elf/sprof.c (print_version): Likewise.
1312         * locale/programs/locale.c: Likewise.
1313         * locale/programs/localedef.c: Likewise.
1314         * nscd/nscd.c (print_version): Likewise.
1315         * debug/xtrace.sh: Likewise.
1316         * malloc/memusage.sh: Likewise.
1317         * malloc/mtrace.pl: Likewise.
1319 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
1321         * io/sys/stat.h: Include time.h with __need_timespec even if
1322         __USE_MISC is defined but __USE_XOPEN is not.
1324 2003-01-01  Andreas Jaeger  <aj@suse.de>
1326         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
1327         type to avoid strict aliasing problem.
1328         (_nss_dns_gethostbyname2_r): Likewise.
1329         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
1330         (_nss_dns_getnetbyname_r): Likewise.
1331         * resolv/gethnamaddr.c (_gethtent): Likewise.
1332         (gethostbyname2): Likewise.
1334 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
1336         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
1337         to avoid using the exported symbols.  Define aliases with the
1338         original names separately.
1340         * include/time.h: Add libc_hidden_proto for __strftime_l.
1341         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
1342         * time/strftime.c: Always use libc_hidden_def if _LIBC.
1344         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
1345         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
1347         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
1348         tr_break.
1350         * csu/Makefile (routines): Add dso_handle.
1351         * csu/dso_handle.c: New file.
1353 2002-12-31  Roland McGrath  <roland@redhat.com>
1355         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
1356         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
1357         (S-CPPFLAGS): Add -DASSEMBLER here instead.
1358         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
1360 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
1362         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
1363         is available.
1365 2002-12-31  Andreas Jaeger  <aj@suse.de>
1367         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
1368         with Linux kernel.
1369         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
1370         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
1371         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
1373         * sysdeps/unix/sysv/linux/kernel_stat.h
1374         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
1376         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
1377         __unused[1-3] since they're needed by some platforms.  Handle
1378         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
1380         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
1381         for structs stat and stat64.
1382         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
1383         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
1384         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
1385         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
1387         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
1389         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
1390         nsec resolution changes.
1391         (xstat64_conv): Likewise.
1392         (xstat32_conv): Likewise.
1394         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
1395         struct kernel_stat.
1397         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
1398         structs stat and stat64.
1400         * time/time.h (__timespec_defined): Define for __USE_MISC.
1402 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
1404         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
1405         and __libc_current_sigrtmax.
1407 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
1409         * include/errno.h (__errno_location): Add prototype.
1410         Use libc_hidden_proto unconditionally.
1411         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
1412         unconditionally.
1413         * include/resolv.h (__res_state): Likewise.
1415         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
1416         * include/sys/socket.h (accept): Add libc_hidden_proto.
1417         * include/errno.h (__errno_location): Likewise.
1418         * include/netdb.h (__h_errno_location): Likewise.
1419         * include/resolv.h (__res_state): Likewise.
1420         * include/unistd.h (__lseek): Likewise.
1421         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
1422         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
1423         * sysdeps/generic/res-state.c (__res_state): Likewise.
1424         * sysdeps/generic/accept.c (accept): Likewise.
1425         * sysdeps/generic/lseek.c (__lseek): Likewise.
1426         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
1427         __libc_current_sigrtmax): Likewise.
1428         * sysdeps/mach/hurd/accept.c (accept): Likewise.
1429         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
1430         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
1431         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
1432         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
1433         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
1434         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
1435         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
1436         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
1437         alias to llseek.
1438         (__GI_accept): New alias to accept.
1439         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
1440         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
1441         New alias to llseek.
1442         (__GI_accept): New alias to accept.
1443         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
1444         Likewise.
1445         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
1446         Likewise.
1447         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
1449         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
1450         strong_alias (name, __GI_name).
1451         * sysdeps/arm/bsd-_setjmp.S : Likewise.
1452         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
1453         * sysdeps/i386/bsd-_setjmp.S : Likewise.
1454         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
1455         * sysdeps/mips/bsd-_setjmp.S : Likewise.
1456         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
1457         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
1458         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
1459         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
1460         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
1461         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
1462         * sysdeps/sh/bsd-_setjmp.S : Likewise.
1463         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
1464         * sysdeps/unix/arm/fork.S : Likewise.
1465         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
1466         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
1467         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
1468         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
1469         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
1470         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
1471         * sysdeps/unix/i386/fork.S : Likewise.
1472         * sysdeps/unix/mips/fork.S : Likewise.
1473         * sysdeps/unix/sparc/fork.S : Likewise.
1474         * sysdeps/unix/sparc/vfork.S : Likewise.
1475         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
1476         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
1477         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
1478         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
1479         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
1480         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
1481         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
1482         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
1483         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
1484         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
1485         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
1486         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
1487         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
1488         * sysdeps/unix/fork.S : Likewise.
1489         * sysdeps/vax/bsd-_setjmp.S : Likewise.
1490         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
1492         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
1493         inclusion.
1495 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
1497         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
1498         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
1499         * sysdeps/mach/hurd/fork.c: Likewise.
1500         * sysdeps/unix/sysv/aix/fork.c: Likewise.
1501         * sysdeps/unix/fork.S: Add __GI___fork alias.
1502         * sysdeps/unix/arm/fork.S: Likewise.
1503         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
1504         * sysdeps/unix/i386/fork.S: Likewise.
1505         * sysdeps/unix/mips/fork.S: Likewise.
1506         * sysdeps/unix/sparc/fork.S: Likewise.
1507         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
1508         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
1509         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
1510         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
1511         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
1512         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
1513         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
1514         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
1515         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
1516         * sysdeps/unix/sparc/vfork.S: Likewise.
1517         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
1518         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
1519         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
1520         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
1521         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
1522         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
1523         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
1524         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
1526         * include/time.h: Add libc_hidden_proto for __nanosleep.
1527         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
1528         * sysdeps/mach/nanosleep.c: Likewise.
1529         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
1530         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
1532         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
1533         _IO_list_unlock, and _IO_list_resetlock.
1534         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
1535         _IO_list_unlock, and _IO_list_resetlock.
1537         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
1538         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
1539         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
1540         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
1542         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
1543         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
1544         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
1545         __GI___longjmp alias.
1547         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
1548         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
1549         * sysdeps/arm/bsd-_setjmp.S: Likewise.
1550         * sysdeps/generic/bsd-_setjmp.c: Likewise.
1551         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
1552         * sysdeps/i386/bsd-_setjmp.S: Likewise.
1553         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
1554         * sysdeps/mips/bsd-_setjmp.S: Likewise.
1555         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
1556         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
1557         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
1558         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
1559         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
1560         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
1561         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
1562         * sysdeps/sh/bsd-_setjmp.S: Likewise.
1563         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
1564         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
1565         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
1566         * sysdeps/vax/bsd-_setjmp.S: Likewise.
1567         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
1569 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
1571         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
1573 2002-12-30  Roland McGrath  <roland@redhat.com>
1575         * Rules (generated): Target removed.
1576         * mach/Makefile (generated): Define it here instead.
1578         * math/Makefile (generated): Add m_*l and m_*f variants too.
1580 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
1582         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
1583         the to-be-deleted objects right away instead of later separately.
1584         The latter fails because the scope data structures of the DSO
1585         might already be gone.
1587         * elf/Makefile: Add rules to build and run reldep8 test.
1588         * elf/reldep8.c: New file.
1589         * elf/reldep8mod1.c: New file.
1590         * elf/reldep8mod2.c: New file.
1591         * elf/reldep8mod3.c: New file.
1592         Contributed by Jakub Jelinek.
1594 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
1596         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
1597         checking of return value ENOSYS from getdents64.
1599 2002-12-28  Andreas Schwab  <schwab@suse.de>
1601         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
1602         ($(common-objpfx)s-%.d): Generalized from
1603         $(common-objpfx)s-proto.d rule.
1604         (common-generated): Add s-proto-cancel.d.
1605         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
1606         cancellable syscalls.
1607         * sysdeps/unix/s-proto-cancel.S: New file.
1609 2002-12-29  Roland McGrath  <roland@redhat.com>
1611         * resolv/res_libc.c: Move _res defn magic after res_init defn
1612         so _res macro is in effect for that code.
1614         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
1615         pattern for prepending $(..) so it doesn't affect $(foo).
1617         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
1619 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
1621         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
1622         in hwcap.
1624 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
1626         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
1628 2002-12-28  Andreas Jaeger  <aj@suse.de>
1630         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
1631         avoid warning.
1632         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
1634 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
1636         * inet/herrno.c (__h_errno_location): Remove.
1637         * inet/Makefile (routines): Add herrno-loc.
1638         * resolv/res_libc.c (__res_state): Remove.
1639         * resolv/Makefile (routines): Add res-state.
1640         * sysdeps/generic/herrno-loc.c: New file.
1641         * sysdeps/generic/res-state.c: New file.
1643 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
1645         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
1646         Only define if USE_DL_SYSINFO is defined.
1648 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
1650         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
1651         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
1652         Define. Patch by Richard Henderson and Jes Sorensen.
1653         (PSEUDO): Remove unnecessary ;;.
1654         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
1655         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
1656         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
1657         if not initializing thread pointer.
1658         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
1659         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
1660         make it weak also if NONTLS_INIT_TP.
1661         * sysdeps/unix/common/pause.c: Handle cancellation.
1662         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
1663         (LOADSYSCALL): Remove.
1664         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
1665         (SYSCALL_ERROR_HANDLER): Use it.
1666         (PSEUDO): Don't jump around error handler.
1667         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
1668         jump around error handler.
1669         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
1670         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
1671         to __syscall_error_handler on failure.
1672         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
1673         (LOADSYSCALL): Remove.
1674         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
1675         (SYSCALL_ERROR_HANDLER): Use it.
1676         (PSEUDO): Don't jump around error handler.
1677         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
1678         jump around error handler.
1679         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
1680         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
1681         to __syscall_error_handler on failure.
1683 2002-12-27  Roland McGrath  <roland@redhat.com>
1685         * scripts/gen-as-const.awk: New file.
1686         * Makefile (distribute): Add it.
1687         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
1688         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
1689         to the list.
1690         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
1692 2002-12-27  Andreas Schwab  <schwab@suse.de>
1694         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
1696 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
1698         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
1699         _environ is NULL.
1701 2002-12-27  Andreas Schwab  <schwab@suse.de>
1703         * Makerules ($(common-objpfx)%.make): Filter through
1704         $(sed-remove-objpfx).
1706 2002-12-23  Roland McGrath  <roland@redhat.com>
1708         * scripts/abilist.awk: Produce a more compact format, divided into
1709         stanzas for each version set, the set name listed only once.
1710         * scripts/extract-abilist.awk: New file.
1711         * scripts/merge-abilist.awk: New file.
1712         * Makerules (check-abi-%, update-abi-%): New pattern rules.
1713         (update-abi, check-abi): New targets.
1714         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
1716 2002-12-19  Roland McGrath  <roland@redhat.com>
1718         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
1720         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
1721         INTERNAL_SYSCALL.
1723 2002-12-21  Andreas Schwab  <schwab@suse.de>
1725         * elf/check-textrel.c (handle_file): Swap p_type.
1727 2002-12-21  Andreas Schwab  <schwab@suse.de>
1729         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
1730         (INLINE_SYSCALL): Use it.
1731         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
1732         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
1734         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
1735         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
1737 2002-12-20  Art Haas  <ahaas@airmail.net>
1739         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
1740         syntax to C99.
1742 2002-12-21  Philip Blundell  <philb@gnu.org>
1744         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
1745         top as seventh arg to __libc_start_main.
1746         Reported by paulnash@wildseed.com.
1748         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
1750         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
1751         compatibility cruft when new enough kernel is assumed.
1753 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
1755         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
1756         instead of INLINE_SYSCALL.
1758 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
1760         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
1761         typo.
1763         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
1764         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
1765         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
1766         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
1767         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
1768         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
1769         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
1770         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
1771         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
1772         Patch by William Lee Irwin <wli@holomorphy.com>.
1774 2002-12-20  Andreas Schwab  <schwab@suse.de>
1776         * locale/programs/ld-measurement.c (measurement_output): Fix
1777         index calculation.
1779 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
1781         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
1782         Redefine _IO_flockifle and _IO_funlockfile as inlines.
1784         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
1785         builds add "tls" in the search path.
1786         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
1787         (path_hwcap): Recognize "tls".
1789 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1791         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
1792         __waitpid instead of waitpid.
1794         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
1795         int $0x80.
1796         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
1797         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
1798         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
1800         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
1801         information for system calls.
1803         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
1804         for ld.so.
1806         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
1808 2002-12-19  Roland McGrath  <roland@redhat.com>
1810         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
1811         * iconvdata/ibm922.h: Likewise.
1812         * iconvdata/ibm930.h: Likewise.
1813         * iconvdata/ibm932.h: Likewise.
1814         * iconvdata/ibm933.h: Likewise.
1815         * iconvdata/ibm935.h: Likewise.
1816         * iconvdata/ibm937.h: Likewise.
1817         * iconvdata/ibm939.h: Likewise.
1818         * iconvdata/ibm943.h: Likewise.
1819         * iconvdata/isiri-3342.h: Likewise.
1821 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1823         * test-skeleton.c (main): Make sure correct value is seen as
1824         argv[0] after adjustment of argv, and argc.
1826         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
1827         RTLD_CORRECT_DYNAMIC_WEAK is defined.
1829 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
1831         * nscd/connections.c (nscd_run): Shut up warning.
1832         * tst-ungetc.c (assert): Undefined before redefining.
1834 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1836         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
1837         is used.
1839 2002-12-17  Art Haas  <ahaas@airmail.net>
1841         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
1842         * iconvdata/cp775.h: Likewise.
1843         * iconvdata/ibm1046.h: Likewise.
1844         * iconvdata/ibm1124.h: Likewise.
1845         * iconvdata/ibm1129.h: Likewise.
1846         * iconvdata/ibm1132.h: Likewise.
1847         * iconvdata/ibm1133.h: Likewise.
1848         * iconvdata/ibm1160.h: Likewise.
1849         * iconvdata/ibm1161.h: Likewise.
1850         * iconvdata/ibm1162.h: Likewise.
1851         * iconvdata/ibm1163.h: Likewise.
1852         * iconvdata/ibm1164.h: Likewise.
1854 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1856         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
1857         __ASSUME_CLONE_THREAD_FLAGS is defined.
1858         * sysdeps/unix/sysv/linux/kernel-features.h
1859         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
1861 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
1863         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
1864         of asm.
1865         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1867         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
1868         _dl_sysinfo.
1869         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
1870         code.
1871         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
1872         _rtld_global.
1873         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
1874         code.
1875         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
1876         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
1877         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
1878         Add _dl_sysinfo.
1880 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
1882         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
1883         __libc_writev to...
1884         [libc: GLIBC_PRIVATE]: ...here.
1885         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
1886         __libc_msgsnd to...
1887         [libc: GLIBC_PRIVATE]: ...here.
1889 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
1891         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
1892         Use it instead of directly int $0x80.
1893         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
1894         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
1895         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
1896         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1897         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
1898         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
1900 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
1902         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
1904         * elf/elf.h (AT_SYSINFO): New define.
1905         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
1906         AT_SYSINFO.
1908 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
1910         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
1911         Make cancelable.
1912         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
1913         Likewise.
1914         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
1915         Likewise.
1916         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
1917         Likewise.
1918         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
1919         Likewise.
1920         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
1922         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
1923         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
1924         available, otherwise __libc_maybe_call.
1925         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
1926         cancellation handling.
1927         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
1929 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
1931         * posix/regcomp.c (free_workarea_compile): Free the new member
1932         ORG_INDICES.
1933         (analyze): Initialize ORG_INDICES.
1934         (duplicate_node_closure): Search for a existing node, which is
1935         duplicated from the node ORG_DEST and satisfies the constraint
1936         CONSTRAINT.  And use it to avoid inifimite loop.
1937         (search_duplicated_node): New function.
1938         (duplicate_node): Store the index of the original node.
1939         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
1940         if needed.
1941         * posix/regex_internal.h (re_dfa_t): Add new members.
1943 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
1945         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
1947 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1949         * sysdeps/posix/system.c (do_system): Add support for installation
1950         of cancellation handlers.
1951         * sysdeps/unix/sysv/linux/i386/system.c: New file.
1953         * stdlib/Makefile (tests): Add tst-system.
1954         * stdlib/tst-system.c: New file.
1956         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
1957         CENABLE]: Don't lose content of %ebx.
1959 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
1961         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
1962         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
1964 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1966         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
1967         fails to return a function pointer don't use it.
1969 2002-12-16  Art Haas  <ahaas@airmail.net>
1971         * io/ftw.c: Convert GCC extension initializer syntax to C99.
1972         * iconvdata/iso-ir-165.c: Likewise.
1973         * iconvdata/jis0208.c: Likewise.
1974         * iconvdata/jis0212.c: Likewise.
1976 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1978         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
1979         epoll_ctl, and epoll_wait.
1980         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
1981         epoll_create, epoll_ctl, and epoll_wait.
1982         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
1983         Davide Libenzi <davidel@xmailserver.org>.
1984         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
1985         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
1986         Add sys/epoll.h.
1988 2002-12-16  Art Haas  <ahaas@airmail.net>
1990         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
1991         syntax to C99
1992         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
1993         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
1994         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
1996 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1998         * stdio-common/Makefile (routines): Remove lockfile.  Add
1999         flockfile, ftrylockfile, and funlockfile.
2000         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
2001         * sysdeps/generic/flockfile.c: New file.
2002         * sysdeps/generic/ftrylockfile.c: New file.
2003         * sysdeps/generic/funlockfile.c: New file.
2005 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
2007         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
2008         macros instead of doing the calls directly.
2009         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
2010         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
2011         targets.
2013 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
2015         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
2016         * sysdeps/ieee754/bits/nan.h: Likewise.
2018         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
2019         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
2021 2002-12-16  Roland McGrath  <roland@redhat.com>
2023         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
2024         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
2025         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
2027         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
2028         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
2029         s_putpmsg.
2030         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
2031         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
2032         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
2033         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
2034         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
2035         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
2036         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
2037         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
2039 2002-12-13  Paul Eggert  <eggert@twinsun.com>
2041         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
2042         is now u_int, not int.
2043         (struct XDR.x_handy): Now u_int, not int.
2044         * sunrpc/xdr_mem.c: Include <limits.h>.
2045         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
2046         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
2047         x_handy is now unsigned, not signed.
2048         Do not decrement x_handy if no change is made.
2049         (xdrmem_setpos): Check for int overflow.
2050         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
2051         (xdr_sizeof): Remove cast that is now unnecessary, now that
2052         x_handy is unsigned.
2054 2002-12-15  Art Haas  <ahaas@airmail.net>
2056         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
2057         * iconvdata/gap.awk: Likewise.
2058         * iconvdata/gen-8bit-gap-1.sh: Likewise.
2059         * iconvdata/gen-8bit-gap.sh: Likewise.
2060         * locale/C-address.c: Likewise.
2061         * locale/C-collate.c: Likewise.
2062         * locale/C-ctype.c: Likewise.
2063         * locale/C-identification.c: Likewise.
2064         * locale/C-measurement.c: Likewise.
2065         * locale/C-messages.c: Likewise.
2066         * locale/C-monetary.c: Likewise.
2067         * locale/C-name.c: Likewise.
2068         * locale/C-numeric.c: Likewise.
2069         * locale/C-paper.c: Likewise.
2070         * locale/C-telephone.c: Likewise.
2071         * locale/C-time.c: Likewise.
2072         * nscd/connections.c: Likewise.
2073         * nscd/grpcache.c: Likewise.
2074         * nscd/hstcache.c: Likewise.
2075         * nscd/pwdcache.c: Likewise.
2076         * stdio-common/vfprintf.c: Likewise.
2077         * stdlib/random.c: Likewise.
2078         * sysdeps/generic/siglist.c: Likewise.
2079         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
2080         * sysdeps/ieee754/bits/nan.h: Likewise.
2081         * sysdeps/posix/sprofil.c: Likewise.
2082         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
2083         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
2084         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
2086 2002-12-15  Roland McGrath  <roland@redhat.com>
2088         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
2090         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
2091         <tls.h> here, no need for it.
2092         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
2094         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
2095         parameter, not varargs parameter.
2097         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
2098         argument so it's not an unused variable.
2100         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
2101         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
2102         for users.
2104         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
2106 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
2108         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
2109         original __libc_fcntl code.  Just renamed.
2111 2002-12-15  Andreas Schwab  <schwab@suse.de>
2113         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
2115 2002-12-14  Olaf Hering  <olh@suse.de>
2117         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
2118         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
2120 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
2122         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
2124         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
2125         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
2127         * sysdeps/unix/sysv/linux/open64.c: New file.
2129         * sysdeps/generic/pselect.c: Add support for cancellation handling.
2130         * sysdeps/posix/open64.c: Likewise.
2131         * sysdeps/posix/sigpause.c: Likewise.
2132         * sysdeps/posix/sigwait.c: Likewise.
2133         * sysdeps/posix/system.c: Likewise.
2134         * sysdeps/posix/waitid.c: Likewise.
2135         * sysdeps/unix/sysv/linux/accept.S: Likewise.
2136         * sysdeps/unix/sysv/linux/connect.S: Likewise.
2137         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
2138         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
2139         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
2140         * sysdeps/unix/sysv/linux/poll.c: Likewise.
2141         * sysdeps/unix/sysv/linux/pread.c: Likewise.
2142         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
2143         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
2144         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
2145         * sysdeps/unix/sysv/linux/readv.c: Likewise.
2146         * sysdeps/unix/sysv/linux/recv.S: Likewise.
2147         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
2148         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
2149         * sysdeps/unix/sysv/linux/send.S: Likewise.
2150         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
2151         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
2152         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
2153         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
2154         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
2155         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
2156         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
2157         * sysdeps/unix/sysv/linux/wait.c: Likewise.
2158         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
2159         * sysdeps/unix/sysv/linux/writev.c: Likewise.
2160         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
2161         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
2163 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
2165         * sysdeps/generic/sysdep-cancel.h: New file.
2166         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
2167         cancelable syscall.
2168         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
2169         recvmsg, send, sendmsg, sendto): Make cancelable.
2170         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
2171         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
2172         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
2173         sendto, osf_select): Likewise.
2174         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
2175         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
2176         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
2177         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
2178         sendto): Likewise.
2179         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
2180         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
2181         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
2182         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
2183         sendto): Likewise.
2184         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
2185         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
2186         sendto, select): Likewise.
2187         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
2188         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
2189         Likewise.
2190         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
2191         select, fcntl): Likewise.
2192         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
2193         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
2194         read, readv, select, sigsuspend, write, writev): Likewise.
2196 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
2198         * dirent/bug-readdir1.c: Include unistd.h.
2200 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
2202         * locale/programs/locale.c: Include locarchive.h.
2203         (ARCHIVE_NAME): Define.
2204         (write_archive_locales): New function.
2205         (write_locales): Use it.  Ensure the same locale is not printed
2206         multiple times in verbose mode.
2207         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
2208         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
2209         functions.
2210         (struct nameent): New type.
2211         (nameentcmp): New function.
2213 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
2215         * posix/regex_internal.c (re_string_context_at): Guard wide char
2216         code with #ifdef RE_ENABLE_I18N.
2218 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
2220         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
2222 2002-12-13  Roland McGrath  <roland@redhat.com>
2224         * posix/bug-regex15.c: New file.
2225         * posix/Makefile (tests): Add it.
2227         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
2228         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
2230 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
2232         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
2234         * misc/syslog.c (log_cleanup): Don't use parameter in
2235         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
2236         pass NULL instead of a pointer to syslog_lock.
2238 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
2240         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
2241         linker map for all iconv modules.
2242         (distribute): Add gconv.map.
2243         * iconvdata/gconv.map: New file.
2245         * elf/Makefile: Also check all iconv modules for text relocations.
2247         * stdlib/Makefile: Remove code to automatically import GMP.
2249         * elf/Makefile (tests): Add rules to build and run check-textrel.
2250         * elf/check-textrel.c: New file.
2252         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
2253         directive.
2255 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
2257         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
2258         not st.st[am]time.
2260 2002-04-30  Bruno Haible  <bruno@clisp.org>
2262         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
2263         the encoding if it already has slashes.
2264         Reported by Perry Rapp <prapp@erols.com>.
2266 2002-12-11  Roland McGrath  <roland@redhat.com>
2268         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
2269         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
2270         Turn off PIC for compiling this file.
2272 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
2274         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
2275         definitions.  Not needed.
2276         [_LIBC]: Use definitions from libc-lock.h instead of referencing
2277         pthread routines directly.
2278         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
2279         mutex_init calls.
2280         (arena_get2): Don't look at return value of mutex_lock.
2282 2002-12-11  Roland McGrath  <roland@redhat.com>
2284         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
2285         elf-init.o instead of compiling a PIC version.
2287 2002-12-11  Bruno Haible  <bruno@clisp.org>
2289         * intl/gettext.h: Renamed to ...
2290         * intl/gmo.h: ... here.
2291         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
2292         * intl/gettextP.h: Update.
2293         * intl/loadmsgcat.c: Update.
2295         * intl/gettextP.h (PARAMS): Make more portable.
2296         (attribute_hidden): Define as empty macro if not already defined.
2297         * intl/hash-string.h (PARAMS): Make more portable.
2298         * intl/loadinfo.h (PARAMS): Likewise.
2299         * intl/plural-exp.h (PARAMS): Likewise.
2300         (attribute_hidden): Move definition near the definition of
2301         internal_function.
2303         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
2304         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
2306 2002-07-13  Bruno Haible  <bruno@clisp.org>
2308         * intl/dcigettext.c (freea): New macro.
2309         (FREE_BLOCKS): Free also the registered blocks.
2310         (DCIGETTEXT): Free the 'search' variable.
2311         Reported by Andreas Fischer <a.fischer@asentics.de>.
2313 2002-04-27  Bruno Haible  <bruno@clisp.org>
2315         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
2316         * intl/dcigettext.c: Likewise.
2317         * intl/dcgettext.c: Likewise.
2318         * intl/dgettext.c: Likewise.
2319         * intl/gettext.c: Likewise.
2320         * intl/dcngettext.c: Likewise.
2321         * intl/dngettext.c: Likewise.
2322         * intl/ngettext.c: Likewise.
2323         * intl/textdomain.c: Likewise.
2324         * intl/bindtextdom.c: Likewise.
2325         * intl/plural-exp.h: Likewise.
2327 2002-01-02  Bruno Haible  <bruno@clisp.org>
2329         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
2331 2001-04-30  Bruno Haible  <bruno@clisp.org>
2333         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
2334         default macro definitions.  Needed for mingw32.
2336 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
2338         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
2339         __builtin_constant_p to macro parameter.
2341         * sysdeps/generic/sigpause.c: Define all functions as weak.
2342         * sysdeps/posix/sigpause.c: Likewise.
2344         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
2345         type size_t.
2347 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
2349         * elf/tst-array1.c (preinit_array, init_array, fini_array):
2350         Explicitly align the array to sizeof (void *).
2351         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
2353         * include/libc-symbols.h: Fix a comment typo.
2355         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
2356         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
2357         Likewise.
2358         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
2359         Likewise.
2360         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
2361         (__libc_sigsuspend): Likewise.
2362         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
2363         (__libc_sigsuspend): Likewise.
2364         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
2365         (creat): New weak alias.
2367 2002-12-10  Roland McGrath  <roland@redhat.com>
2369         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
2370         contributes a manual chapter.
2371         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
2372         around xref to it.
2374         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
2375         and move contents to ...
2376         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
2377         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
2378         it instead of duplicating its contents.
2379         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
2381 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
2383         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
2384         defined.
2385         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
2386         function.
2387         (EXTRA_LD_ENVVARS): Use it.
2388         (DL_OSVERSION_INIT): Define.
2389         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
2390         dl-librecon.h.
2391         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
2393 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
2395         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
2397         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
2398         call.  It is not allowed to destroy pthread mutexes which are
2399         still in use even though it is safe for our implementations.  If
2400         somebody still uses the descriptor it is a bug.
2402 2002-12-09  Richard Henderson  <rth@redhat.com>
2404         * csu/abi-note.S: Use .p2align, not .align.
2406 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
2408         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
2409         __libc_select aliases.
2411         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
2412         alias.
2414         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
2416         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
2418         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
2420         * sysdeps/unix/syscalls.list: Define __libc_select alias.
2422         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
2424         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
2425         __libc___xpg_sigpause aliases.
2427         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
2429         * misc/error.c: Remove use of USE_IN_LIBIO.
2431 2002-12-08  Roland McGrath  <roland@redhat.com>
2433         * elf/Makefile (tests): Uncomment tst-array[123].
2434         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
2435         * csu/elf-init.c: New file.
2436         * csu/Makefile (routines, static-only-routines): Add elf-init.
2437         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
2438         and __libc_csu_fini in place of _fini.
2439         * sysdeps/arm/elf/start.S: Likewise.
2440         * sysdeps/cris/elf/start.S: Likewise.
2441         * sysdeps/hppa/elf/start.S: Likewise.
2442         * sysdeps/i386/elf/start.S: Likewise.
2443         * sysdeps/ia64/elf/start.S: Likewise.
2444         * sysdeps/m68k/elf/start.S: Likewise.
2445         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
2446         * sysdeps/mips/elf/start.S: Likewise.
2447         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
2448         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
2449         * sysdeps/s390/s390-32/elf/start.S: Likewise.
2450         * sysdeps/s390/s390-64/elf/start.S: Likewise.
2451         * sysdeps/sh/elf/start.S: Likewise.
2452         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
2453         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
2454         * sysdeps/x86_64/elf/start.S: Likewise.
2456         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
2457         struct containing function ptr and value, free it.
2458         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
2459         It's not safe to let the new thread use the SIGEV pointer.
2461 2001-10-20  Paul Eggert  <eggert@twinsun.com>
2463         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
2464         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
2465         Use strerror_r that is only a macro, even if it is not a function.
2466         (strerror): Check for HAVE_DECL_STRERROR before declaring.
2467         (private_strerror): Use prototypes, not old-style function definition.
2468         (print_errno_message): New function.
2469         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
2470         char*-flavored one.
2471         (error_tail, error, error_at_line): Use it.
2473 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
2475         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
2477 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
2479         * scripts/output-format.sed: Fix bug in one of the s expressions
2480         which used / for one too many things.
2482         * include/unistd.h: Declare __libc_close.
2484 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
2486         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
2488 2002-12-07  Roland McGrath  <roland@redhat.com>
2490         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
2491         from 2002-12-06, but remove unnecessary memset call without removing
2492         necessary copy of initialization image.
2494         * Makerules ($(common-objpfx)format.lds): New target.
2495         (common-generated): Add it.
2496         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
2497         * scripts/output-format.sed: New file.
2498         * Makefile (distribute): Add it.
2500 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
2502         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
2503         Reported by Art Haas <ahaas@airmail.net>.
2505 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
2507         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
2509 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
2511         * string/test-strncpy.c (do_random_tests): Improve test coverage.
2513 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
2515         * test-skeleton.c (timeout_handler): Allow expected signal to be
2516         SIGALRM.
2518         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
2520         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
2522 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
2524         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
2525         (SYSCALL_ERROR_HANDLER): Fix a pasto.
2526         Reported by Jeff Bailey <jbailey@nisa.net>.
2528 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
2530         * sysdeps/generic/libc-tls.c: Undo last patch.
2532         * include/wctype.h: Define iswalnum with libc_hidden_proto.
2534         * include/signal.h: Define raise with libc_hidden_proto.
2536         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
2537         __execve instead of snprintf and execve.
2539         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
2540         again a bit.
2542 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
2544         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
2545         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
2547 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
2549         * misc/syslog.c (log_cleanup): New function.
2550         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
2551         (closelog): Likewise.
2553         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
2554         * elf/dl-iteratephdr.c: Likewise.
2555         * elf/dl-lookup.c: Likewise.
2556         * elf/dl-misc.c: Likewise.
2557         * elf/dl-open.c: Likewise.
2558         * elf/dl-support.c: Likewise.
2559         * elf/rtld.c: Likewise.
2560         * sysdeps/generic/ldsodefs.h: Likewise.
2561         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
2562         * sysdeps/mach/bits/libc-lock.h: Likewise.
2563         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
2565 2002-12-06  Roland McGrath  <roland@redhat.com>
2567         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
2569         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
2570         (malloc_starter, memalign_starter, free_starter): Don't define these.
2571         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
2572         Don't declare them either.
2573         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
2574         __pthread_initialize, so no need to set hooks to *_starter.
2575         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
2576         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
2577         (__libc_malloc_pthread_startup): New function.
2578         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
2580         * malloc/hooks.c (memalign_starter): New function.
2581         * malloc/malloc.c: Declare it.
2582         * malloc/arena.c (save_memalign_hook): New variable.
2583         (ptmalloc_init): Set __memalign_hook to memalign_starter.
2585         * elf/dl-minimal.c (free): Clear the memory.
2586         (calloc): Just call malloc, knowing all memory it returns is cleared.
2588         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
2589         malloc and memset; calloc can avoid the zeroing when redundant.
2590         (_dl_tls_setup): Likewise.
2591         * elf/dl-load.c (decompose_rpath): Likewise.
2592         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
2593         call, since memory from sbrk at startup is already zero.
2595         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
2596         error string for failure, null for success.  Update callers.
2597         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
2598         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
2600 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
2602         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
2603         args to i:iipi.
2604         (readahead): Change args to i:iii.
2605         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
2606         Change args to i:iii.
2607         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
2608         args to i:iiii.
2610 2002-12-05  Roland McGrath  <roland@redhat.com>
2612         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
2613         call all functions rather than none.
2614         Reported by Mark P. Mitchell <mark@codesourcery.com>.
2616 2002-12-04  Roland McGrath  <roland@redhat.com>
2618         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
2619         on _nl_current_LC_* variables.
2621 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
2623         * dirent/bug-readdir1.c (main): Don't call closedir, just close
2624         the file descriptor.  This is testing what the bug report was about.
2626 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
2628         * po/be.po: New file.
2630         * argp/Makefile (tests): Add tst-argp1.
2632         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
2633         Change type of _attribute to void*.
2634         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
2635         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
2636         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
2637         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
2638         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
2640 2002-12-04  Roland McGrath  <roland@redhat.com>
2642         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
2643         members to the end, so a libpthread compiled with !USE_TLS will still
2644         find other members properly.
2646         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
2647         operand for DEST memory.  Fix dummy input operand to use SRC.
2648         Reported by Davin McCall <davmac@ozonline.com.au>.
2650         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
2651         alignment when initializing the DTV entry.
2653         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
2654         when TLS has not been set up, try to set it up if we can.
2655         * elf/tst-tls4.c: Revert last change.
2656         * elf/tst-tls5.c: Likewise.
2657         * elf/tst-tls6.c: Likewise.
2658         * elf/tst-tls7.c: Likewise.
2659         * elf/tst-tls8.c: Likewise.
2660         * elf/tst-tls9.c: Likewise.
2662         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
2663         * sysdeps/generic/ldsodefs.h: Declare it.
2664         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
2665         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
2666         function, broken out of __libc_setup_tls.
2667         (init_static_tls): Likewise.
2668         (__libc_setup_tls): Call them.
2669         (_dl_tls_setup): New function, uses new subroutines.
2671         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
2672         Clear the pointer when returning true.
2673         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
2674         first element of the slotinfo list too.
2676         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
2677         [SHARED].
2679         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
2680         (_dl_determine_tlsoffset): Likewise.
2682         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
2683         startup_error_tsd, made global.
2684         (dl_main): Update initialization.
2685         * elf/dl-tsd.c: Likewise.
2686         * sysdeps/generic/ldsodefs.h: Declare it.
2688 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
2690         * manual/texinfo.tex: Update from latest upstream version.
2692 2002-12-03  Roland McGrath  <roland@redhat.com>
2694         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
2695         area surplus in calculation for sbrk call.
2697         * iconvdata/cp1125.c: New file.
2698         * iconvdata/Makefile (distribute): Add it.
2699         (modules): Add CP1125.
2700         (gen-8bit-gap-modules): Add cp1125.
2701         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
2702         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
2704 2002-12-03  Andreas Jaeger  <aj@suse.de>
2706         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
2708 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
2710         * sysdeps/posix/system.c (do_system): Make signal handler
2711         installation thread safe.
2713 2002-12-02  Roland McGrath  <roland@redhat.com>
2715         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
2716         caller from EXTRA to -.
2717         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
2718         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
2719         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
2721 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
2723         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
2724         bits of RM are cleared.
2726 2002-12-02  Roland McGrath  <roland@redhat.com>
2728         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
2729         TLS setup is required.
2730         * elf/tst-tls5.c: Likewise.
2731         * elf/tst-tls6.c: Likewise.
2732         * elf/tst-tls7.c: Likewise.
2733         * elf/tst-tls8.c: Likewise.
2734         * elf/tst-tls9.c: Likewise.
2736         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
2737         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
2738         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
2739         for being null before calling free_slotinfo.
2740         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
2741         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
2743 2002-11-30  Bruno Haible  <bruno@clisp.org>
2745         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
2746         (struct __gconv_step): New field __btowc_fct.
2747         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
2748         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
2749         __BUILTIN_TRANS.
2750         (__gconv_btwoc_ascii): New declaration.
2751         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
2752         (__gconv_btwoc_ascii): New function.
2753         * iconv/gconv_builtin.h: Add BtowcFct argument to all
2754         BUILTIN_TRANSFORMATION invocations.
2755         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
2756         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
2757         * iconv/gconv_builtin.c (map): New field btowc_fct.
2758         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
2759         btowc_fct field.
2760         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
2761         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
2762         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
2763         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
2764         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
2765         (gconv_init): Initialize __btowc_fct field.
2766         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
2767         * iconv/loop.c: Document ONEBYTE_BODY.
2768         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
2769         Undefine ONEBYTE_BODY at the end.
2770         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
2771         * iconvdata/8bit-gap.c (NONNUL): New macro.
2772         (BODY for FROM_LOOP): Use it.
2773         (ONEBYTE_BODY): New macro.
2774         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
2775         (NONNUL): New macro.
2776         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
2777         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
2778         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
2779         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
2780         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
2781         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
2782         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
2783         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
2784         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
2785         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
2786         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
2787         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
2788         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
2789         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
2790         * iconvdata/ibm932.c: Include <stdbool.h>.
2791         (TRUE, FALSE): Remove macros.
2792         (BODY for FROM_LOOP): Remove unused variable rp1.
2793         (ONEBYTE_BODY): New macro.
2794         (BODY for TO_LOOP): Use bool.
2795         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
2796         * iconvdata/ibm943.c: Include <stdbool.h>.
2797         (TRUE, FALSE): Remove macros.
2798         (BODY for FROM_LOOP): Remove unused variable rp1.
2799         (ONEBYTE_BODY): New macro.
2800         (BODY for TO_LOOP): Use bool.
2801         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
2802         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
2803         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
2804         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
2805         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
2806         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
2807         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
2808         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
2809         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
2810         * iconvdata/gbbig5.c: Tweak comment.
2812 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
2814         * po/fi.po: Update from translation team.
2816 2002-12-01  Roland McGrath  <roland@redhat.com>
2818         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
2819         testing getdents64 return value.
2821         * scripts/versions.awk: Don't pass -n flag to sort command.
2823         * posix/bug-regex13.c: Include <string.h>.
2825         * sysdeps/generic/libc-start.c (__libc_start_main): Do
2826         DL_SYSDEP_OSCHECK here.
2827         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
2828         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
2830         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
2831         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
2833         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
2834         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
2836         * include/link.h: Comment typo fix.
2838 2002-12-01  Roland McGrath  <roland@frob.com>
2840         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
2841         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
2842         _POSIX_MEMORY_PROTECTION): Likewise.
2843         (_POSIX_POLL, _POSIX_SELECT): Removed.
2845 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
2847         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
2848         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
2850 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
2852         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
2853         USE___THREAD.
2854         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
2855         "=v" constraints.
2857 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
2859         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
2860         branch prediction buffers by using unpaired call/ret.
2862 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
2864         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
2865         first parameters constraint string.
2866         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
2868 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
2870         * posix/regcomp.c (parse_expression): Set the bit since the back
2871         reference is used in the regular expression.
2872         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
2873         of malloc failure.
2874         (re_node_set_init_copy): Likewise.
2875         * posix/regex_internal.h (state_array_t): New structure.
2876         (re_sub_match_last_t): Likewise.
2877         (re_sub_match_top_t): Likewise.
2878         (re_match_context_t): Add new members.
2879         (re_dfa_t): Likewise.
2880         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
2881         to check the matching is really correct, and retry if failed.
2882         Move the routin pruning the impossible nodes from here, ...
2883         (prune_impossible_nodes): To this function.
2884         (check_matching): Invoke check_subexp_matching_top, and replace
2885         redundant checking with transit_state_bkref invocation.
2886         (proceed_next_node): Replace strncmp with memcmp.  Reported by
2887         Paolo Bonzini  <bonzini@gnu.org>.
2888         (update_cur_sifted_state): Remove search_subexp invocation.
2889         (search_subexp): Remove this function.
2890         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
2891         optimization.
2892         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
2893         Remove unused invocation of match_ctx_add_entry.
2894         (transit_state): Invoke check_subexp_matching_top.
2895         (check_subexp_matching_top): New function.
2896         (transit_state_bkref): Remove unused array.
2897         Merge transit_state_bkref_loop.
2898         (transit_state_bkref_loop): Use get_subexp instead of
2899         sift_states_backward.  Use search_cur_bkref_entry for optimization.
2900         Merge this function to transit_state_bkref.
2901         (get_subexp): New function.
2902         (get_subexp_sub): Likewise.
2903         (find_subexp_node): Likewise.
2904         (check_arrival): Likewise.
2905         (check_arrival_expand_ecl): Likewise.
2906         (check_arrival_expand_ecl_sub): Likewise.
2907         (expand_bkref_cache): Likewise.
2908         (match_ctx_init): Initialize new members.
2909         (match_ctx_clean): New function.
2910         (match_ctx_free): Release new members.
2911         (match_ctx_free_subtops): New function.
2912         (match_ctx_add_entry): Fix indent.
2913         (search_cur_bkref_entry): New function.
2914         (match_ctx_add_subtop): Likewise.
2915         (match_ctx_add_sublast): Likewise.
2917 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
2919         * iconv/Makefile (tests): Remove tst-iconv4.c
2920         * iconv/tst-iconv4.c: Moved to...
2921         * iconvdata/tst-iconv4.c: ...here.  New file.
2922         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
2924 2002-11-25  Roland McGrath  <roland@redhat.com>
2926         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
2927         Grok AF_LINK if defined.
2928         From Momchil Velikov <velco@fadata.bg>.
2930         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
2931         brdaddr, or dstaddr, just set those pointers to null and don't fail.
2932         Reported by Momchil Velikov <velco@fadata.bg>.
2934         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
2935         is > sizeof IFR->ifa_addr, advance past the whole longer length.
2936         (__ifreq): Count up NIFS that way too.
2937         Reported by Momchil Velikov <velco@fadata.bg>.
2939         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
2941         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
2942         and <fpu_control.h>.
2944 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
2946         * elf/elf.h (EM_ST19): Fix typo.
2948 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
2950         * include/errno.h (__set_errno): Define as errno = val
2951         unconditionally.
2953 2002-11-24  Roland McGrath  <roland@redhat.com>
2955         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
2956         * sysdeps/posix/writev.c: Likewise.
2957         From Momchil Velikov <velco@fadata.bg>.
2959         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
2960         calling *GL(dl_error_catch_tsd) for a thread-local location.
2961         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
2962         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
2963         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
2965         * libio/iofflush.c: Add libc_hidden_def.
2966         * libio/iofwrite.c: Likewise.
2967         * sysdeps/generic/sigtimedwait.c: Likewise.
2968         * sysdeps/generic/sigwaitinfo.c: Likewise.
2969         * sysdeps/posix/sigwait.c: Likewise.
2970         Reported by Momchil Velikov <velco@fadata.bg>.
2972         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
2973         to match <arpa/inet.h> declaration.
2974         * inet/inet_netof.c (inet_netof): Likewise.
2975         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
2976         Reported by Momchil Velikov <velco@fadata.bg>.
2978         * configure.in: Skip AUTOCONF check under --without-cvs.
2979         * configure: Regenerated.
2981         * posix/Makefile (headers): Add bits/pthreadtypes.h.
2982         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
2983         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
2985 2002-11-24  Andreas Schwab  <schwab@suse.de>
2987         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
2988         with six arguments.
2990 2002-11-19  Jim Meyering  <jim@meyering.net>
2992         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
2993         as `static'.
2994         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
2996 2002-11-23  Roland McGrath  <roland@redhat.com>
2998         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
2999         Just produce hex output for datum sizes.
3001         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
3002         Reported by Luca Barbieri <ldb@ldb.ods.org>.
3004 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
3006         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
3007         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
3008         and __unused3 fields.
3009         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
3010         [__WORDSIZE == 32]: Only PPC32 requires __unused1
3011         and __unused2 fields.
3012         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
3013         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
3014         __unused3, and __unused4 fields.
3016         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
3017         obtain lowest address for profiling in __monstartup call.
3019 2002-11-21  Roland McGrath  <roland@redhat.com>
3021         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
3022         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
3024         * locale/localeinfo.h (struct locale_data): Revert last change.
3026         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
3027         From Ian Wienand <ianw@gelato.unsw.edu.au>.
3029         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
3030         __NR_pread64 if not defined.
3031         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
3032         From Ian Wienand <ianw@gelato.unsw.edu.au>.
3034 2002-11-21  Roland McGrath  <roland@frob.com>
3036         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
3037         __libc_multiple_libcs here.  Call __setfpucw.
3039 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
3041         * elf/Makefile (tests): Don't run test-arrayX tests for now.
3043         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
3044         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
3045         CLONE_CHILD_*TID flags.
3047 2002-11-20  Andreas Jaeger  <aj@suse.de>
3049         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
3050         We pass struct ucontext on x86-64.
3051         (GET_PC): Adjust.
3052         (GET_FRAME): Adjust.
3053         (GET_STACK): Adjust.
3055 2002-11-20  Roland McGrath  <roland@redhat.com>
3057         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
3058         conditionalize [! DO_VERSIONING] #error.
3060         * scripts/abilist.awk: Grok function descriptor symbols.
3062         * intl/tst-gettext.c (main): Check return values from setlocale.
3063         Add necessary unsetenv's to make LANG=existing-locale check work.
3065         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
3066         so aborted prior runs don't confuse things.
3068         * locale/localeinfo.h (struct locale_data: union locale_data_value):
3069         Use uintptr_t instead of unsigned int for `word' member.
3070         (_NL_CURRENT_WORD): Cast to uint32_t.
3072         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
3073         value.
3075 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
3077         * elf/tls-macros.h: Add IA-64 definitions.
3078         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
3080         * iconv/Makefile (tests): Add tst-iconv4.
3081         * iconv/tst-iconv4.c: New file.
3083         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
3084         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
3085         __GCONV_INCOMPLETE_INPUT.
3086         (ucs4le_internal_loop): Likewise.
3087         (ucs4le_internal_loop_unaligned): Likewise.
3088         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
3089         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
3090         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
3092         * iconv/loop.c (LOOPFCT): First test for empty input then for full
3093         output buffer.
3095         * inet/getnameinfo.c: Use extend_alloca where appropriate.
3096         * sysdeps/posix/getaddrinfo.c: Likewise.
3098         * include/alloca.h (extend_alloca): New define.  Based on stack
3099         direction it'll try to append to the previouls allocated buffer.
3101 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
3103         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
3104         use the same service for AF_INET and AF_INET6.
3106 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
3108         * intl/localealias.c (read_alias_file): Use only about 400 bytes
3109         of stack space instead of 16k.
3111 2002-11-18  Wolfram Gloger  <wg@malloc.de>
3113         * malloc/arena.c
3114         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
3115         nothing if not initialized.  Bug report from Marcus Brinkmann
3116         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
3118 2002-11-19  Roland McGrath  <roland@redhat.com>
3120         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
3121         sched_setaffinity.
3123         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
3124         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
3125         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
3126         * configure: Regenerated.
3128 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
3130         * include/dlfcn.h: __libc_dlopen is now a macro calling
3131         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
3132         (__libc_dlopen_mode): New prototype.
3133         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
3134         new parameter.  Store new parameter in mode field of structure passed
3135         to do_dlopen.
3136         (struct do_dlopen_args): Add new field mode.
3137         (do_dlopen): Pass mode from parameter structure to _dl_open.
3139 2002-11-11  Randolf Chung  <tausq@debian.org>
3141         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
3142         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
3143         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
3145         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
3147         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
3148         Set -mdisable-fpregs for this file.
3150 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
3152         * sysdeps/unix/sysv/linux/configure.in:
3153         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
3154         from gcc-3.0 era for backwards compatibility.
3155         * sysdeps/unix/sysv/linux/configure: Regenerate.
3157         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
3158         Define mcontext_t as a sigcontext.
3160 2002-11-18  Roland McGrath  <roland@redhat.com>
3162         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
3163         Free memory in `last_result' if it was used.
3165         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
3166         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
3167         Do the parsing inline instead of copying strings and calling
3168         inet_network, and properly skip all alias names not matching the form.
3170         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
3172 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
3174         * manual/pattern.texi (Wordexp Example): Fix sample code.
3176         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
3177         childs stack which will be loaded into the %esi register.
3179 2002-11-14  Paul Eggert  <eggert@twinsun.com>
3181         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
3182         overflow when skipping the question part and when unpacking aliases.
3184 2002-11-15  Roland McGrath  <roland@redhat.com>
3186         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
3187         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
3188         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
3190 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
3192         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
3193         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
3195 2002-11-15  Roland McGrath  <roland@redhat.com>
3197         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
3198         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
3199         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
3200         (+make-include-of-dep): New canned sequence.
3202         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
3203         From Dmitry V. Levin <ldv@altlinux.org>.
3205 2002-11-14  Roland McGrath  <roland@redhat.com>
3207         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
3208         * inet/herrno.c (__libc_h_errno): Likewise.
3209         * resolv/res_libc.c (__libc_res): Likewise.
3210         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
3211         (__res_state) [! USE___THREAD]: Don't define as weak.
3212         * csu/Versions: Revert last change.
3213         * resolv/Versions: Revert last change.
3215         * Makerules ($(common-objpfx)%.make): New pattern rule.
3216         * tls.make.c: New file.
3217         * Makefile (distribute): Add it.
3219         * sysdeps/generic/errno.c [! USE___THREAD]
3220         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
3221         with compat_symbol so they are not link-time visible.
3222         [! USE___THREAD] (__libc_errno): New alias for errno.
3223         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
3224         Add __libc_errno here.
3225         * inet/herrno.c [USE___THREAD]: Use this conditional
3226         in place of [USE_TLS && HAVE___THREAD].
3227         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
3228         (h_errno, _h_errno): Declare these with compat_symbol so they are not
3229         link-time visible.
3230         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
3231         * resolv/res_libc.c [! USE___THREAD]
3232         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
3233         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
3234         (__libc_res): Define as alias for _res.
3235         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
3236         Add __libc_h_errno and __libc_res here.
3238 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
3240         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
3241         * resolv/Versions (h_errno, _res): Likewise.
3243 2002-11-14  Roland McGrath  <roland@redhat.com>
3245         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
3246         (%.symlist): Likewise.
3248 2002-11-13  Roland McGrath  <roland@redhat.com>
3250         * scripts/abilist.awk: New file.
3251         * Makefile (distribute): Add it.
3252         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
3253         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
3254         [$(subdir) = elf] (tests): Depend on libc.symlist.
3255         (generated, common-generated): Add those files.
3257         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
3258         * configure: Regenerated.
3259         * config.make.in (OBJDUMP): New variable, substituted by configure.
3261         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
3262         (mallochook, reallochook): Set them up.
3263         (checkhdr): Check HDR->magic2 value.
3264         (freehook): Reset HDR->magic2.
3265         (memalignhook): New static function.
3266         (old_memalign_hook): New static variable.
3267         (mcheck, reallochook): Set __memalign_hook to memalignhook.
3269         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
3270         for the new TCB.
3272 2002-11-13  Andreas Jaeger  <aj@suse.de>
3274         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
3275         attribute.
3276         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
3278 2002-11-11  Paul Eggert  <eggert@twinsun.com>
3280         * manual/crypt.texi (Cryptographic Functions): Mention that
3281         the MD5 one-way algorithm is compatible with BSD's.
3283 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
3285         * posix/regex_internal.c (re_string_skip_chars): Also return the last
3286         wide character.
3287         (re_string_reconstruct): Calculate the context by itself when the
3288         offset points out of the valid range.
3289         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
3290         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
3291         (IS_WIDE_WORD_CHAR): New macro.
3292         (IS_WIDE_NEWLINE): New macro.
3294 2002-11-12  Andreas Jaeger  <aj@suse.de>
3296         * sysdeps/x86_64/strchr.S: Don't use one register for two
3297         purposes, this fixes a bug noticed by test-strchr.c.
3299         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
3300         correctly.
3302 2002-11-12  Roland McGrath  <roland@redhat.com>
3304         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
3305         (_G_IO_NO_BACKWARD_COMPAT): Define it.
3307         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
3308         instead of <pt-machine.h>.
3309         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
3310         testandset.
3311         From Ian Wienand <ianw@gelato.unsw.edu.au>.
3313 2002-11-10  Roland McGrath  <roland@redhat.com>
3315         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
3316         Call fputs instead of fwprintf (simpler to follow in debugger).
3318         * crypt/md5-crypt.c: Doc fix.
3320         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
3321         the beginning of generated target commands.
3323         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
3324         dependencies for these in case implicit rule search skipped the
3325         nonexistent source directory.
3326         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
3327         files with $(object-suffixes) as targets too.
3328         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
3329         and a target for it using $(make-target-directory).
3331         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
3333 2002-11-10  Roland McGrath  <roland@frob.com>
3335         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
3336         * sysdeps/generic/bits/pthreadtypes.h: ... here.
3338         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
3339         l_start == 0 and l_len == 1 as we do l_len == 0.
3341 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
3343         * po/da.po: Update from translation team.
3345 2002-11-10  Roland McGrath  <roland@redhat.com>
3347         * config.make.in (includedir): New variable, substituted by configure.
3348         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
3349         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
3351 2002-11-10  Andreas Jaeger  <aj@suse.de>
3353         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
3354         REG_OLDMASK and REG_CR2 to synch with kernel header.
3355         (NGREG): Increase.
3357         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
3358         aliasing problem.
3359         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
3360         * nss/getnssent_r.c (__nss_getent_r): Likewise.
3361         (__nss_setent): Likewise.
3362         (__nss_getent_r): Likewise.
3363         * inet/getnetgrent_r.c (innetgr): Likewise.
3364         (__internal_setnetgrent_reuse): Likewise.
3365         (internal_getnetgrent_r): Likewise.
3366         * inet/ether_hton.c (ether_hostton): Likewise.
3367         * inet/ether_ntoh.c (ether_ntohost): Likewise.
3368         * sunrpc/netname.c (netname2user): Likewise.
3369         * sunrpc/publickey.c (getpublickey): Likewise.
3370         (getsecretkey): Likewise.
3372 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
3374         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
3375         error in range calculation.
3377 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
3379         * string/test-strspn.c (do_test): Ensure zero termination.
3380         * string/test-strpbrk.c (do_test): Likewise.
3381         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
3382         * string/test-strncpy.c (stupid_strncpy): Likewise.
3383         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
3385 2002-10-08  Roland McGrath  <roland@redhat.com>
3387         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
3388         nonzero characters.
3390 2002-09-22  H.J. Lu  <hjl@gnu.org>
3392         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
3393         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
3394         only if __NR_mmap2 is defined.
3396         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
3397         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
3398         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
3399         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
3401 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
3403         * posix/bug-regex13.c (tests): Add new test.
3405         * string/test-strchr.c (stupid_strchr): New function.
3406         (do_random_tests): Make sure the string is zero terminated.
3407         * string/test-strpbrk.c (stupid_strpbrk): New function.
3408         (do_random_tests): Make sure the string is zero terminated.
3409         * string/test-strcmp.c (stupid_strcmp): New function.
3410         (do_random_tests): Make sure the strings are zero terminated.
3411         * string/test-strspn.c (stupid_strspn): New function.
3412         (simple_strspn): Rename rej argument to acc.
3413         (do_random_tests): Make sure the string is zero terminated.
3414         * string/test-strcspn.c (stupid_strcspn): New function.
3415         * string/test-strncpy.c (stupid_strncpy): New function.
3416         * string/test-stpncpy.c (stupid_stpncpy): New function.
3417         * string/test-strncmp.c (stupid_strncmp): New function.
3418         (do_random_tests): Make sure the strings are zero terminated.
3419         * string/test-string.h (impl_t): Change test into long.
3420         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
3422 2002-11-08  Roland McGrath  <roland@redhat.com>
3424         * sysdeps/ia64/elf/configure.in: Add TLS check.
3425         From Ian Wienand <ianw@cse.unsw.edu.au>.
3426         * sysdeps/ia64/elf/configure: Regenerated.
3428 2002-11-07  Roland McGrath  <roland@redhat.com>
3430         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
3431         place of _IO_new_do_write.
3432         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
3433         #undef before versioned_symbol use.
3435 2002-11-07  Richard Henderson  <rth@redhat.com>
3437         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
3438         * configure: Regenerated.
3439         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
3440         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
3441         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
3442         _dl_fini via gp-relative relocations.
3443         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
3445         * elf/tls-macros.h: Add alpha versions.
3446         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
3447         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
3448         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
3449         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
3450         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
3451         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
3452         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
3453         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
3454         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
3455         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
3456         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
3457         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
3458         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
3459         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
3460         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
3461         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
3462         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
3463         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
3465         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
3466         Kill argument registers across the inline syscall.
3468         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
3470         * linuxthreads/sysdeps/alpha/tls.h: New file.
3471         * sysdeps/alpha/dl-tls.h: New file.
3473 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
3475         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
3476         (gmon_initializer): New function.
3477         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
3478         __gmon_start__ here.  Call it from gmon_initializer() instead.
3480 2002-03-12  H.J. Lu  <hjl@gnu.org>
3482         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
3483         tst-array2, and tst-array3.
3484         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
3485         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
3486         ($(objpfx)tst-array1.out): New target.
3487         ($(objpfx)tst-array2): Likewise.
3488         ($(objpfx)tst-array2.out): Likewise.
3489         ($(objpfx)tst-array3.out): Likewise.
3490         * elf/tst-array1.c: New file.
3491         * elf/tst-array1.exp: Likewise.
3492         * elf/tst-array2.c: Likewise.
3493         * elf/tst-array2dep.c: Likewise.
3494         * elf/tst-array2.exp: Likewise.
3495         * elf/tst-array3.c: Likewise.
3497 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
3499         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
3500         Don't add L->l_addr to array entry values.
3502 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
3504         * string/test-string.h: New file.
3505         * string/test-strlen.c: New file.
3506         * string/test-string.h: New file.
3507         * string/test-strcmp.c: New file.
3508         * string/test-strchr.c: New file.
3509         * string/test-strrchr.c: New file.
3510         * string/test-strcpy.c: New file.
3511         * string/test-stpcpy.c: New file.
3512         * string/test-strncpy.c: New file.
3513         * string/test-stpncpy.c: New file.
3514         * string/test-strpbrk.c: New file.
3515         * string/test-strcspn.c: New file.
3516         * string/test-strspn.c: New file.
3517         * string/test-strcat.c: New file.
3518         * string/test-strncmp.c: New file.
3519         * string/test-memchr.c: New file.
3520         * string/test-memcmp.c: New file.
3521         * string/test-memset.c: New file.
3522         * string/test-memcpy.c: New file.
3523         * string/test-mempcpy.c: New file.
3524         * string/test-memmove.c: New file.
3525         * string/Makefile (strop-tests): New variable.
3526         (tests): Add strop-tests.
3527         (distribute): Add test-string.h.
3529 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
3531         * posix/regcomp.c: Use tabs instead of spaces.
3532         * posix/regexec.c: Likewise.
3533         * posix/regex_internal.h: Likewise.
3535         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
3537 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
3539         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
3540         here.
3541         (regcomp): Don't set can_be_null here.
3542         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
3543         (re_compile_internal): Clear can_be_null, set regs_allocated.
3545         * posix/regcomp.c (re_set_fastmap): New function.
3546         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
3547         COMPLEX_BRACKET check.
3548         * posix/regexec.c (re_search_internal): Optimize searching with
3549         fastmap.  Call re_string_reconstruct even if match_first is
3550         smaller than raw_mbs_idx.
3552 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
3554         * posix/regcomp (free_dfa_content): Use free_state.
3555         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
3556         pointers in case that realloc failed.
3557         (re_node_set_merge): Likewise.
3558         (register_state): Likewise.
3559         (create_newstate_common): Invoke memory release functions in case of
3560         error conditions.
3561         (create_ci_newstate): Likewise.
3562         (create_cd_newstate): Likewise.
3563         (free_state): New function.
3564         * posix/regexec.c (re_search_internal): Invoke memory release
3565         functions in case of error conditions.
3566         (sift_states_backward): Likewise.
3567         (merge_state_array): Likewise.
3568         (add_epsilon_src_nodes): Likewise.
3569         (sub_epsilon_src_nodes): Likewise.
3570         (search_subexp): Likewise.
3571         (sift_states_bkref): Likewise.
3572         (transit_state_sb): Likewise.
3573         (transit_state_mb): Likewise.
3574         (transit_state_bkref_loop): Likewise.
3575         (group_nodes_into_DFAstates): Likewise.
3576         (push_fail_stack): Don't edit pointers in case that realloc failed.
3577         (extend_buffers): Likewise.
3578         (match_ctx_add_entry): Likewise.
3580 2002-11-06  Roland McGrath  <roland@redhat.com>
3582         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
3583         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
3585         * configure.in: Add checks on as and ld for binutils 2.13 or later.
3586         * configure: Regenerated.
3588 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
3590         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
3591         If re_compile_internal failed free fastmap buffer.
3592         (free_dfa_content): Broken out of regfree function.  Frees all dfa
3593         related data.
3594         (regfree): Add free_dfa_content.
3595         (re_compile_internal): If any of the called functions fails free
3596         all dfa related memory.
3598 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3600         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
3601         warnings from the kernel headers.
3603 2002-11-05  Roland McGrath  <roland@redhat.com>
3605         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
3606         From Johannes Stezenbach <js@convergence.de>.
3608         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
3609         #errlist-compat magic comment to give 123 as size.
3610         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
3611         (libc: GLIBC_2.2): ... here.
3612         (libc: GLIBC_2.3): Likewise.
3614 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3616         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
3617         which happens at the beginning so that we can unload modules in
3618         __libc_freeres.
3620 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3622         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
3623         under [__USE_MISC || _ASM].
3625         * elf/elf.h: Remove the obsolete SH TLS relocations.
3627 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3629         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
3631 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3633         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
3634         __NR_pread64 and __NR_pwrite64.
3635         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
3636         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
3637         and __NR_pwrite64.
3638         Revert change to use INLINE_SYSCALL.
3639         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
3640         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
3641         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
3642         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
3643         INLINE_SYSCALL.
3644         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
3646         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
3647         Update clobber list and add a comment about the syscall ABI.
3649         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
3650         s_pwrite64, s_ftruncate, s_truncate): Re-add.
3652 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
3654         * iconv/gconv_dl.c (free_mem): Clear loaded.
3655         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
3656         cleanup if any.
3658 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3660         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
3662         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
3663         as old code without locking.  _IO_seekoff calls this function after
3664         locking the stream.
3665         * libio/ioseekpos.c: Likewise for _IO_seekpos.
3666         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
3667         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
3668         prototypes.
3669         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
3670         of _IO_seekoff_internal.
3671         (_IO_rewind): Likewise.
3672         * libio/ioftell.c: Likewise.
3673         * libio/ftello.c: Likewise.
3674         * libio/ftello64.c: Likewise.
3675         * libio/iofgetpos.c: Likewise.
3676         * libio/iofgetpos64.c: Likewise.
3677         * libio/oldiofgetpos.c: Likewise.
3678         * libio/oldiofgetpos64.c: Likewise.
3679         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
3680         _IO_seekpos_internal.
3681         * libio/iofsetpos64.c: Likewise.
3682         * libio/oldiofsetpos.c: Likewise.
3683         * libio/oldiofsetpos64.c: Likewise.
3685 2002-11-04  Roland McGrath  <roland@redhat.com>
3687         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
3688         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
3689         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
3690         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
3691         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
3692         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
3693         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
3694         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
3695         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
3696         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
3697         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
3698         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
3699         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
3700         Remove these, no longer used.
3702 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3704         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
3705         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
3706         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
3707         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
3708         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
3709         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
3710         syscall stubs.
3712         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
3713         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
3714         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
3715         and __NR_pread.
3716         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
3717         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
3718         and __NR_pwrite.
3719         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
3721 2002-11-03  Roland McGrath  <roland@redhat.com>
3723         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
3724         `_dl_tls_static_used'.
3725         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
3726         (__libc_setup_tls): Initialize it.  Let the initial value of
3727         _dl_tls_static_size indicate some surplus space in the computed value.
3728         * elf/dl-open.c (_dl_tls_static_size): New variable.
3729         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
3730         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
3731         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
3732         (CHECK_STATIC_TLS): Use it.
3733         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
3734         closed objects occupied a trailing contiguous chunk of static TLS area.
3736 2002-10-18  Bruno Haible  <bruno@clisp.org>
3738         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
3740 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
3742         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
3743         _wide_data->_IO_read_end if adjustment can be made in the current
3744         buffer.
3746         * sysdeps/unix/sysv/linux/fexecve.c: New file.
3748         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
3749         wide oriented streams are used.
3751         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
3752         service hasn't been used [PR libc/4744].
3754         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
3755         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
3757         * manual/examples/dir.c: Don't include <stddef.h>.
3758         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
3759         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
3761 2002-11-02  H.J. Lu  <hjl@gnu.org>
3763         * stdio-common/reg-printf.c: Include <stddef.h>.
3765 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
3767         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
3769         * po/ca.po: Update from translation team.
3770         * po/es.po: Likewise.
3772         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
3773         is defined write out memory map.
3774         * sysdeps/unix/sysv/linux/segfault.c: New file.
3776 2002-11-02  Roland McGrath  <roland@redhat.com>
3778         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
3779         pointers that can alias.
3780         Reported by Daniel Jacobowitz <drow@mvista.com>.
3782         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
3784 2002-11-02  Roland McGrath  <roland@redhat.com>
3786         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
3787         description to be clearer and to say that *RESULT is set to ENTRY.
3789 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3791         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
3792         dests_ch arrays together.  Alloca or malloc dest_states,
3793         dest_states_word and dest_states_nl arrays together.  Free memory on
3794         error exit.
3796 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
3798         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
3799         and current_saltbits.
3801 2002-11-02  Roland McGrath  <roland@redhat.com>
3803         * stdio-common/reg-printf.c: Include <stdlib.h>.
3805 2002-11-02  H.J. Lu  <hjl@gnu.org>
3807         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
3808         caller to EXTRA instead of execve.
3810 2002-11-01  Roland McGrath  <roland@redhat.com>
3812         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
3813         in place of [!(USE_TLS && HAVE___THREAD)].
3814         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
3816 2002-10-31  Roger Sayle  <roger@eyesopen.com>
3818         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
3819         New macros.
3820         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
3822         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
3823         without defining FP_ROUNDMODE.
3825 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
3827         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
3828         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
3829         declare_symbol.
3830         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
3831         (OLD_SIGLIST_SIZE): Define.
3832         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
3833         (OLD_SIGLIST_SIZE): Define.
3834         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
3836 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
3838         * sysdeps/ia64/strncpy.S: Fix recovery code.
3840 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3842         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
3843         New macros.
3844         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
3845         text_set_element.
3846         * elf/dl-libc.c (free_mem): Likewise.
3847         * iconv/gconv_conf.c (free_mem): Likewise.
3848         * iconv/gconv_db.c (free_mem): Likewise.
3849         * iconv/gconv_dl.c (free_mem): Likewise.
3850         * iconv/gconv_cache.c (free_mem): Likewise.
3851         * intl/finddomain.c (free_mem): Likewise.
3852         * intl/dcigettext.c (free_mem): Likewise.
3853         * locale/setlocale.c (free_mem): Likewise.
3854         * misc/fstab.c (fstab_free): Likewise.
3855         * nss/nsswitch.c (free_mem): Likewise.
3856         * posix/regcomp.c (free_mem): Likewise.
3857         * resolv/gai_misc.c (free_res): Likewise.
3858         * stdlib/fmtmsg.c (free_mem): Likewise.
3859         * sunrpc/clnt_perr.c (free_mem): Likewise.
3860         * sysdeps/generic/setenv.c (free_mem): Likewise.
3861         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
3862         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
3863         * time/tzset.c (free_mem): Likewise.
3864         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
3865         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
3866         * malloc/set-freeres.c (__libc_freeres): Likewise.
3868         * login/getutent.c: Include stdlib.h instead of stddef.h.
3869         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
3870         (__getutent): Allocate buffer the first time it is run.
3871         * login/getutid.c: Include stdlib.h instead of stddef.h.
3872         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
3873         (__getutid): Allocate buffer the first time it is run.
3874         * login/getutline.c: Include stdlib.h instead of stddef.h.
3875         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
3876         (__getutline): Allocate buffer the first time it is run.
3877         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
3878         (mtrace): Allocate malloc_trace_buffer.
3879         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
3880         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
3881         * string/strerror.c: Include libintl.h and errno.h.
3882         (buf): New variable.
3883         (strerror): Only allocate buffer if actually needed (unknown error).
3884         * time/tzfile.c (transitions): Add libc_freeres_ptr.
3885         (freeres): Remove.
3887 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
3889         * include/libc-symbols.h (libc_freeres_ptr): New macro.
3890         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
3891         symbol_set_define.
3892         (__libc_freeres): Free all pointers in that section.
3893         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
3894         commands when creating .lds script.
3895         (LDSEDCMD-c.so): New variable.
3896         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
3897         (rcmd_af): Use strdup to allocate ahostbuf.
3898         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
3899         (rexec_af): Use strdup to allocate ahostbuf.
3900         * stdio-common/reg-printf.c (printf_funcs): Remove.
3901         (__printf_arginfo_table): Change into printf_arginfo_function **.
3902         Add libc_freeres_ptr.
3903         (__register_printf_function): Allocate __printf_arginfo_table
3904         and __printf_function_table the first time it is called.
3905         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
3906         printf_arginfo_function **.
3907         (parse_one_spec): Add __builtin_expect.
3908         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
3909         (free_mem): Remove.
3910         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
3911         (free_mem): Remove.
3912         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
3913         (string_space, map): Add libc_freeres_ptr.
3914         (free_mem): Remove.
3915         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
3916         (free_mem): Remove.
3917         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
3918         (free_mem): Remove.
3919         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
3920         (buffer): Add libc_freeres_ptr.
3921         (free_mem): Remove for _LIBC.
3922         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
3923         (free_mem): Remove.
3924         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
3925         (free_mem): Remove.
3926         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
3927         (free_mem): Remove.
3928         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
3929         (free_mem): Remove.
3930         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
3931         (free_mem): Remove.
3932         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
3933         (free_mem): Remove.
3934         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
3935         libc_freeres_ptr.
3936         (free_mem): Remove.
3937         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
3938         libc_freeres_ptr.
3939         (free_mem): Remove.
3941 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3943         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
3944         instead of duplicating the whole function in libc.
3946 2002-10-31  Roland McGrath  <roland@redhat.com>
3948         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
3949         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
3951 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3953         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
3954         32bit-predefine when creating .new32 list and -U for each
3955         32bit-predefine when creating .new64 list.
3956         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
3958 2002-10-29  Andreas Schwab  <schwab@suse.de>
3960         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
3961         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
3963 2002-10-25  Roland McGrath  <roland@redhat.com>
3965         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
3966         * sysdeps/unix/sysv/linux/configure: Regenerated.
3968         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
3969         _dl_starting_up decl.
3971 2002-10-20  H.J. Lu  <hjl@gnu.org>
3973         * sysdeps/unix/sysv/linux/configure.in: Don't check
3974         /lib/modules/`uname -r`/build/include for kernel headers if
3975         cross compiling.
3976         * sysdeps/unix/sysv/linux/configure: Regenerated.
3978 2002-10-25  Roland McGrath  <roland@redhat.com>
3980         * math/math.h (M_LOG2El): Correct the value.
3981         From Stephen L Moshier <steve@moshier.net>.
3983         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
3984         conditional from __libc_multiple_libcs access.  Remove kludge for weak
3985         symbol access with old compilers we no longer support.
3986         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
3987         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
3989 2002-10-25  Roland McGrath  <roland@redhat.com>
3991         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
3992         implement SV_RESETHAND by translating it to SA_RESETHAND.
3994 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
3996         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
3997         type on ELF64 platforms.
3999 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
4001         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
4003         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
4005 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
4007         * elf/dl-misc.c: Include <sysdep.h>.
4008         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
4010         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
4011         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
4012         (INLINE_SYSCALL): Use that.
4013         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
4014         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
4015         (INLINE_SYSCALL): Use that.
4016         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
4017         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
4018         (INLINE_SYSCALL): Use that.
4019         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
4020         dl-sysdep.h.
4021         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
4022         (__INTERNAL_SYSCALL_STRING): Define.
4023         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
4024         dl-sysdep.h.
4025         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
4026         (__INTERNAL_SYSCALL_STRING): Define.
4027         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
4028         __SYSCALL_STRING to inline_syscall*.
4029         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
4030         New macros.
4031         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
4032         inline_syscall4, inline_syscall5, inline_syscall6): Add string
4033         argument.
4035 2002-10-24  Roland McGrath  <roland@redhat.com>
4037         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
4038         * sysdeps/unix/sysv/linux/init-first.c: Not here.
4039         * sysdeps/powerpc/elf/libc-start.c: Or here.
4040         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
4041         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
4042         * sysdeps/unix/sysv/aix/init-first.c: Or here.
4043         * sysdeps/generic/libc-start.c: Or here.
4044         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
4045         access with [! SHARED].
4046         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
4048         * libio/bug-wfflush.c: New file.
4049         * libio/Makefile (tests): Add bug-wfflush.
4051 2002-10-23  Roland McGrath  <roland@redhat.com>
4053         * stdio-common/tst-fphex.c: New file.
4054         * stdio-common/Makefile (tests): Add tst-fphex.
4055         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
4056         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
4057         chars always before the value digits.
4058         Reported by James Antill <james.antill@redhat.com>.
4060 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
4062         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
4063         (free_mem): New function.
4064         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
4065         if not cross compiling.
4066         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
4067         (bug-regex14-ENV): Set.
4068         (bug-regex14-mem): New target.
4069         * posix/bug-regex14.c: New file.
4071 2002-10-23  Roland McGrath  <roland@redhat.com>
4073         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
4074         target, so we don't touch it when the link fails.
4076         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
4077         Check for the result overflowing off_t and fail with EOVERFLOW.
4078         * libio/ioftell.c (_IO_ftell): Likewise.
4079         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
4081         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
4082         use a temporary timeval on the stack for gettimeofday and copy it.
4083         * login/logout.c (logout): Likewise.
4084         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
4086         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
4087         Use __SWORD_TYPE instead of int for member types.
4088         (struct statfs64): Likewise.
4089         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
4090         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
4091         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
4092         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
4093         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
4095         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
4096         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
4097         (ST_NODIRATIME): Restore fixed value of 2048.
4098         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
4099         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
4101         Rearranged <bits/types.h> definitions to reduce duplication.
4102         * sysdeps/generic/bits/types.h: Rewritten, using macros from
4103         <bits/wordsize.h> and new header <bits/typesizes.h>.
4104         * posix/Makefile (headers): Add bits/typesizes.h here.
4105         * sysdeps/generic/bits/typesizes.h: New file.
4106         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
4107         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
4108         * sysdeps/mach/hurd/bits/typesizes.h: New file.
4109         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
4110         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
4111         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
4112         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
4113         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
4114         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
4115         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
4116         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
4117         <bits/pthreadtypes.h> here, not in <bits/types.h>.
4118         * signal/signal.h: Likewise.
4120         * streams/stropts.h: Include <bits/xtitypes.h>.
4121         * streams/Makefile (headers): Add bits/xtitypes.h here.
4122         * sysdeps/generic/bits/xtitypes.h: New file.
4123         * sysdeps/s390/bits/xtitypes.h: New file.
4124         * sysdeps/ia64/bits/xtitypes.h: New file.
4125         * sysdeps/x86_64/bits/xtitypes.h: New file.
4127         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
4128         * sysdeps/generic/bits/ipctypes.h: New file.
4129         * sysdeps/mips/bits/ipctypes.h: New file.
4130         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
4131         * sysdeps/gnu/bits/msq.h: Likewise.
4132         * sysvipc/sys/ipc.h: Likewise.
4134 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
4136         * elf/dl-load.c (struct filebuf): For buf element to have the
4137         alignment of ElfXX_Ehdr since this is what will be stored in it.
4139 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
4141         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
4142         into pointer to locrec_offset.
4143         (add_locale_to_archive): Adjust callers.  Free normalized_name right
4144         before returning, not immediately after add_locale, pass it to
4145         add_alias if not NULL instead of name.  Rename second normalized_name
4146         occurence to nnormalized_codeset_name.
4148         * locale/programs/locarchive.c (enlarge_archive): Make sure
4149         string_size is always a multiple of 4.
4150         Reported by Andreas Schwab <schwab@suse.de>.
4152 2002-10-21  Andreas Schwab  <schwab@suse.de>
4154         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
4155         caller to EXTRA instead of execve, since the latter has a
4156         higher-priority implementation in linuxthreads.
4158 2002-10-21  Roland McGrath  <roland@redhat.com>
4160         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
4161         slotinfo list's len member to the proper size, not just 1.
4162         Initialize static_map.l_tls_initimage.
4164         * elf/dl-open.c (dl_open_worker): Fix loop searching for
4165         dtv_slotinfo_list element containing new modules' l_tls_modid.
4167         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
4168         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
4169         * elf/Makefile (tests): Add tst-tls9.
4170         (tests-static): Add tst-tls9-static.
4171         (tst-tls9-static-ENV): New variable.
4172         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
4174         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
4175         modids used by partially loaded modules being closed can't be known.
4177 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
4179         * posix/Makefile: Add a test case for the bug reported by Aharon
4180         Robbins <arnold@skeeve.com>.
4181         * posix/bug-regex13.c: New file.
4182         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
4184 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
4186         * csu/gmon-start.c: Pretty printing.
4188 2002-10-19  Art Haas  <ahaas@neosoft.com>
4190         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
4191         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
4192         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
4193         * configure: Regenerated.
4195 2002-10-19  Roland McGrath  <roland@redhat.com>
4197         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
4198         and then set $subdirs directly, because the new Autoconf breaks
4199         compatibility in every way imaginable and insists on whining
4200         about usage that worked since the dawn of time.
4201         * configure: Regenerated.
4203         * configure: Regenerated (using Autoconf 2.54).
4204         * sysdeps/alpha/elf/configure: Likewise.
4205         * sysdeps/generic/configure: Likewise.
4206         * sysdeps/i386/elf/configure: Likewise.
4207         * sysdeps/ia64/elf/configure: Likewise.
4208         * sysdeps/mach/hurd/configure: Likewise.
4209         * sysdeps/mach/configure: Likewise.
4210         * sysdeps/unix/configure: Likewise.
4211         * sysdeps/unix/common/configure: Likewise.
4212         * sysdeps/unix/sysv/aix/configure: Likewise.
4213         * sysdeps/unix/sysv/linux/configure: Likewise.
4214         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
4215         * sysdeps/x86_64/elf/configure: Likewise.
4217         * config.make.in: Nix completely-soft nonsense.
4218         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
4219         of machine directories instead of fpu subdirectory.
4220         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
4221         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
4222         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
4223         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
4224         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
4225         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
4226         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
4227         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
4228         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
4229         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
4230         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
4231         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
4232         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
4233         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
4234         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
4235         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
4236         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
4237         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
4238         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
4239         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
4240         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
4241         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
4242         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
4243         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
4244         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
4245         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
4246         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
4247         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
4248         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
4249         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
4250         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
4251         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
4252         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
4253         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
4254         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
4255         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
4256         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
4257         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
4258         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
4259         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
4261 2002-10-19  Bruno Haible  <bruno@clisp.org>
4263         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
4265 2002-10-18  Roland McGrath  <roland@redhat.com>
4267         * io/Makefile (routines): Add lchmod.
4268         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
4269         * sysdeps/generic/lchmod.c: New file.
4270         * sysdeps/mach/hurd/lchmod.c: New file.
4271         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
4273 2002-10-18  Art Haas  <ahaas@neosoft.com>
4275         * configure.in: Remove remaining AC_FD_CC macros, and replace
4276         AC_FD_MSG with AS_MESSAGE_FD.
4278 2002-10-18  Roland McGrath  <roland@redhat.com>
4280         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
4281         typos: VALUE -> FINALADDR.
4283         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
4284         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
4285         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
4286         (inline_syscall6): Move these macros ...
4287         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
4289         * configure.in (libc_link_dests, libc_link_sources): Remove these
4290         variables and the AC_LINK_FILES call.
4292         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
4293         change to put new symbols here instead of in GLIBC_2.2.
4294         * sysdeps/powerpc/Subdirs: Move this file ...
4295         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
4297 2002-10-07  Roland McGrath  <roland@redhat.com>
4299         * sysdeps/generic/bits/time.h: Replaced with contents of the
4300         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
4301         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
4302         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
4303         macros is ok even for architectures that don't now implement them.
4304         * sysdeps/mach/hurd/bits/time.h: File removed.
4305         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
4306         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
4307         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
4308         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
4309         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
4311 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
4313         * configure.in: Replace obsolete AC_OUTPUT syntax with
4314         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
4316         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
4317         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
4319         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
4320         * sysdeps/alpha/elf/configure.in: Likewise.
4321         * sysdeps/i386/elf/configure.in: Likewise.
4322         * sysdeps/mach/hurd/configure.in: Likewise.
4323         * sysdeps/x86_64/elf/configure.in: Likewise.
4325         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
4327         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
4328         * sysdeps/generic/configure.in: Likewise.
4329         * sysdeps/i386/elf/configure.in: Likewise.
4330         * sysdeps/ia64/elf/configure.in: Likewise.
4331         * sysdeps/mach/configure.in: Likewise.
4332         * sysdeps/mach/hurd/configure.in: Likewise.
4333         * sysdeps/unix/configure.in: Likewise.
4334         * sysdeps/unix/common/configure.in: Likewise.
4335         * sysdeps/unix/sysv/aix/configure.in: Likewise.
4336         * sysdeps/unix/sysv/linux/configure.in: Likewise.
4337         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
4338         * sysdeps/x86_64/elf/configure.in: Likewise.
4340         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
4341         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
4342         that it's obvious when extra autoconf machinery is being dragged in.
4344 2002-10-18  Roland McGrath  <roland@redhat.com>
4346         * configure.in: Remove bogus echo included in
4347         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
4348         * configure: Regenerated.
4350 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
4352         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
4353         (statfs_filesize_max): New function.
4354         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
4355         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
4356         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
4357         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
4358         statfs_filesize_max.
4359         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
4360         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
4361         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
4363 2002-10-17  Roland McGrath  <roland@redhat.com>
4365         * configure.in (MIG): Just AC_SUBST it here.
4366         * configure: Regenerated.
4367         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
4368         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
4369         * sysdeps/mach/configure: Regenerated.
4371         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
4372         and AC_PROVIDE([_AS_CR_PREPARE]).
4374         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
4375         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
4377         * elf/dl-support.c: Move _dl_tls_* variables to ...
4378         * sysdeps/generic/libc-tls.c: ... here.
4380         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
4381         allow IDX to be one past the current last slotinfo entry.
4382         (_dl_close): Pass IMAP->l_init_called for that parameter.
4384 2002-10-07  Andreas Schwab  <schwab@suse.de>
4386         * aclocal.m4: Fix for autoconf 2.53.
4387         * configure.in: Likewise.  Require autoconf 2.53.
4389 2002-10-08  Richard Henderson  <rth@redhat.com>
4391         * soft-fp/op-4.h: Handle carry correctly in
4392         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
4393         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
4394         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
4396 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
4398         * configure.in: Compute completely-soft.
4399         * config.make.in: Make completely-soft available to sub-makes.
4400         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
4401         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
4402         fe_nomask to libm-support.
4403         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
4404         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
4405         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
4406         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
4407         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
4408         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
4409         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
4410         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
4411         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
4412         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
4413         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
4414         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
4415         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
4416         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
4417         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
4418         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
4419         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
4420         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
4421         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
4422         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
4423         __sim_round_mode.
4424         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
4425         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
4426         FP_HANDLE_EXCEPTIONS.
4427         Define FP_ROUNDMODE.
4428         Redefine FP_* macros to correspond to the FE_* bit positions.
4429         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
4430         Define externs for __sim_exceptions, __sim_disabled_exceptions,
4431         __sim_round_mode, __simulate_exceptions.
4432         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
4433         * sysdeps/powerpc/bits/fenv.h: ...to here.
4435 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
4437         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
4438         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
4439         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
4440         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
4441         __builtin_expect.
4443 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
4445         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
4446         __libc_res_nsend): New prototypes.
4447         * resolv/res_query.c (QUERYSIZE): Define.
4448         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
4449         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
4450         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
4451         res_nsend, pass answerp.
4452         (res_nquery): Changed into wrapper around __libc_res_nquery.
4453         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
4454         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
4455         instead of the non-__libc_ variants, pass them answerp.
4456         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
4457         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
4458         Added answerp argument.  Call __libc_res_nquery instead of
4459         res_nquery, pass answerp.
4460         (res_nquerydomain): Changed into wrapper around
4461         __libc_res_nquerydomain.
4462         * resolv/res_send.c: Include sys/ioctl.h.
4463         (MAXPACKET): Define.
4464         (send_vc): Change arguments.  Reallocate answer buffer if it is
4465         too small.
4466         (send_dg): Likewise.
4467         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
4468         Reallocate answer buffer if it is too small and hooks are in use.
4469         Adjust calls to send_vc and send_dg.
4470         (res_nsend): Changed into wrapper around __libc_res_nsend.
4471         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
4472         just 1K answer buffer on the stack, use __libc_res_nsearch instead
4473         of res_nsearch.
4474         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
4475         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
4476         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
4477         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
4478         (gethostbyaddr): Similarly with __libc_res_nquery.
4479         * resolv/Versions (libresolv): Export __libc_res_nquery and
4480         __libc_res_nsearch at GLIBC_PRIVATE.
4482 2002-10-17  Roland McGrath  <roland@redhat.com>
4484         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
4485         * configure: Regenerated.
4487         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
4488         before performing the reloc, not after.
4489         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
4491 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
4493         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
4494         * locale/programs/linereader.c (lr_open): Likewise.
4495         * locale/programs/charmap-dir.c (charmap_open): Likewise.
4496         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
4498 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
4500         * posix/bug-regex11.c: Add a test case for the bug reported by
4501         Paolo Bonzini <bonzini@gnu.org>.
4502         * posix/regexec.c (sift_states_bkref): Use correct destination of
4503         the back reference.
4505 2002-10-17  Roland McGrath  <roland@redhat.com>
4507         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
4508         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
4509         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
4510         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
4511         Call it after performing TPOFF relocs.
4512         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
4513         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
4514         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
4516         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
4517         when closing a partially-initialized object.
4519         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
4520         instead of _dl_fatal_printf when we see PT_TLS.
4522         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
4523         instead of $(libof-$<).
4525 2002-10-16  Roland McGrath  <roland@redhat.com>
4527         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
4528         instead of += to append, to be sure $(lib) gets expanded at defn time.
4529         (libof-$(cpp-src)): New variable, define this instead.
4530         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
4531         (lib): Don't use override.
4532         (CPPFLAGS-$(lib)): New variable, put -D's here.
4533         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
4534         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
4535         LIB found by $(libof-*) for basename, target, or source.
4536         * Makerules (CPPFLAGS-nonlib): New variable.
4537         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
4538         * locale/Makefile (lib): Likewise.
4539         * sunrpc/Makefile (lib): Likewise.
4541         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
4542         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
4543         * sysdeps/unix/sysv/linux/pathconf.h: New file.
4544         (statfs_link_max): New function, guts from fpathconf.c.
4545         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
4546         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
4547         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
4548         to use the linux/pathconf.c code by #include rather than duplication.
4549         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
4551 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
4553         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
4554         Use __libc_errno only for libc itself.
4556 2002-10-16  Andreas Jaeger  <aj@suse.de>
4558         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
4560 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
4562         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
4563         Use __libc_errno only for libc itself.
4565 2002-10-15  Roland McGrath  <roland@redhat.com>
4566             Jakub Jelinek  <jakub@redhat.com>
4568         * sysdeps/unix/sysv/linux/Makefile
4569         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
4570         sparc/Makefile to produce a bi-arch file as needed.
4571         That's now parameterized by the variable $(64bit-predefine).
4572         Use LC_ALL=C for `comm' commands in that rule.
4573         No longer conditional on [$(no_syscall_list_h)].
4574         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
4575         (64bit-predefine): New variable.
4576         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
4577         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
4578         * sysdeps/unix/sysv/linux/powerpc/Makefile
4579         (64bit-predefine): New variable.
4581 2002-10-15  Roland McGrath  <roland@redhat.com>
4583         * sysdeps/unix/sysv/linux/Makefile
4584         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
4586         * login/utmp-private.h: Declare __libc_utmp_lock.
4587         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
4588         and call __libc_utmp_jump_table functions directly, instead of using
4589         __setutent et al.
4591         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
4592         * sysdeps/unix/sysv/linux/configure: Regenerated.
4594         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
4595         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
4596         Use int32_t for ll_time.
4597         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
4598         Use int32_t instead of long int for ut_session.
4599         Use an anonymous struct with 32-bit fields for ut_tv.
4600         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
4601         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
4602         here as in utmp.h for `struct utmp'.
4603         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
4604         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
4605         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
4606         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
4607         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
4608         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
4610         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
4611         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
4612         All the following files were identical or equivalent to it.
4613         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
4614         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
4615         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
4616         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
4617         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
4618         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
4619         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
4620         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
4621         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
4622         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
4624         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
4625         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
4626         Other than the previously incorrect sign of msg_iovlen, this is a
4627         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
4628         match their layouts as well, so the following are now identical to it.
4629         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
4630         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
4631         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
4632         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
4633         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
4635 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
4637         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
4638         Define for 2.4+ kernels.
4640         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
4641         are known to have the vfork syscall.  Don't confuse the CPUs
4642         branch prediction unit by jumping to the return address.
4644         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
4645         support for reiserfs and xfs.
4647         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
4648         XFS link count.
4649         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
4650         and XFS_LINK_MAX.
4651         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
4653 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
4655         * include/libc-symbols.h (attribute_tls_model_ie): Define.
4656         * include/errno.h (errno): Define to __libc_errno in libc.so.
4657         Add attribute_tls_model_ie.
4658         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
4659         Add attribute_tls_model_ie.
4660         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
4661         attribute_tls_model_ie.
4662         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
4663         (h_errno): Define.
4664         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
4665         (_res): Define.
4666         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
4667         attribute_tls_model_ie.
4668         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
4669         __thread.
4670         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
4671         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
4672         __libc_errno in USE___THREAD case.
4673         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
4674         Likewise.
4675         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
4676         __attribute__((tls_model (""))).
4677         * configure: Rebuilt.
4678         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
4680 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
4682         * timezone/asia: Update from tzdata2002d.
4683         * timezone/australasia: Likewise.
4684         * timezone/iso3166.tab: Likewise.
4685         * timezone/southamerica: Likewise.
4686         * timezone/zone-tab: Likewise.
4688 2002-10-15  Roland McGrath  <roland@redhat.com>
4690         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
4691         Adjust TCB pointer before calling free, so we get the whole block.
4693 2002-10-14  Roland McGrath  <roland@redhat.com>
4695         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
4696         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
4697         extern using attribute_hidden instead of static, avoids warning.
4699 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
4701         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
4702         * sysdeps/unix/sysv/linux/configure: Rebuilt.
4704 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
4706         * po/sv.po: Update from translation team.
4708 2002-10-12  H.J. Lu  <hjl@gnu.org>
4710         * sunrpc/thrsvc.c (PROCQUIT): New.
4711         (struct rpc_arg): New.
4712         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
4713         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
4714         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
4715         (main): Modified for struct rpc_arg *.
4717 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
4719         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
4721 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
4723         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
4724         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
4725         in ld.so even if __thread is supported.
4727 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
4729         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
4730         Add hack to prevent the compiler from clobbering the signal context.
4731         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
4732         Likewise.
4733         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
4734         Likewise.
4736 2002-10-14  Andreas Jaeger  <aj@suse.de>
4738         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
4739         Guido Guenther <agx@sigxcpu.org>.
4741 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
4743         * po/sk.po: Update from translation team.
4745 2002-09-26  Roland McGrath  <roland@redhat.com>
4747         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
4748         dynamic string tag.
4749         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
4750         DL_DST_LIB based on $(slibdir).
4752 2002-10-13  Roland McGrath  <roland@frob.com>
4754         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
4756         * sysdeps/mach/hurd/getresuid.c: New file.
4757         * sysdeps/mach/hurd/getresgid.c: New file.
4758         * sysdeps/mach/hurd/setresuid.c: New file.
4759         * sysdeps/mach/hurd/setresgid.c: New file.
4761         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
4762         setresgid): Declare them.
4763         * NEWS: Mention it.
4764         * include/unistd.h
4765         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
4766         add libc_hidden_proto.
4767         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
4768         getresuid, getresgid, setresuid, setresgid here.
4769         * Versions.def (libc): Define GLIBC_2.3.2 set.
4770         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
4771         Add libc_hidden_def.
4772         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
4773         * sysdeps/generic/setresgid.c: New file.
4774         * sysdeps/generic/setresuid.c: New file.
4775         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
4776         (sysdep_routines): Don't add getresuid and getresgid here.
4777         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
4778         (sysdep_routines): Don't add setresuid and setresgid here.
4779         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
4780         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
4781         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
4782         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
4783         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
4784         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
4785         * posix/Makefile (routines): Add them all here instead.
4786         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
4787         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
4788         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
4789         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
4790         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
4791         [! __NR_setresuid]: Include generic file.
4792         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
4793         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
4794         [! __NR_setresuid]: Include generic file.
4795         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
4796         Caller is - now, not EXTRA.
4797         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
4798         (setresuid, setresgid, getresuid, getresgid): Likewise.
4799         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
4800         Add these calls here.
4801         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
4802         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
4803         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
4804         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
4805         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
4806         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
4807         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
4808         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
4809         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
4811         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
4812         (sysdep_routines): Add setfsuid and setfsgid here.
4813         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
4814         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
4815         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
4816         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
4817         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
4818         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
4819         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
4820         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
4822         * hurd/errno.c: Renamed to ...
4823         * hurd/errno-loc.c: ... this.
4824         * hurd/Makefile (routines): errno -> errno-loc
4826 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
4828         * po/de.po: Update from translation team.
4830         * MakeTAGS: Add -E flag to xgettext runs.
4832 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
4834         * po/fr.po: Update from translation team.
4836         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
4837         Optimize a bit for use in glibc.
4839 2002-10-12  Roland McGrath  <roland@redhat.com>
4841         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
4842         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
4844 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
4846         * po/sv.po: Update from translation team.
4848 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
4850         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
4851         OP_CONTEXT_NODE.
4852         (regfree): Likewise.
4853         (create_initial_state): Likewise.
4854         (analyze): Remove the substitutions which became useless.
4855         (calc_first): Likewise.
4856         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
4857         epsilon destination.
4858         (duplicate_node_closure): New function.
4859         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
4860         (calc_inveclosure): Likewise.
4861         (calc_eclosure): Likewise.
4862         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
4863         direct invocation of duplicate_node.
4864         (parse): Don't use comma operator in the return to avoid compiler
4865         warning.
4866         (parse_reg_exp): Likewise.
4867         (parse_branch): Likewise.
4868         (parse_expression): Likewise.
4869         (parse_sub_exp): Likewise.
4870         (parse_dup_op): Likewise.
4871         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
4872         which became useless.
4873         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
4874         (create_cd_newstate): Likewise.
4875         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
4876         (re_token_t): Likewise.
4877         (re_dfa_t): Likewise.
4878         (re_node_set_remove): New macro.
4879         * posix/regexec.c (check_matching): Remove the handling
4880         OP_CONTEXT_NODE.
4881         (check_halt_node_context): Likewise.
4882         (proceed_next_node): Likewise.
4883         (pop_fail_stack): Fix the memory leak.
4884         (set_regs): Likewise.
4885         (free_fail_stack_return): New function.
4886         (sift_states_backward): Fix the memory leak.  Remove the handling
4887         OP_CONTEXT_NODE.
4888         (update_cur_sifted_state): Append some if clause to avoid redundant
4889         call.
4890         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
4891         back reference.
4892         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
4893         (check_subexp_limits): Likewise.
4894         (search_subexp): Likewise.
4895         (sift_states_bkref): Likewise.
4896         (transit_state_mb): Likewise.
4897         (transit_state_bkref_loop): Likewise.
4898         (transit_state_bkref_loop): Likewise.
4899         (group_nodes_into_DFAstates): Likewise.
4900         (check_node_accept): Likewise.
4901         (sift_ctx_init): Add initializing.
4903 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
4905         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
4906         __builtin_expect.
4908 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
4910         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
4911         duplicated variable c.
4913         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
4914         if possible.
4916         * sysdeps/unix/sysv/linux/i386/sysdep.h
4917         (INTERNAL_SYSCALL_ERROR_P): New define.
4918         (INTERNAL_SYSCALL_ERRNO): Likewise.
4920         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
4921         Add hack to prevent the compiler from clobbering the signal context.
4923 2002-10-11  Roland McGrath  <roland@redhat.com>
4925         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
4926         Fix typos.
4928         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
4929         * sysdeps/sh/dl-lookupcfg.h: File removed.
4930         * sysdeps/i386/dl-lookupcfg.h: File removed.
4932         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
4933         missing labels and ; from last change.
4935         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
4936         number literals, so they are doubles instead of ints.
4938 2002-10-09  Roland McGrath  <roland@redhat.com>
4940         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
4941         changed from [USE_TLS && HAVE___THREAD].
4943         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
4944         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
4945         * sysdeps/x86_64/dl-machine.h
4946         (elf_machine_type_class, elf_machine_rela): Likewise.
4947         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
4948         Likewise.
4950         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
4951         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
4952         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
4954         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
4955         instead of ___tls_get_addr.
4956         (___tls_get_addr_internal): Add attribute_hidden to decl.
4958         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
4959         _dl_error_catch_tsd.
4960         * elf/rtld.c (startup_error_tsd): New function.
4961         (dl_main): Point _dl_error_catch_tsd at that.
4962         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
4963         use new function pointer instead.
4964         * elf/dl-tsd.c: New file.
4965         * elf/Makefile (routines): Add it.
4967 2002-10-07  Roland McGrath  <roland@redhat.com>
4969         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
4970         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
4971         take _dl_load_lock around calling __writev.
4973         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
4974         (INLINE_SYSCALL): Use that.
4976         * sysdeps/generic/dl-sysdep.h: New file.
4977         * sysdeps/mach/hurd/dl-sysdep.h: New file.
4978         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
4979         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
4980         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
4981         access it directly.
4982         * elf/dl-minimal.c (__errno_location): Removed.
4983         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
4984         Use GOTOFF access for errno.
4985         * sysdeps/unix/sysv/linux/i386/sysdep.h
4986         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
4988         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
4989         Use PC-relative access for errno.
4990         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
4991         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
4993         * include/tls.h: New file.
4994         (USE___THREAD): New macro.
4995         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
4996         libc or libpthread.
4997         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
4998         changed from [USE_TLS && HAVE___THREAD].
4999         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
5000         * sysdeps/unix/i386/sysdep.S: Likewise.
5001         * sysdeps/unix/x86_64/sysdep.S: Likewise.
5002         * include/errno.h: Likewise.
5003         * include/netdb.h: Likewise.
5004         * include/resolv.h: Likewise.
5006         * sysdeps/generic/errno.c: New file.
5007         * csu/Makefile (aux): New variable, list errno.
5008         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
5009         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
5010         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
5011         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
5012         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
5013         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
5014         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
5015         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
5016         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
5017         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
5018         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
5019         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
5020         * sysdeps/unix/alpha/sysdep.S: Likewise.
5021         * sysdeps/generic/start.c: Likewise.
5022         * sysdeps/unix/start.c: Likewise.
5023         * sysdeps/unix/arm/start.c: Likewise.
5024         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
5025         * sysdeps/unix/sparc/start.c: Likewise.
5026         * sysdeps/unix/sysv/irix4/start.c: Likewise.
5027         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
5029         * manual/search.texi (Tree Search Function, Hash Search Function):
5030         Mention search.h clearly.
5032 2002-10-05  Roland McGrath  <roland@redhat.com>
5034         * elf/dl-fxstat64.c: File removed.
5035         * elf/dl-xstat64.c: File removed.
5036         * elf/Makefile (rtld-routines): Remove them.
5037         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
5038         Instead, use strong_alias instead of versioned_symbol in the
5039         !SHLIB_COMPAT case.
5040         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
5041         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
5043         * include/shlib-compat.h
5044         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
5045         [! NOT_IN_libc] (IS_IN_libc): Define it.
5046         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
5047         * elf/Makefile (CPPFLAGS-.os): Likewise.
5049         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
5050         Return the status instead of calling exit.
5052         * Makeconfig (CFLAGS): Prepend -std=gnu99.
5053         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
5054         Remove superfluous rm command, whose @ plus make bugs hid
5055         all these commands from the make output.
5057         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
5058         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
5059         Use that file's contents instead of literal echo's for the prologue.
5060         * include/features.h: Include <gnu/stubs.h> unconditionally.
5061         * include/gnu/stubs.h: New file.
5063 2002-09-30  Roland McGrath  <roland@redhat.com>
5065         * elf/rtld-Rules: New file.
5066         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
5067         $(objpfx)rtld-libc.a): New targets.
5068         (generated): Add them.
5069         (reloc-link): Remove -o $@ from the variable.
5070         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
5071         (distribute): Add rtld-Rules.
5072         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
5073         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
5074         (common-mostlyclean, common-clean): Clean up rtld-* files.
5075         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
5077 2002-10-11  Roland McGrath  <roland@redhat.com>
5079         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
5080         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
5082         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
5083         proper set of no-op insn prefixes.
5085         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
5087 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
5089         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
5090         __pthread_kill_other_threads_np.
5092         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
5094 2002-10-08  Roland McGrath  <roland@redhat.com>
5096         * locale/newlocale.c (__newlocale): If setting all categories to "C",
5097         just return &_nl_C_locobj instead of copying it.
5098         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
5099         * locale/duplocale.c (__duplocale): Likewise.
5101 2002-10-07  Roland McGrath  <roland@frob.com>
5103         * config.h.in (HAVE_I386_SET_GDT): New #undef.
5104         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
5105         * sysdeps/mach/configure: Regenerated.
5107 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
5109         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
5110         Add all necessary register outputs for syscall-clobbered registers.
5112 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
5114         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
5115         Itanium 2 (and Itanium).
5116         Fix unwind directives and make it fit in 80 columns.
5117         * sysdeps/ia64/memset.S: Likewise.
5118         * sysdeps/ia64/memcpy.S: Likewise.
5119         Move jump table to .rodata section.
5121 2002-10-03  Roland McGrath  <roland@frob.com>
5123         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
5124         clobbers to asm.
5126 2002-10-10  Andreas Jaeger  <aj@suse.de>
5128         * sysdeps/x86_64/_mcount.S: Restore correct registers.
5130 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
5132         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
5134 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
5136         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
5137         _dl_allocate_tls_init.  Add rtld_hidden_proto.
5138         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
5139         rtld_hidden_def.
5140         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
5142         * version.h (VERSION): Bump to 2.3.1.
5144         * Make-dist: Add back one of the tar invocations removed before.
5146         * stdlib/Makefile (distribute): Add allocalim.h.
5148         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
5149         (__libc_tsd_address): Use correct variable name.
5150         Patch by Stefan Jones <stefan.jones@multigig.com>.
5152         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
5153         Reported by edwardsg@sgi.com [PR libc/4678].
5155         * Versions.def (libc): Add GLIBC_2.3.1.
5156         (libpthread): Add GLIBC_2.3.1.
5158         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
5159         and __sigtimedwait.
5160         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
5161         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
5162         libc_hidden_def.
5163         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
5164         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
5166         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
5167         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
5168         and make old name an alias.
5169         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
5170         and make old name an alias.
5171         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
5172         __libc_msgsnd.
5174         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
5175         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
5176         __libc_writev.
5177         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
5178         old name an alias.
5179         * sysdeps/posix/readv.c: Likewise
5180         * sysdeps/unix/sysv/aix/readv.c: Likewise.
5181         * sysdeps/unix/sysv/linux/readv.c: Likewise.
5182         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
5183         old name an alias.
5184         * sysdeps/posix/writev.c: Likewise
5185         * sysdeps/unix/sysv/aix/writev.c: Likewise.
5186         * sysdeps/unix/sysv/linux/writev.c: Likewise.
5188         * include/sys/wait.h: Declare __waitid.
5189         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
5190         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
5191         name an alias.
5192         * sysdeps/posix/waitid.c: Likewise.
5193         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
5195         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
5197 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
5199         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
5200         prototypes.
5201         (__MAX_ALLOCA_CUTOFF): Define.
5202         Include allocalim.h.
5203         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
5204         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
5205         host_buffer depending on __libc_use_alloca.
5206         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
5207         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
5208         net_buffer depending on __libc_use_alloca.
5209         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
5210         buf depending on __libc_use_alloca.
5211         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
5212         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
5213         instead of hardcoded constants.
5214         Pass proper size argument to alloca and compute end for wide char
5215         version.
5216         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
5217         instead of hardcoded constants.
5218         * string/strcoll.c (strcoll): Likewise.
5219         * string/strxfrm.c (strxfrm): Likewise.
5220         * sysdeps/posix/readv.c (__readv): Likewise.
5221         * sysdeps/posix/writev.c (__writev): Likewise.
5222         * sysdeps/generic/allocalim.h: New file.
5224 2002-10-08  Roland McGrath  <roland@redhat.com>
5226         * configure.in (aux_missing warning): Change "too old" to
5227         "incompatible versions", since for autoconf it's "too new" right now.
5228         * configure: Regenerated.
5230         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
5231         one found doesn't work on our configure.in.
5232         * configure: Regenerated.
5233         * config.make.in (AUTOCONF): New substituted variable.
5234         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
5235         (autoconf-it): ... here, use that instead of defining conditionally.
5236         Use $(AUTOCONF) instead of literal autoconf.
5237         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
5238         with this condition.
5239         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
5241 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
5243         * Make-dist (dist): Cleanup a bit.  We are not interested in the
5244         14 char filename limit anymore.  Remove intermediate files and
5245         symlinks.
5247 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
5249         * po/sk.po: Update from translation team.
5250         * po/tr.po: Likewise.
5251         * po/gl.po: Likewise.
5253 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5255         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
5257 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
5259         * version.h (RELEASE): Change to stable.
5261 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
5263         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
5264         __syscall_exit_group): New prototypes.
5266 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
5268         * glibc 2.3 released.
5271 See ChangeLog.13 for earlier changes.