Update.
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
2
3         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
4         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
5         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
6
7 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
8
9         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
10         (INTERNAL_SYSCALL): Make use of ERR parameter.
11         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
12         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
13         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
14         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
15
16 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
17
18         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
19         == IPPROTO_TCP.
20         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
21
22         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
23         Fix entry for bit 31.
24
25         * iconvdata/Makefile: Add rules to build IBM866NAV.
26         * iconvdata/ibm866nav.c: New file.
27         * iconvdata/tst-tables.sh: Add IBM866NAV.
28         * iconvdata/gconv-modules: Add entries for IBM866NAV.
29
30 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
31
32         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
33         to test void* parameters.
34
35         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
36         source pointer before dereferencing.
37         (__STRING_SMALLL_GET32): Likewise.
38         (__memset_gc): Add missing parenthesis around macro arguments.
39         Patch by Denis Zaitsev <zzz@cd-club.ru>.
40
41         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
42         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
43
44 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
45
46         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
47         defining.
48
49 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
50
51         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
52         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
53         here.
54         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
55
56 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
57
58         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
59         from here...
60         (PSEUDO): ... to here.
61         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
62         from here...
63         (PSEUDO): ... to here.
64
65 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
66
67         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
68         dirent64 instead of struct dirent for dirent.  Call readdir64
69         instead of readdir.
70
71         * locale/programs/locfile.c (siblings_uncached): Use struct
72         dirent64 instead of struct dirent for other_dentry.  Call
73         readdir64 instead of readdir.
74
75         * elf/ldconfig.c (direntry): Change type to struct dirent64.
76         (search_dir): Use readdir64 instead of readdir.
77         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
78
79 2003-01-12  Roland McGrath  <roland@redhat.com>
80
81         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
82         not strtol.  The former is usable in ld.so, the latter not.
83
84         * include/fcntl.h: Declare __libc_creat.
85
86         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
87         libhurduser-link.so-no-z-defs): New variables.
88
89         * malloc/malloc.c: Revert last change.
90         * malloc/malloc.h (_int_*): Move these decls to ...
91         * include/malloc.h: ... here.  Add attribute_hidden.
92         (_int_valloc): Declare it too.
93
94 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
95
96         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
97         search for removed searchlist.  Reported by Roland McGrath.
98
99         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
100         given as start file.
101
102         * io/ftw.c (ftw_startup): Use correct name in check for symlink
103         without existing target.  Patch by Jim Meyering.
104
105         * Makerules (build-shlib-helper): Don't use -z defs linker option
106         if no-z-defs is defined either.
107
108 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
109
110         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
111         file.
112
113 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
114
115         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
116         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
117
118 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
119
120         * io/ftwtest-sh: Add test case for relative path with /. at the end.
121
122 2003-01-12  Jim Meyering  <jim@meyering.net>
123
124         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
125         use the basename if we've already chdir'd into its parent directory.
126
127 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
128
129         * io/ftw.c (process_entry): Use relative path when using chdir()
130         to change directory after call to ftw_dir.
131         * io/ftwtest-sh: Add test for relative path argument to nftw()
132         with FTW_CHDIR option.
133
134 2002-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
135
136         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
137         Define for powerpc.
138         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
139         into account.
140         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
141         (INTERNAL_SYSCALL): Make use of ERR parameter.
142         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
143         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
144         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
145         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
146
147 2002-01-09  Richard Henderson  <rth@redhat.com>
148
149         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
150         DTPREL64 and TPREL64 without loadbase applied.
151
152 2002-01-09  Richard Henderson  <rth@redhat.com>
153
154         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
155         for NOT_IN_libc.
156
157         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
158         * sysdeps/unix/alpha/sysdep.h: ... here.
159         (PSEUDO_LOADGP): Remove.
160         (PSEUDO_PROLOGUE): Load GP in non-pic case.
161         (SYSCALL_ERROR_LABEL): New.
162         (PSEUDO): Use it in error branch.
163         (PSEUDO_END): Add $syscall_error label.
164
165 2003-01-12  Andreas Jaeger  <aj@suse.de>
166
167         * math/bits/mathcalls.h: Round is a const function.
168
169 2003-01-11  Jim Meyering  <jim@meyering.net>
170
171         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
172         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
173         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
174         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
175         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
176         [!_LIBC] (internal_function, dirent64, MAX): Define.
177         (__set_errno): Define if not already defined.
178         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
179         the basename, not the entire file name.
180         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
181         the basename, not the entire file name.
182
183 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
184
185         * string/tester.c (test_strcpy): Disable last added strcpy until
186         it is fixed.
187
188 2003-01-11  Philip Blundell  <philb@gnu.org>
189
190         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
191
192 2003-01-11  Andreas Schwab  <schwab@suse.de>
193
194         * Makerules: Add vpath for %.dynsym and %.so so that the
195         implicit rule chaining for check-abi works.
196
197 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
198
199         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
200         Add non-PIC case.
201
202 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
203
204         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
205         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
206         gp is used early.
207         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
208         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
209         Ensure libc.so in DT_NEEDED.
210         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
211         CHECK_STATIC_TLS before l_tls_offset use.
212         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
213         Likewise.
214         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
215         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
216         Allocate TLS_PRE_TCB_SIZE bytes below result.
217         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
218         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
219         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
220         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
221         bytes below result and add tcb_offset to memsz.
222         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
223         * sysdeps/ia64/dl-machine.h: Include tls.h.
224         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
225         too.
226         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
227         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
228         * sysdeps/ia64/libc-tls.c: New file.
229
230 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
231
232         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
233         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
234         Fix type.  Move definition out of #if.
235         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
236         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
237         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
238         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
239         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
240         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
241         support.
242         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
243         ftruncate64, pread64, pwrite64, truncate64 entries.
244         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
245         (INLINE_SYSCALL): New version that supports function call like
246         syscalls.  Add __builtin_expect.
247         (LOADARGS_n): Add argument size safety checks.
248         (INTERNAL_SYSCALL): New Macro.
249         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
250         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
251         redefinition of elf_fpreg_t and elf_fpregset_t.
252
253 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
254
255         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
256         simplify test for unloading.  If loader of a DSO is unloaded do not
257         use its scope anymore.  Fall back to own scope and adjust opencounts.
258         Fix several comments.
259         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
260         the l_searchlist, not only for l_initfini.
261
262         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
263         dependencies if objects cannot be removed.  Remove object with the
264         definition as not unloadable if necessary.
265
266         * elf/reldep6.c: Create relocation dependency before closing the first
267         module.
268
269 2003-01-10  Guido Günther  <agx@sigxcpu.org>
270
271         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
272         * sysdeps/unix/mips/brk.S: Likewise.
273         * sysdeps/unix/mips/pipe.S: Likewise.
274
275 2003-01-10  Andreas Schwab  <schwab@suse.de>
276
277         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
278
279         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
280         are known to have the vfork syscall.
281
282         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
283
284         * sysdeps/unix/sysv/linux/kernel-features.h
285         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
286         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
287         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
288
289 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
290
291         * elf/Makefile: Add rules to build and run reldep9 test.
292         * elf/reldep9.c: New file.
293         * elf/reldep9mod1.c: New file.
294         * elf/reldep9mod2.c: New file.
295         * elf/reldep9mod3.c: New file.
296
297 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
298
299         * elf/Makefile: Add rules to build and run nodelete2 test.
300         * elf/nodelete2.c: New file.
301         * elf/nodel2mod1.c: New file.
302         * elf/nodel2mod2.c: New file.
303         * elf/nodel2mod3.c: New file.
304
305 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
306
307         * posix/test-vfork.c (noop): Add __attribute_noinline__.
308         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
309         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
310         defining it.
311         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
312         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
313         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
314         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
315         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
316
317 2003-01-09  Andreas Schwab  <schwab@suse.de>
318
319         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
320
321 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
322
323         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
324         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
325         argument.
326         (INTERNAL_SYSCALL_DECL): Define.
327
328 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
329
330         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
331         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
332         argument.
333         (INTERNAL_SYSCALL_DECL): Define.
334         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
335         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
336         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
337         (INLINE_SYSCALL): Adjust.
338         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
339         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
340         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
341         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
342         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
343         add err argument to INTERNAL_SYSCALL* macros.
344         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
345         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
346         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
347         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
348         Likewise.
349         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
350         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
351         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
352
353 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
354
355         Unify symbols in user namespace exported by libc.so and libc.a.
356         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
357         argp_fmtstream_free, and argp_fmtstream_printf.
358         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
359         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
360         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
361         argp_fmtstream_point.
362         * gmon/gmon.c: Don't define write_profiling.
363         * libio/genops.c: Don't define _cleanup.
364
365         * intl/explodename.c (_nl_find_language.c): Mark as static.
366         * intl/loadinfo.h: Remove _nl_find_language prototype.
367
368         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
369         * libio/libioP.h: Remove declaration.
370
371         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
372         * libio/libioP.h: Remove declaration.
373
374         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
375         * sysdeps/generic/framestate.c: Define STATIC before including
376         unwind-dw2.c.
377
378         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
379
380 2003-01-06  Philip Blundell  <philb@gnu.org>
381
382         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
383         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
384
385         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
386         directive.
387         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
388         (SYSCALL_ERROR): New.
389         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
390         handling code.
391         (INTERNAL_SYSCALL): Define.
392         (INLINE_SYSCALL): Use it.
393         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
394         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
395         SYSCALL_ERROR in place of __syscall_error.
396
397 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
398
399         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
400         __bswap_32, __bswap_64): Put x into temporary variable
401         to avoid warnings.
402         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
403         (inline) functions.
404         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
405         __bswap_32, __bswap_64): Put x into temporary variable
406         to avoid warnings.
407         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
408         (inline) functions.
409         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
410         Likewise.
411
412 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
413
414         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
415         alias.
416
417 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
418
419         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
420         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
421
422 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
423
424         * math/libm-test.inc (significand_test): New function.
425         (main): Call it.
426
427 2003-01-06  Roland McGrath  <roland@redhat.com>
428
429         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
430         arguments.
431         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
432         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
433         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
434
435         * string/tester.c (test_strcpy): Add test with `void *' arguments.
436
437 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
438
439         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
440         return significand and not the exponent.
441         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
442
443         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
444         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
445
446         * malloc/malloc.c: Mark all _int_* functions as static.
447
448 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
449
450         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
451         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
452         handling.
453         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
454
455 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
456
457         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
458         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
459         support.
460         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
461         ftruncate64, truncate64, pread64 and pwrite64 entries.
462         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
463         (INLINE_SYSCALL): Add __builtin_expect.
464         (LOADARGS_n): Add argument size safety checks.
465         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
466         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
467         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
468         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
469         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
470         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
471
472 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
473
474         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
475         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
476         (LIBC_CANCEL_HANDLED): Add.
477
478         * sysdeps/unix/sysv/linux/alpha/sysdep.h
479         (inline_syscall_r0_constraint): Rename to...
480         (inline_syscall_r0_out_constraint): ... this.  Add =.
481         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
482
483 2003-01-06  Andreas Schwab  <schwab@suse.de>
484
485         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
486         sure this is always inlined.
487         (elf_machine_rela): Likewise.
488
489         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
490
491 2003-01-04  Roland McGrath  <roland@redhat.com>
492
493         * Makeconfig (+mkdep): Add -MP flag.
494         Suggested by Art Haas <ahaas@airmail.net>.
495
496 2003-01-05  Andreas Schwab  <schwab@suse.de>
497
498         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
499
500 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
501
502         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
503         SYSCALL_ERROR_HANDLER.
504         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
505         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
506         Add support for cancellation handling.
507         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
508         SYSCALL_ERROR_HANDLER.
509         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
510         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
511         Add support for cancellation handling.
512         (SYSCALL_ERROR_HANDLER): Define PIC variants.
513
514 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
515
516         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
517         __syscall_pread64 and __syscall_pwrite64 cancelable.
518         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
519         (INTERNAL_SYSCALL): New macro.
520         (LOADARGS_0, LOADARGS_1): Fix.
521
522 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
523
524         * Makerules (build-shlip-helper): Unless told otherwise, add
525         -Wl,-z,defs to linker command line.
526         * rt/Makefile (librt.so): Link with ld.so.
527         * dlfcn/Makefile (libdl.so): Likewise.
528
529 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
530
531         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
532         cancellation handling.
533         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
534         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
535
536 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
537
538         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
539         order of parameters passed to kill.
540
541 2003-01-04  Andreas Schwab  <schwab@suse.de>
542
543         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
544
545 2002-01-03  Paul Eggert  <eggert@twinsun.com>
546
547         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
548         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
549         when compiling Bison 1.875's `bitset bset = obstack_alloc
550         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
551
552 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
553
554         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
555         unnecessary code.
556         Correct reference counter in case SIGQUIT handler installation failed.
557
558 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
559
560         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
561         Define using _Pragma(weak ...).
562
563 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
564
565         * resolv/res_libc.c: Provide declaration for __res_init_weak and
566         reorder declarations.
567
568 2003-01-03  Art Haas  <ahaas@airmail.net>
569
570         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
571         initializer syntax to C99.
572         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
573         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
574         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
575         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
576         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
577         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
578         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
579         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
580         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
581         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
582         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
583         * localedata/tests-mbwc/dat_mblen.c: Likewise.
584         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
585         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
586         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
587         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
588         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
589         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
590         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
591         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
592         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
593         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
594         * localedata/tests-mbwc/dat_towlower.c: Likewise.
595         * localedata/tests-mbwc/dat_towupper.c: Likewise.
596         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
597         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
598         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
599         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
600         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
601         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
602         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
603         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
604         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
605         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
606         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
607         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
608         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
609         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
610         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
611         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
612         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
613         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
614         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
615         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
616         * localedata/tests-mbwc/dat_wctob.c: Likewise.
617         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
618         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
619         * localedata/tests-mbwc/dat_wctype.c: Likewise.
620         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
621
622 2003-01-03  Richard Henderson  <rth@redhat.com>
623
624         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
625         (inline_syscall_r0_constraint): New.
626         (inline_syscall[0-6]): Use them.
627
628 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
629
630         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
631         Add rtld_hidden_proto.
632         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
633         (_dl_allocate_tls): Likewise.  Remove INTDEF.
634
635 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
636
637         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
638         Morita <toshiyasu.morita@hsa.hitachi.com>.
639         * sysdeps/sh/memcpy.S: Likewise.
640
641 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
642
643         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
644         any, but unify the test.
645
646 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
647
648         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
649         sigaction): Protect weak_alias and libc_hidden_weak with
650         #ifndef LIBC_SIGACTION.
651         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
652         sigaction): Likewise.
653         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
654         sigaction): Likewise.
655         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
656         sigaction): Likewise.
657         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
658         sigaction): Likewise.
659         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
660         sigaction): Likewise.
661         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
662         sigaction): Likewise.
663         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
664         sigaction): Likewise.  Remove SIGCANCEL handling here.
665         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
666         Likewise.
667
668 2003-01-02  Art Haas  <ahaas@airmail.net>
669
670         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
671
672 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
673
674         * posix/getconf.c: Update copyright year.
675         * nss/getent.c: Likewise.
676         * nscd/nscd_nischeck.c: Likewise.
677         * iconv/iconvconfig.c: Likewise.
678         * iconv/iconv_prog.c: Likewise.
679         * elf/ldconfig.c: Likewise.
680         * catgets/gencat.c: Likewise.
681         * csu/version.c: Likewise.
682         * elf/ldd.bash.in: Likewise.
683         * elf/sprof.c (print_version): Likewise.
684         * locale/programs/locale.c: Likewise.
685         * locale/programs/localedef.c: Likewise.
686         * nscd/nscd.c (print_version): Likewise.
687         * debug/xtrace.sh: Likewise.
688         * malloc/memusage.sh: Likewise.
689         * malloc/mtrace.pl: Likewise.
690
691 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
692
693         * io/sys/stat.h: Include time.h with __need_timespec even if
694         __USE_MISC is defined but __USE_XOPEN is not.
695
696 2003-01-01  Andreas Jaeger  <aj@suse.de>
697
698         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
699         type to avoid strict aliasing problem.
700         (_nss_dns_gethostbyname2_r): Likewise.
701         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
702         (_nss_dns_getnetbyname_r): Likewise.
703         * resolv/gethnamaddr.c (_gethtent): Likewise.
704         (gethostbyname2): Likewise.
705
706 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
707
708         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
709         to avoid using the exported symbols.  Define aliases with the
710         original names separately.
711
712         * include/time.h: Add libc_hidden_proto for __strftime_l.
713         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
714         * time/strftime.c: Always use libc_hidden_def if _LIBC.
715
716         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
717         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
718
719         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
720         tr_break.
721
722         * csu/Makefile (routines): Add dso_handle.
723         * csu/dso_handle.c: New file.
724
725 2002-12-31  Roland McGrath  <roland@redhat.com>
726
727         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
728         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
729         (S-CPPFLAGS): Add -DASSEMBLER here instead.
730         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
731
732 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
733
734         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
735         is available.
736
737 2002-12-31  Andreas Jaeger  <aj@suse.de>
738
739         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
740         with Linux kernel.
741         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
742         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
743         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
744
745         * sysdeps/unix/sysv/linux/kernel_stat.h
746         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
747
748         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
749         __unused[1-3] since they're needed by some platforms.  Handle
750         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
751
752         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
753         for structs stat and stat64.
754         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
755         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
756         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
757         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
758
759         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
760
761         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
762         nsec resolution changes.
763         (xstat64_conv): Likewise.
764         (xstat32_conv): Likewise.
765
766         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
767         struct kernel_stat.
768
769         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
770         structs stat and stat64.
771
772         * time/time.h (__timespec_defined): Define for __USE_MISC.
773
774 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
775
776         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
777         and __libc_current_sigrtmax.
778
779 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
780
781         * include/errno.h (__errno_location): Add prototype.
782         Use libc_hidden_proto unconditionally.
783         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
784         unconditionally.
785         * include/resolv.h (__res_state): Likewise.
786
787         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
788         * include/sys/socket.h (accept): Add libc_hidden_proto.
789         * include/errno.h (__errno_location): Likewise.
790         * include/netdb.h (__h_errno_location): Likewise.
791         * include/resolv.h (__res_state): Likewise.
792         * include/unistd.h (__lseek): Likewise.
793         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
794         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
795         * sysdeps/generic/res-state.c (__res_state): Likewise.
796         * sysdeps/generic/accept.c (accept): Likewise.
797         * sysdeps/generic/lseek.c (__lseek): Likewise.
798         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
799         __libc_current_sigrtmax): Likewise.
800         * sysdeps/mach/hurd/accept.c (accept): Likewise.
801         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
802         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
803         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
804         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
805         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
806         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
807         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
808         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
809         alias to llseek.
810         (__GI_accept): New alias to accept.
811         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
812         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
813         New alias to llseek.
814         (__GI_accept): New alias to accept.
815         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
816         Likewise.
817         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
818         Likewise.
819         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
820
821         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
822         strong_alias (name, __GI_name).
823         * sysdeps/arm/bsd-_setjmp.S : Likewise.
824         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
825         * sysdeps/i386/bsd-_setjmp.S : Likewise.
826         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
827         * sysdeps/mips/bsd-_setjmp.S : Likewise.
828         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
829         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
830         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
831         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
832         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
833         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
834         * sysdeps/sh/bsd-_setjmp.S : Likewise.
835         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
836         * sysdeps/unix/arm/fork.S : Likewise.
837         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
838         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
839         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
840         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
841         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
842         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
843         * sysdeps/unix/i386/fork.S : Likewise.
844         * sysdeps/unix/mips/fork.S : Likewise.
845         * sysdeps/unix/sparc/fork.S : Likewise.
846         * sysdeps/unix/sparc/vfork.S : Likewise.
847         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
848         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
849         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
850         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
851         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
852         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
853         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
854         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
855         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
856         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
857         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
858         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
859         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
860         * sysdeps/unix/fork.S : Likewise.
861         * sysdeps/vax/bsd-_setjmp.S : Likewise.
862         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
863
864         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
865         inclusion.
866
867 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
868
869         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
870         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
871         * sysdeps/mach/hurd/fork.c: Likewise.
872         * sysdeps/unix/sysv/aix/fork.c: Likewise.
873         * sysdeps/unix/fork.S: Add __GI___fork alias.
874         * sysdeps/unix/arm/fork.S: Likewise.
875         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
876         * sysdeps/unix/i386/fork.S: Likewise.
877         * sysdeps/unix/mips/fork.S: Likewise.
878         * sysdeps/unix/sparc/fork.S: Likewise.
879         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
880         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
881         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
882         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
883         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
884         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
885         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
886         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
887         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
888         * sysdeps/unix/sparc/vfork.S: Likewise.
889         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
890         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
891         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
892         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
893         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
894         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
895         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
896         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
897
898         * include/time.h: Add libc_hidden_proto for __nanosleep.
899         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
900         * sysdeps/mach/nanosleep.c: Likewise.
901         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
902         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
903
904         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
905         _IO_list_unlock, and _IO_list_resetlock.
906         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
907         _IO_list_unlock, and _IO_list_resetlock.
908
909         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
910         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
911         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
912         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
913
914         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
915         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
916         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
917         __GI___longjmp alias.
918
919         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
920         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
921         * sysdeps/arm/bsd-_setjmp.S: Likewise.
922         * sysdeps/generic/bsd-_setjmp.c: Likewise.
923         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
924         * sysdeps/i386/bsd-_setjmp.S: Likewise.
925         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
926         * sysdeps/mips/bsd-_setjmp.S: Likewise.
927         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
928         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
929         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
930         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
931         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
932         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
933         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
934         * sysdeps/sh/bsd-_setjmp.S: Likewise.
935         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
936         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
937         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
938         * sysdeps/vax/bsd-_setjmp.S: Likewise.
939         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
940
941 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
942
943         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
944
945 2002-12-30  Roland McGrath  <roland@redhat.com>
946
947         * Rules (generated): Target removed.
948         * mach/Makefile (generated): Define it here instead.
949
950         * math/Makefile (generated): Add m_*l and m_*f variants too.
951
952 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
953
954         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
955         the to-be-deleted objects right away instead of later separately.
956         The latter fails because the scope data structures of the DSO
957         might already be gone.
958
959         * elf/Makefile: Add rules to build and run reldep8 test.
960         * elf/reldep8.c: New file.
961         * elf/reldep8mod1.c: New file.
962         * elf/reldep8mod2.c: New file.
963         * elf/reldep8mod3.c: New file.
964         Contributed by Jakub Jelinek.
965
966 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
967
968         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
969         checking of return value ENOSYS from getdents64.
970
971 2002-12-28  Andreas Schwab  <schwab@suse.de>
972
973         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
974         ($(common-objpfx)s-%.d): Generalized from
975         $(common-objpfx)s-proto.d rule.
976         (common-generated): Add s-proto-cancel.d.
977         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
978         cancellable syscalls.
979         * sysdeps/unix/s-proto-cancel.S: New file.
980
981 2002-12-29  Roland McGrath  <roland@redhat.com>
982
983         * resolv/res_libc.c: Move _res defn magic after res_init defn
984         so _res macro is in effect for that code.
985
986         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
987         pattern for prepending $(..) so it doesn't affect $(foo).
988
989         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
990
991 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
992
993         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
994         in hwcap.
995
996 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
997
998         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
999
1000 2002-12-28  Andreas Jaeger  <aj@suse.de>
1001
1002         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
1003         avoid warning.
1004         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
1005
1006 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
1007
1008         * inet/herrno.c (__h_errno_location): Remove.
1009         * inet/Makefile (routines): Add herrno-loc.
1010         * resolv/res_libc.c (__res_state): Remove.
1011         * resolv/Makefile (routines): Add res-state.
1012         * sysdeps/generic/herrno-loc.c: New file.
1013         * sysdeps/generic/res-state.c: New file.
1014
1015 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
1016
1017         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
1018         Only define if USE_DL_SYSINFO is defined.
1019
1020 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
1021
1022         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
1023         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
1024         Define. Patch by Richard Henderson and Jes Sorensen.
1025         (PSEUDO): Remove unnecessary ;;.
1026         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
1027         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
1028         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
1029         if not initializing thread pointer.
1030         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
1031         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
1032         make it weak also if NONTLS_INIT_TP.
1033         * sysdeps/unix/common/pause.c: Handle cancellation.
1034         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
1035         (LOADSYSCALL): Remove.
1036         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
1037         (SYSCALL_ERROR_HANDLER): Use it.
1038         (PSEUDO): Don't jump around error handler.
1039         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
1040         jump around error handler.
1041         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
1042         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
1043         to __syscall_error_handler on failure.
1044         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
1045         (LOADSYSCALL): Remove.
1046         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
1047         (SYSCALL_ERROR_HANDLER): Use it.
1048         (PSEUDO): Don't jump around error handler.
1049         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
1050         jump around error handler.
1051         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
1052         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
1053         to __syscall_error_handler on failure.
1054
1055 2002-12-27  Roland McGrath  <roland@redhat.com>
1056
1057         * scripts/gen-as-const.awk: New file.
1058         * Makefile (distribute): Add it.
1059         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
1060         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
1061         to the list.
1062         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
1063
1064 2002-12-27  Andreas Schwab  <schwab@suse.de>
1065
1066         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
1067
1068 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
1069
1070         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
1071         _environ is NULL.
1072
1073 2002-12-27  Andreas Schwab  <schwab@suse.de>
1074
1075         * Makerules ($(common-objpfx)%.make): Filter through
1076         $(sed-remove-objpfx).
1077
1078 2002-12-23  Roland McGrath  <roland@redhat.com>
1079
1080         * scripts/abilist.awk: Produce a more compact format, divided into
1081         stanzas for each version set, the set name listed only once.
1082         * scripts/extract-abilist.awk: New file.
1083         * scripts/merge-abilist.awk: New file.
1084         * Makerules (check-abi-%, update-abi-%): New pattern rules.
1085         (update-abi, check-abi): New targets.
1086         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
1087
1088 2002-12-19  Roland McGrath  <roland@redhat.com>
1089
1090         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
1091
1092         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
1093         INTERNAL_SYSCALL.
1094
1095 2002-12-21  Andreas Schwab  <schwab@suse.de>
1096
1097         * elf/check-textrel.c (handle_file): Swap p_type.
1098
1099 2002-12-21  Andreas Schwab  <schwab@suse.de>
1100
1101         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
1102         (INLINE_SYSCALL): Use it.
1103         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
1104         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
1105
1106         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
1107         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
1108
1109 2002-12-20  Art Haas  <ahaas@airmail.net>
1110
1111         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
1112         syntax to C99.
1113
1114 2002-12-21  Philip Blundell  <philb@gnu.org>
1115
1116         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
1117         top as seventh arg to __libc_start_main.
1118         Reported by paulnash@wildseed.com.
1119
1120         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
1121
1122         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
1123         compatibility cruft when new enough kernel is assumed.
1124
1125 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
1126
1127         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
1128         instead of INLINE_SYSCALL.
1129
1130 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
1131
1132         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
1133         typo.
1134
1135         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
1136         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
1137         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
1138         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
1139         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
1140         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
1141         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
1142         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
1143         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
1144         Patch by William Lee Irwin <wli@holomorphy.com>.
1145
1146 2002-12-20  Andreas Schwab  <schwab@suse.de>
1147
1148         * locale/programs/ld-measurement.c (measurement_output): Fix
1149         index calculation.
1150
1151 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
1152
1153         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
1154         Redefine _IO_flockifle and _IO_funlockfile as inlines.
1155
1156         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
1157         builds add "tls" in the search path.
1158         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
1159         (path_hwcap): Recognize "tls".
1160
1161 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1162
1163         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
1164         __waitpid instead of waitpid.
1165
1166         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
1167         int $0x80.
1168         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
1169         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
1170         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
1171
1172         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
1173         information for system calls.
1174
1175         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
1176         for ld.so.
1177
1178         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
1179
1180 2002-12-19  Roland McGrath  <roland@redhat.com>
1181
1182         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
1183         * iconvdata/ibm922.h: Likewise.
1184         * iconvdata/ibm930.h: Likewise.
1185         * iconvdata/ibm932.h: Likewise.
1186         * iconvdata/ibm933.h: Likewise.
1187         * iconvdata/ibm935.h: Likewise.
1188         * iconvdata/ibm937.h: Likewise.
1189         * iconvdata/ibm939.h: Likewise.
1190         * iconvdata/ibm943.h: Likewise.
1191         * iconvdata/isiri-3342.h: Likewise.
1192
1193 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1194
1195         * test-skeleton.c (main): Make sure correct value is seen as
1196         argv[0] after adjustment of argv, and argc.
1197
1198         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
1199         RTLD_CORRECT_DYNAMIC_WEAK is defined.
1200
1201 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
1202
1203         * nscd/connections.c (nscd_run): Shut up warning.
1204         * tst-ungetc.c (assert): Undefined before redefining.
1205
1206 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1207
1208         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
1209         is used.
1210
1211 2002-12-17  Art Haas  <ahaas@airmail.net>
1212
1213         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
1214         * iconvdata/cp775.h: Likewise.
1215         * iconvdata/ibm1046.h: Likewise.
1216         * iconvdata/ibm1124.h: Likewise.
1217         * iconvdata/ibm1129.h: Likewise.
1218         * iconvdata/ibm1132.h: Likewise.
1219         * iconvdata/ibm1133.h: Likewise.
1220         * iconvdata/ibm1160.h: Likewise.
1221         * iconvdata/ibm1161.h: Likewise.
1222         * iconvdata/ibm1162.h: Likewise.
1223         * iconvdata/ibm1163.h: Likewise.
1224         * iconvdata/ibm1164.h: Likewise.
1225
1226 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
1227
1228         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
1229         __ASSUME_CLONE_THREAD_FLAGS is defined.
1230         * sysdeps/unix/sysv/linux/kernel-features.h
1231         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
1232
1233 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
1234
1235         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
1236         of asm.
1237         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1238
1239         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
1240         _dl_sysinfo.
1241         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
1242         code.
1243         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
1244         _rtld_global.
1245         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
1246         code.
1247         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
1248         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
1249         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
1250         Add _dl_sysinfo.
1251
1252 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
1253
1254         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
1255         __libc_writev to...
1256         [libc: GLIBC_PRIVATE]: ...here.
1257         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
1258         __libc_msgsnd to...
1259         [libc: GLIBC_PRIVATE]: ...here.
1260
1261 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
1262
1263         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
1264         Use it instead of directly int $0x80.
1265         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
1266         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
1267         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
1268         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1269         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
1270         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
1271
1272 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
1273
1274         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
1275
1276         * elf/elf.h (AT_SYSINFO): New define.
1277         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
1278         AT_SYSINFO.
1279
1280 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
1281
1282         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
1283         Make cancelable.
1284         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
1285         Likewise.
1286         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
1287         Likewise.
1288         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
1289         Likewise.
1290         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
1291         Likewise.
1292         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
1293
1294         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
1295         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
1296         available, otherwise __libc_maybe_call.
1297         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
1298         cancellation handling.
1299         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
1300
1301 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
1302
1303         * posix/regcomp.c (free_workarea_compile): Free the new member
1304         ORG_INDICES.
1305         (analyze): Initialize ORG_INDICES.
1306         (duplicate_node_closure): Search for a existing node, which is
1307         duplicated from the node ORG_DEST and satisfies the constraint
1308         CONSTRAINT.  And use it to avoid inifimite loop.
1309         (search_duplicated_node): New function.
1310         (duplicate_node): Store the index of the original node.
1311         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
1312         if needed.
1313         * posix/regex_internal.h (re_dfa_t): Add new members.
1314
1315 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
1316
1317         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
1318
1319 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1320
1321         * sysdeps/posix/system.c (do_system): Add support for installation
1322         of cancellation handlers.
1323         * sysdeps/unix/sysv/linux/i386/system.c: New file.
1324
1325         * stdlib/Makefile (tests): Add tst-system.
1326         * stdlib/tst-system.c: New file.
1327
1328         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
1329         CENABLE]: Don't lose content of %ebx.
1330
1331 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
1332
1333         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
1334         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
1335
1336 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1337
1338         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
1339         fails to return a function pointer don't use it.
1340
1341 2002-12-16  Art Haas  <ahaas@airmail.net>
1342
1343         * io/ftw.c: Convert GCC extension initializer syntax to C99.
1344         * iconvdata/iso-ir-165.c: Likewise.
1345         * iconvdata/jis0208.c: Likewise.
1346         * iconvdata/jis0212.c: Likewise.
1347
1348 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1349
1350         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
1351         epoll_ctl, and epoll_wait.
1352         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
1353         epoll_create, epoll_ctl, and epoll_wait.
1354         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
1355         Davide Libenzi <davidel@xmailserver.org>.
1356         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
1357         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
1358         Add sys/epoll.h.
1359
1360 2002-12-16  Art Haas  <ahaas@airmail.net>
1361
1362         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
1363         syntax to C99
1364         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
1365         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
1366         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
1367
1368 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1369
1370         * stdio-common/Makefile (routines): Remove lockfile.  Add
1371         flockfile, ftrylockfile, and funlockfile.
1372         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
1373         * sysdeps/generic/flockfile.c: New file.
1374         * sysdeps/generic/ftrylockfile.c: New file.
1375         * sysdeps/generic/funlockfile.c: New file.
1376
1377 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
1378
1379         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
1380         macros instead of doing the calls directly.
1381         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
1382         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
1383         targets.
1384
1385 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
1386
1387         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
1388         * sysdeps/ieee754/bits/nan.h: Likewise.
1389
1390         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
1391         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
1392
1393 2002-12-16  Roland McGrath  <roland@redhat.com>
1394
1395         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
1396         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
1397         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
1398
1399         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
1400         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
1401         s_putpmsg.
1402         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
1403         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
1404         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
1405         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
1406         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
1407         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
1408         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
1409         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
1410
1411 2002-12-13  Paul Eggert  <eggert@twinsun.com>
1412
1413         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
1414         is now u_int, not int.
1415         (struct XDR.x_handy): Now u_int, not int.
1416         * sunrpc/xdr_mem.c: Include <limits.h>.
1417         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
1418         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
1419         x_handy is now unsigned, not signed.
1420         Do not decrement x_handy if no change is made.
1421         (xdrmem_setpos): Check for int overflow.
1422         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
1423         (xdr_sizeof): Remove cast that is now unnecessary, now that
1424         x_handy is unsigned.
1425
1426 2002-12-15  Art Haas  <ahaas@airmail.net>
1427
1428         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
1429         * iconvdata/gap.awk: Likewise.
1430         * iconvdata/gen-8bit-gap-1.sh: Likewise.
1431         * iconvdata/gen-8bit-gap.sh: Likewise.
1432         * locale/C-address.c: Likewise.
1433         * locale/C-collate.c: Likewise.
1434         * locale/C-ctype.c: Likewise.
1435         * locale/C-identification.c: Likewise.
1436         * locale/C-measurement.c: Likewise.
1437         * locale/C-messages.c: Likewise.
1438         * locale/C-monetary.c: Likewise.
1439         * locale/C-name.c: Likewise.
1440         * locale/C-numeric.c: Likewise.
1441         * locale/C-paper.c: Likewise.
1442         * locale/C-telephone.c: Likewise.
1443         * locale/C-time.c: Likewise.
1444         * nscd/connections.c: Likewise.
1445         * nscd/grpcache.c: Likewise.
1446         * nscd/hstcache.c: Likewise.
1447         * nscd/pwdcache.c: Likewise.
1448         * stdio-common/vfprintf.c: Likewise.
1449         * stdlib/random.c: Likewise.
1450         * sysdeps/generic/siglist.c: Likewise.
1451         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
1452         * sysdeps/ieee754/bits/nan.h: Likewise.
1453         * sysdeps/posix/sprofil.c: Likewise.
1454         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
1455         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
1456         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
1457
1458 2002-12-15  Roland McGrath  <roland@redhat.com>
1459
1460         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
1461
1462         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
1463         <tls.h> here, no need for it.
1464         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
1465
1466         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
1467         parameter, not varargs parameter.
1468
1469         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
1470         argument so it's not an unused variable.
1471
1472         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
1473         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
1474         for users.
1475
1476         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
1477
1478 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
1479
1480         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
1481         original __libc_fcntl code.  Just renamed.
1482
1483 2002-12-15  Andreas Schwab  <schwab@suse.de>
1484
1485         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
1486
1487 2002-12-14  Olaf Hering  <olh@suse.de>
1488
1489         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
1490         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
1491
1492 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
1493
1494         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
1495
1496         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
1497         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
1498
1499         * sysdeps/unix/sysv/linux/open64.c: New file.
1500
1501         * sysdeps/generic/pselect.c: Add support for cancellation handling.
1502         * sysdeps/posix/open64.c: Likewise.
1503         * sysdeps/posix/sigpause.c: Likewise.
1504         * sysdeps/posix/sigwait.c: Likewise.
1505         * sysdeps/posix/system.c: Likewise.
1506         * sysdeps/posix/waitid.c: Likewise.
1507         * sysdeps/unix/sysv/linux/accept.S: Likewise.
1508         * sysdeps/unix/sysv/linux/connect.S: Likewise.
1509         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
1510         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
1511         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
1512         * sysdeps/unix/sysv/linux/poll.c: Likewise.
1513         * sysdeps/unix/sysv/linux/pread.c: Likewise.
1514         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
1515         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
1516         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
1517         * sysdeps/unix/sysv/linux/readv.c: Likewise.
1518         * sysdeps/unix/sysv/linux/recv.S: Likewise.
1519         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
1520         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
1521         * sysdeps/unix/sysv/linux/send.S: Likewise.
1522         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
1523         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
1524         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
1525         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
1526         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
1527         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
1528         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
1529         * sysdeps/unix/sysv/linux/wait.c: Likewise.
1530         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
1531         * sysdeps/unix/sysv/linux/writev.c: Likewise.
1532         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
1533         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
1534
1535 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
1536
1537         * sysdeps/generic/sysdep-cancel.h: New file.
1538         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
1539         cancelable syscall.
1540         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
1541         recvmsg, send, sendmsg, sendto): Make cancelable.
1542         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
1543         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
1544         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
1545         sendto, osf_select): Likewise.
1546         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
1547         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
1548         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
1549         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
1550         sendto): Likewise.
1551         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
1552         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
1553         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
1554         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
1555         sendto): Likewise.
1556         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
1557         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
1558         sendto, select): Likewise.
1559         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
1560         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
1561         Likewise.
1562         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
1563         select, fcntl): Likewise.
1564         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
1565         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
1566         read, readv, select, sigsuspend, write, writev): Likewise.
1567
1568 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
1569
1570         * dirent/bug-readdir1.c: Include unistd.h.
1571
1572 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
1573
1574         * locale/programs/locale.c: Include locarchive.h.
1575         (ARCHIVE_NAME): Define.
1576         (write_archive_locales): New function.
1577         (write_locales): Use it.  Ensure the same locale is not printed
1578         multiple times in verbose mode.
1579         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
1580         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
1581         functions.
1582         (struct nameent): New type.
1583         (nameentcmp): New function.
1584
1585 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
1586
1587         * posix/regex_internal.c (re_string_context_at): Guard wide char
1588         code with #ifdef RE_ENABLE_I18N.
1589
1590 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
1591
1592         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
1593
1594 2002-12-13  Roland McGrath  <roland@redhat.com>
1595
1596         * posix/bug-regex15.c: New file.
1597         * posix/Makefile (tests): Add it.
1598
1599         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
1600         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
1601
1602 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
1603
1604         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
1605
1606         * misc/syslog.c (log_cleanup): Don't use parameter in
1607         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
1608         pass NULL instead of a pointer to syslog_lock.
1609
1610 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
1611
1612         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
1613         linker map for all iconv modules.
1614         (distribute): Add gconv.map.
1615         * iconvdata/gconv.map: New file.
1616
1617         * elf/Makefile: Also check all iconv modules for text relocations.
1618
1619         * stdlib/Makefile: Remove code to automatically import GMP.
1620
1621         * elf/Makefile (tests): Add rules to build and run check-textrel.
1622         * elf/check-textrel.c: New file.
1623
1624         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
1625         directive.
1626
1627 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
1628
1629         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
1630         not st.st[am]time.
1631
1632 2002-04-30  Bruno Haible  <bruno@clisp.org>
1633
1634         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
1635         the encoding if it already has slashes.
1636         Reported by Perry Rapp <prapp@erols.com>.
1637
1638 2002-12-11  Roland McGrath  <roland@redhat.com>
1639
1640         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
1641         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
1642         Turn off PIC for compiling this file.
1643
1644 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
1645
1646         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
1647         definitions.  Not needed.
1648         [_LIBC]: Use definitions from libc-lock.h instead of referencing
1649         pthread routines directly.
1650         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
1651         mutex_init calls.
1652         (arena_get2): Don't look at return value of mutex_lock.
1653
1654 2002-12-11  Roland McGrath  <roland@redhat.com>
1655
1656         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
1657         elf-init.o instead of compiling a PIC version.
1658
1659 2002-12-11  Bruno Haible  <bruno@clisp.org>
1660
1661         * intl/gettext.h: Renamed to ...
1662         * intl/gmo.h: ... here.
1663         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
1664         * intl/gettextP.h: Update.
1665         * intl/loadmsgcat.c: Update.
1666
1667         * intl/gettextP.h (PARAMS): Make more portable.
1668         (attribute_hidden): Define as empty macro if not already defined.
1669         * intl/hash-string.h (PARAMS): Make more portable.
1670         * intl/loadinfo.h (PARAMS): Likewise.
1671         * intl/plural-exp.h (PARAMS): Likewise.
1672         (attribute_hidden): Move definition near the definition of
1673         internal_function.
1674
1675         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
1676         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
1677
1678 2002-07-13  Bruno Haible  <bruno@clisp.org>
1679
1680         * intl/dcigettext.c (freea): New macro.
1681         (FREE_BLOCKS): Free also the registered blocks.
1682         (DCIGETTEXT): Free the 'search' variable.
1683         Reported by Andreas Fischer <a.fischer@asentics.de>.
1684
1685 2002-04-27  Bruno Haible  <bruno@clisp.org>
1686
1687         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
1688         * intl/dcigettext.c: Likewise.
1689         * intl/dcgettext.c: Likewise.
1690         * intl/dgettext.c: Likewise.
1691         * intl/gettext.c: Likewise.
1692         * intl/dcngettext.c: Likewise.
1693         * intl/dngettext.c: Likewise.
1694         * intl/ngettext.c: Likewise.
1695         * intl/textdomain.c: Likewise.
1696         * intl/bindtextdom.c: Likewise.
1697         * intl/plural-exp.h: Likewise.
1698
1699 2002-01-02  Bruno Haible  <bruno@clisp.org>
1700
1701         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
1702
1703 2001-04-30  Bruno Haible  <bruno@clisp.org>
1704
1705         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
1706         default macro definitions.  Needed for mingw32.
1707
1708 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
1709
1710         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
1711         __builtin_constant_p to macro parameter.
1712
1713         * sysdeps/generic/sigpause.c: Define all functions as weak.
1714         * sysdeps/posix/sigpause.c: Likewise.
1715
1716         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
1717         type size_t.
1718
1719 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
1720
1721         * elf/tst-array1.c (preinit_array, init_array, fini_array):
1722         Explicitly align the array to sizeof (void *).
1723         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
1724
1725         * include/libc-symbols.h: Fix a comment typo.
1726
1727         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
1728         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
1729         Likewise.
1730         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
1731         Likewise.
1732         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
1733         (__libc_sigsuspend): Likewise.
1734         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
1735         (__libc_sigsuspend): Likewise.
1736         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
1737         (creat): New weak alias.
1738
1739 2002-12-10  Roland McGrath  <roland@redhat.com>
1740
1741         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
1742         contributes a manual chapter.
1743         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
1744         around xref to it.
1745
1746         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
1747         and move contents to ...
1748         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
1749         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
1750         it instead of duplicating its contents.
1751         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
1752
1753 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
1754
1755         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
1756         defined.
1757         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
1758         function.
1759         (EXTRA_LD_ENVVARS): Use it.
1760         (DL_OSVERSION_INIT): Define.
1761         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
1762         dl-librecon.h.
1763         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
1764
1765 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
1766
1767         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
1768
1769         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
1770         call.  It is not allowed to destroy pthread mutexes which are
1771         still in use even though it is safe for our implementations.  If
1772         somebody still uses the descriptor it is a bug.
1773
1774 2002-12-09  Richard Henderson  <rth@redhat.com>
1775
1776         * csu/abi-note.S: Use .p2align, not .align.
1777
1778 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
1779
1780         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
1781         __libc_select aliases.
1782
1783         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
1784         alias.
1785
1786         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
1787
1788         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
1789
1790         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
1791
1792         * sysdeps/unix/syscalls.list: Define __libc_select alias.
1793
1794         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
1795
1796         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
1797         __libc___xpg_sigpause aliases.
1798
1799         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
1800
1801         * misc/error.c: Remove use of USE_IN_LIBIO.
1802
1803 2002-12-08  Roland McGrath  <roland@redhat.com>
1804
1805         * elf/Makefile (tests): Uncomment tst-array[123].
1806         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
1807         * csu/elf-init.c: New file.
1808         * csu/Makefile (routines, static-only-routines): Add elf-init.
1809         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
1810         and __libc_csu_fini in place of _fini.
1811         * sysdeps/arm/elf/start.S: Likewise.
1812         * sysdeps/cris/elf/start.S: Likewise.
1813         * sysdeps/hppa/elf/start.S: Likewise.
1814         * sysdeps/i386/elf/start.S: Likewise.
1815         * sysdeps/ia64/elf/start.S: Likewise.
1816         * sysdeps/m68k/elf/start.S: Likewise.
1817         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
1818         * sysdeps/mips/elf/start.S: Likewise.
1819         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
1820         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
1821         * sysdeps/s390/s390-32/elf/start.S: Likewise.
1822         * sysdeps/s390/s390-64/elf/start.S: Likewise.
1823         * sysdeps/sh/elf/start.S: Likewise.
1824         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
1825         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
1826         * sysdeps/x86_64/elf/start.S: Likewise.
1827
1828         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
1829         struct containing function ptr and value, free it.
1830         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
1831         It's not safe to let the new thread use the SIGEV pointer.
1832
1833 2001-10-20  Paul Eggert  <eggert@twinsun.com>
1834
1835         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
1836         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
1837         Use strerror_r that is only a macro, even if it is not a function.
1838         (strerror): Check for HAVE_DECL_STRERROR before declaring.
1839         (private_strerror): Use prototypes, not old-style function definition.
1840         (print_errno_message): New function.
1841         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
1842         char*-flavored one.
1843         (error_tail, error, error_at_line): Use it.
1844
1845 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
1846
1847         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
1848
1849 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
1850
1851         * scripts/output-format.sed: Fix bug in one of the s expressions
1852         which used / for one too many things.
1853
1854         * include/unistd.h: Declare __libc_close.
1855
1856 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
1857
1858         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
1859
1860 2002-12-07  Roland McGrath  <roland@redhat.com>
1861
1862         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
1863         from 2002-12-06, but remove unnecessary memset call without removing
1864         necessary copy of initialization image.
1865
1866         * Makerules ($(common-objpfx)format.lds): New target.
1867         (common-generated): Add it.
1868         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
1869         * scripts/output-format.sed: New file.
1870         * Makefile (distribute): Add it.
1871
1872 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
1873
1874         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
1875         Reported by Art Haas <ahaas@airmail.net>.
1876
1877 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
1878
1879         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
1880
1881 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
1882
1883         * string/test-strncpy.c (do_random_tests): Improve test coverage.
1884
1885 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
1886
1887         * test-skeleton.c (timeout_handler): Allow expected signal to be
1888         SIGALRM.
1889
1890         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
1891
1892         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
1893
1894 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
1895
1896         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
1897         (SYSCALL_ERROR_HANDLER): Fix a pasto.
1898         Reported by Jeff Bailey <jbailey@nisa.net>.
1899
1900 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
1901
1902         * sysdeps/generic/libc-tls.c: Undo last patch.
1903
1904         * include/wctype.h: Define iswalnum with libc_hidden_proto.
1905
1906         * include/signal.h: Define raise with libc_hidden_proto.
1907
1908         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
1909         __execve instead of snprintf and execve.
1910
1911         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
1912         again a bit.
1913
1914 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
1915
1916         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
1917         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
1918
1919 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
1920
1921         * misc/syslog.c (log_cleanup): New function.
1922         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
1923         (closelog): Likewise.
1924
1925         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
1926         * elf/dl-iteratephdr.c: Likewise.
1927         * elf/dl-lookup.c: Likewise.
1928         * elf/dl-misc.c: Likewise.
1929         * elf/dl-open.c: Likewise.
1930         * elf/dl-support.c: Likewise.
1931         * elf/rtld.c: Likewise.
1932         * sysdeps/generic/ldsodefs.h: Likewise.
1933         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
1934         * sysdeps/mach/bits/libc-lock.h: Likewise.
1935         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
1936
1937 2002-12-06  Roland McGrath  <roland@redhat.com>
1938
1939         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
1940
1941         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
1942         (malloc_starter, memalign_starter, free_starter): Don't define these.
1943         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
1944         Don't declare them either.
1945         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
1946         __pthread_initialize, so no need to set hooks to *_starter.
1947         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
1948         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
1949         (__libc_malloc_pthread_startup): New function.
1950         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
1951
1952         * malloc/hooks.c (memalign_starter): New function.
1953         * malloc/malloc.c: Declare it.
1954         * malloc/arena.c (save_memalign_hook): New variable.
1955         (ptmalloc_init): Set __memalign_hook to memalign_starter.
1956
1957         * elf/dl-minimal.c (free): Clear the memory.
1958         (calloc): Just call malloc, knowing all memory it returns is cleared.
1959
1960         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
1961         malloc and memset; calloc can avoid the zeroing when redundant.
1962         (_dl_tls_setup): Likewise.
1963         * elf/dl-load.c (decompose_rpath): Likewise.
1964         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
1965         call, since memory from sbrk at startup is already zero.
1966
1967         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
1968         error string for failure, null for success.  Update callers.
1969         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
1970         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
1971
1972 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
1973
1974         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
1975         args to i:iipi.
1976         (readahead): Change args to i:iii.
1977         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
1978         Change args to i:iii.
1979         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
1980         args to i:iiii.
1981
1982 2002-12-05  Roland McGrath  <roland@redhat.com>
1983
1984         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
1985         call all functions rather than none.
1986         Reported by Mark P. Mitchell <mark@codesourcery.com>.
1987
1988 2002-12-04  Roland McGrath  <roland@redhat.com>
1989
1990         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
1991         on _nl_current_LC_* variables.
1992
1993 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
1994
1995         * dirent/bug-readdir1.c (main): Don't call closedir, just close
1996         the file descriptor.  This is testing what the bug report was about.
1997
1998 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
1999
2000         * po/be.po: New file.
2001
2002         * argp/Makefile (tests): Add tst-argp1.
2003
2004         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
2005         Change type of _attribute to void*.
2006         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
2007         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
2008         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
2009         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
2010         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
2011
2012 2002-12-04  Roland McGrath  <roland@redhat.com>
2013
2014         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
2015         members to the end, so a libpthread compiled with !USE_TLS will still
2016         find other members properly.
2017
2018         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
2019         operand for DEST memory.  Fix dummy input operand to use SRC.
2020         Reported by Davin McCall <davmac@ozonline.com.au>.
2021
2022         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
2023         alignment when initializing the DTV entry.
2024
2025         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
2026         when TLS has not been set up, try to set it up if we can.
2027         * elf/tst-tls4.c: Revert last change.
2028         * elf/tst-tls5.c: Likewise.
2029         * elf/tst-tls6.c: Likewise.
2030         * elf/tst-tls7.c: Likewise.
2031         * elf/tst-tls8.c: Likewise.
2032         * elf/tst-tls9.c: Likewise.
2033
2034         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
2035         * sysdeps/generic/ldsodefs.h: Declare it.
2036         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
2037         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
2038         function, broken out of __libc_setup_tls.
2039         (init_static_tls): Likewise.
2040         (__libc_setup_tls): Call them.
2041         (_dl_tls_setup): New function, uses new subroutines.
2042
2043         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
2044         Clear the pointer when returning true.
2045         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
2046         first element of the slotinfo list too.
2047
2048         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
2049         [SHARED].
2050
2051         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
2052         (_dl_determine_tlsoffset): Likewise.
2053
2054         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
2055         startup_error_tsd, made global.
2056         (dl_main): Update initialization.
2057         * elf/dl-tsd.c: Likewise.
2058         * sysdeps/generic/ldsodefs.h: Declare it.
2059
2060 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
2061
2062         * manual/texinfo.tex: Update from latest upstream version.
2063
2064 2002-12-03  Roland McGrath  <roland@redhat.com>
2065
2066         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
2067         area surplus in calculation for sbrk call.
2068
2069         * iconvdata/cp1125.c: New file.
2070         * iconvdata/Makefile (distribute): Add it.
2071         (modules): Add CP1125.
2072         (gen-8bit-gap-modules): Add cp1125.
2073         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
2074         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
2075
2076 2002-12-03  Andreas Jaeger  <aj@suse.de>
2077
2078         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
2079
2080 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
2081
2082         * sysdeps/posix/system.c (do_system): Make signal handler
2083         installation thread safe.
2084
2085 2002-12-02  Roland McGrath  <roland@redhat.com>
2086
2087         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
2088         caller from EXTRA to -.
2089         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
2090         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
2091         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
2092
2093 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
2094
2095         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
2096         bits of RM are cleared.
2097
2098 2002-12-02  Roland McGrath  <roland@redhat.com>
2099
2100         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
2101         TLS setup is required.
2102         * elf/tst-tls5.c: Likewise.
2103         * elf/tst-tls6.c: Likewise.
2104         * elf/tst-tls7.c: Likewise.
2105         * elf/tst-tls8.c: Likewise.
2106         * elf/tst-tls9.c: Likewise.
2107
2108         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
2109         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
2110         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
2111         for being null before calling free_slotinfo.
2112         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
2113         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
2114
2115 2002-11-30  Bruno Haible  <bruno@clisp.org>
2116
2117         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
2118         (struct __gconv_step): New field __btowc_fct.
2119         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
2120         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
2121         __BUILTIN_TRANS.
2122         (__gconv_btwoc_ascii): New declaration.
2123         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
2124         (__gconv_btwoc_ascii): New function.
2125         * iconv/gconv_builtin.h: Add BtowcFct argument to all
2126         BUILTIN_TRANSFORMATION invocations.
2127         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
2128         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
2129         * iconv/gconv_builtin.c (map): New field btowc_fct.
2130         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
2131         btowc_fct field.
2132         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
2133         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
2134         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
2135         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
2136         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
2137         (gconv_init): Initialize __btowc_fct field.
2138         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
2139         * iconv/loop.c: Document ONEBYTE_BODY.
2140         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
2141         Undefine ONEBYTE_BODY at the end.
2142         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
2143         * iconvdata/8bit-gap.c (NONNUL): New macro.
2144         (BODY for FROM_LOOP): Use it.
2145         (ONEBYTE_BODY): New macro.
2146         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
2147         (NONNUL): New macro.
2148         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
2149         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
2150         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
2151         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
2152         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
2153         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
2154         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
2155         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
2156         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
2157         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
2158         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
2159         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
2160         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
2161         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
2162         * iconvdata/ibm932.c: Include <stdbool.h>.
2163         (TRUE, FALSE): Remove macros.
2164         (BODY for FROM_LOOP): Remove unused variable rp1.
2165         (ONEBYTE_BODY): New macro.
2166         (BODY for TO_LOOP): Use bool.
2167         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
2168         * iconvdata/ibm943.c: Include <stdbool.h>.
2169         (TRUE, FALSE): Remove macros.
2170         (BODY for FROM_LOOP): Remove unused variable rp1.
2171         (ONEBYTE_BODY): New macro.
2172         (BODY for TO_LOOP): Use bool.
2173         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
2174         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
2175         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
2176         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
2177         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
2178         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
2179         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
2180         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
2181         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
2182         * iconvdata/gbbig5.c: Tweak comment.
2183
2184 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
2185
2186         * po/fi.po: Update from translation team.
2187
2188 2002-12-01  Roland McGrath  <roland@redhat.com>
2189
2190         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
2191         testing getdents64 return value.
2192
2193         * scripts/versions.awk: Don't pass -n flag to sort command.
2194
2195         * posix/bug-regex13.c: Include <string.h>.
2196
2197         * sysdeps/generic/libc-start.c (__libc_start_main): Do
2198         DL_SYSDEP_OSCHECK here.
2199         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
2200         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
2201
2202         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
2203         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
2204
2205         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
2206         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
2207
2208         * include/link.h: Comment typo fix.
2209
2210 2002-12-01  Roland McGrath  <roland@frob.com>
2211
2212         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
2213         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
2214         _POSIX_MEMORY_PROTECTION): Likewise.
2215         (_POSIX_POLL, _POSIX_SELECT): Removed.
2216
2217 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
2218
2219         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
2220         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
2221
2222 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
2223
2224         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
2225         USE___THREAD.
2226         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
2227         "=v" constraints.
2228
2229 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
2230
2231         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
2232         branch prediction buffers by using unpaired call/ret.
2233
2234 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
2235
2236         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
2237         first parameters constraint string.
2238         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
2239
2240 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
2241
2242         * posix/regcomp.c (parse_expression): Set the bit since the back
2243         reference is used in the regular expression.
2244         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
2245         of malloc failure.
2246         (re_node_set_init_copy): Likewise.
2247         * posix/regex_internal.h (state_array_t): New structure.
2248         (re_sub_match_last_t): Likewise.
2249         (re_sub_match_top_t): Likewise.
2250         (re_match_context_t): Add new members.
2251         (re_dfa_t): Likewise.
2252         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
2253         to check the matching is really correct, and retry if failed.
2254         Move the routin pruning the impossible nodes from here, ...
2255         (prune_impossible_nodes): To this function.
2256         (check_matching): Invoke check_subexp_matching_top, and replace
2257         redundant checking with transit_state_bkref invocation.
2258         (proceed_next_node): Replace strncmp with memcmp.  Reported by
2259         Paolo Bonzini  <bonzini@gnu.org>.
2260         (update_cur_sifted_state): Remove search_subexp invocation.
2261         (search_subexp): Remove this function.
2262         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
2263         optimization.
2264         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
2265         Remove unused invocation of match_ctx_add_entry.
2266         (transit_state): Invoke check_subexp_matching_top.
2267         (check_subexp_matching_top): New function.
2268         (transit_state_bkref): Remove unused array.
2269         Merge transit_state_bkref_loop.
2270         (transit_state_bkref_loop): Use get_subexp instead of
2271         sift_states_backward.  Use search_cur_bkref_entry for optimization.
2272         Merge this function to transit_state_bkref.
2273         (get_subexp): New function.
2274         (get_subexp_sub): Likewise.
2275         (find_subexp_node): Likewise.
2276         (check_arrival): Likewise.
2277         (check_arrival_expand_ecl): Likewise.
2278         (check_arrival_expand_ecl_sub): Likewise.
2279         (expand_bkref_cache): Likewise.
2280         (match_ctx_init): Initialize new members.
2281         (match_ctx_clean): New function.
2282         (match_ctx_free): Release new members.
2283         (match_ctx_free_subtops): New function.
2284         (match_ctx_add_entry): Fix indent.
2285         (search_cur_bkref_entry): New function.
2286         (match_ctx_add_subtop): Likewise.
2287         (match_ctx_add_sublast): Likewise.
2288
2289 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
2290
2291         * iconv/Makefile (tests): Remove tst-iconv4.c
2292         * iconv/tst-iconv4.c: Moved to...
2293         * iconvdata/tst-iconv4.c: ...here.  New file.
2294         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
2295
2296 2002-11-25  Roland McGrath  <roland@redhat.com>
2297
2298         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
2299         Grok AF_LINK if defined.
2300         From Momchil Velikov <velco@fadata.bg>.
2301
2302         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
2303         brdaddr, or dstaddr, just set those pointers to null and don't fail.
2304         Reported by Momchil Velikov <velco@fadata.bg>.
2305
2306         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
2307         is > sizeof IFR->ifa_addr, advance past the whole longer length.
2308         (__ifreq): Count up NIFS that way too.
2309         Reported by Momchil Velikov <velco@fadata.bg>.
2310
2311         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
2312
2313         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
2314         and <fpu_control.h>.
2315
2316 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
2317
2318         * elf/elf.h (EM_ST19): Fix typo.
2319
2320 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
2321
2322         * include/errno.h (__set_errno): Define as errno = val
2323         unconditionally.
2324
2325 2002-11-24  Roland McGrath  <roland@redhat.com>
2326
2327         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
2328         * sysdeps/posix/writev.c: Likewise.
2329         From Momchil Velikov <velco@fadata.bg>.
2330
2331         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
2332         calling *GL(dl_error_catch_tsd) for a thread-local location.
2333         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
2334         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
2335         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
2336
2337         * libio/iofflush.c: Add libc_hidden_def.
2338         * libio/iofwrite.c: Likewise.
2339         * sysdeps/generic/sigtimedwait.c: Likewise.
2340         * sysdeps/generic/sigwaitinfo.c: Likewise.
2341         * sysdeps/posix/sigwait.c: Likewise.
2342         Reported by Momchil Velikov <velco@fadata.bg>.
2343
2344         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
2345         to match <arpa/inet.h> declaration.
2346         * inet/inet_netof.c (inet_netof): Likewise.
2347         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
2348         Reported by Momchil Velikov <velco@fadata.bg>.
2349
2350         * configure.in: Skip AUTOCONF check under --without-cvs.
2351         * configure: Regenerated.
2352
2353         * posix/Makefile (headers): Add bits/pthreadtypes.h.
2354         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
2355         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
2356
2357 2002-11-24  Andreas Schwab  <schwab@suse.de>
2358
2359         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
2360         with six arguments.
2361
2362 2002-11-19  Jim Meyering  <jim@meyering.net>
2363
2364         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
2365         as `static'.
2366         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
2367
2368 2002-11-23  Roland McGrath  <roland@redhat.com>
2369
2370         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
2371         Just produce hex output for datum sizes.
2372
2373         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
2374         Reported by Luca Barbieri <ldb@ldb.ods.org>.
2375
2376 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
2377
2378         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
2379         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
2380         and __unused3 fields.
2381         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
2382         [__WORDSIZE == 32]: Only PPC32 requires __unused1
2383         and __unused2 fields.
2384         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
2385         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
2386         __unused3, and __unused4 fields.
2387
2388         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
2389         obtain lowest address for profiling in __monstartup call.
2390
2391 2002-11-21  Roland McGrath  <roland@redhat.com>
2392
2393         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
2394         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
2395
2396         * locale/localeinfo.h (struct locale_data): Revert last change.
2397
2398         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
2399         From Ian Wienand <ianw@gelato.unsw.edu.au>.
2400
2401         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
2402         __NR_pread64 if not defined.
2403         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
2404         From Ian Wienand <ianw@gelato.unsw.edu.au>.
2405
2406 2002-11-21  Roland McGrath  <roland@frob.com>
2407
2408         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
2409         __libc_multiple_libcs here.  Call __setfpucw.
2410
2411 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
2412
2413         * elf/Makefile (tests): Don't run test-arrayX tests for now.
2414
2415         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
2416         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
2417         CLONE_CHILD_*TID flags.
2418
2419 2002-11-20  Andreas Jaeger  <aj@suse.de>
2420
2421         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
2422         We pass struct ucontext on x86-64.
2423         (GET_PC): Adjust.
2424         (GET_FRAME): Adjust.
2425         (GET_STACK): Adjust.
2426
2427 2002-11-20  Roland McGrath  <roland@redhat.com>
2428
2429         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
2430         conditionalize [! DO_VERSIONING] #error.
2431
2432         * scripts/abilist.awk: Grok function descriptor symbols.
2433
2434         * intl/tst-gettext.c (main): Check return values from setlocale.
2435         Add necessary unsetenv's to make LANG=existing-locale check work.
2436
2437         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
2438         so aborted prior runs don't confuse things.
2439
2440         * locale/localeinfo.h (struct locale_data: union locale_data_value):
2441         Use uintptr_t instead of unsigned int for `word' member.
2442         (_NL_CURRENT_WORD): Cast to uint32_t.
2443
2444         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
2445         value.
2446
2447 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
2448
2449         * elf/tls-macros.h: Add IA-64 definitions.
2450         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
2451
2452         * iconv/Makefile (tests): Add tst-iconv4.
2453         * iconv/tst-iconv4.c: New file.
2454
2455         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
2456         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
2457         __GCONV_INCOMPLETE_INPUT.
2458         (ucs4le_internal_loop): Likewise.
2459         (ucs4le_internal_loop_unaligned): Likewise.
2460         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
2461         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
2462         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
2463
2464         * iconv/loop.c (LOOPFCT): First test for empty input then for full
2465         output buffer.
2466
2467         * inet/getnameinfo.c: Use extend_alloca where appropriate.
2468         * sysdeps/posix/getaddrinfo.c: Likewise.
2469
2470         * include/alloca.h (extend_alloca): New define.  Based on stack
2471         direction it'll try to append to the previouls allocated buffer.
2472
2473 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
2474
2475         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
2476         use the same service for AF_INET and AF_INET6.
2477
2478 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
2479
2480         * intl/localealias.c (read_alias_file): Use only about 400 bytes
2481         of stack space instead of 16k.
2482
2483 2002-11-18  Wolfram Gloger  <wg@malloc.de>
2484
2485         * malloc/arena.c
2486         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
2487         nothing if not initialized.  Bug report from Marcus Brinkmann
2488         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
2489
2490 2002-11-19  Roland McGrath  <roland@redhat.com>
2491
2492         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
2493         sched_setaffinity.
2494
2495         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
2496         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
2497         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
2498         * configure: Regenerated.
2499
2500 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
2501
2502         * include/dlfcn.h: __libc_dlopen is now a macro calling
2503         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
2504         (__libc_dlopen_mode): New prototype.
2505         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
2506         new parameter.  Store new parameter in mode field of structure passed
2507         to do_dlopen.
2508         (struct do_dlopen_args): Add new field mode.
2509         (do_dlopen): Pass mode from parameter structure to _dl_open.
2510
2511 2002-11-11  Randolf Chung  <tausq@debian.org>
2512
2513         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
2514         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
2515         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
2516
2517         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
2518
2519         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
2520         Set -mdisable-fpregs for this file.
2521
2522 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
2523
2524         * sysdeps/unix/sysv/linux/configure.in:
2525         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
2526         from gcc-3.0 era for backwards compatibility.
2527         * sysdeps/unix/sysv/linux/configure: Regenerate.
2528
2529         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
2530         Define mcontext_t as a sigcontext.
2531
2532 2002-11-18  Roland McGrath  <roland@redhat.com>
2533
2534         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
2535         Free memory in `last_result' if it was used.
2536
2537         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
2538         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
2539         Do the parsing inline instead of copying strings and calling
2540         inet_network, and properly skip all alias names not matching the form.
2541
2542         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
2543
2544 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
2545
2546         * manual/pattern.texi (Wordexp Example): Fix sample code.
2547
2548         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
2549         childs stack which will be loaded into the %esi register.
2550
2551 2002-11-14  Paul Eggert  <eggert@twinsun.com>
2552
2553         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
2554         overflow when skipping the question part and when unpacking aliases.
2555
2556 2002-11-15  Roland McGrath  <roland@redhat.com>
2557
2558         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
2559         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
2560         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
2561
2562 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
2563
2564         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
2565         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
2566
2567 2002-11-15  Roland McGrath  <roland@redhat.com>
2568
2569         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
2570         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
2571         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
2572         (+make-include-of-dep): New canned sequence.
2573
2574         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
2575         From Dmitry V. Levin <ldv@altlinux.org>.
2576
2577 2002-11-14  Roland McGrath  <roland@redhat.com>
2578
2579         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
2580         * inet/herrno.c (__libc_h_errno): Likewise.
2581         * resolv/res_libc.c (__libc_res): Likewise.
2582         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
2583         (__res_state) [! USE___THREAD]: Don't define as weak.
2584         * csu/Versions: Revert last change.
2585         * resolv/Versions: Revert last change.
2586
2587         * Makerules ($(common-objpfx)%.make): New pattern rule.
2588         * tls.make.c: New file.
2589         * Makefile (distribute): Add it.
2590
2591         * sysdeps/generic/errno.c [! USE___THREAD]
2592         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
2593         with compat_symbol so they are not link-time visible.
2594         [! USE___THREAD] (__libc_errno): New alias for errno.
2595         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
2596         Add __libc_errno here.
2597         * inet/herrno.c [USE___THREAD]: Use this conditional
2598         in place of [USE_TLS && HAVE___THREAD].
2599         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
2600         (h_errno, _h_errno): Declare these with compat_symbol so they are not
2601         link-time visible.
2602         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
2603         * resolv/res_libc.c [! USE___THREAD]
2604         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
2605         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
2606         (__libc_res): Define as alias for _res.
2607         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
2608         Add __libc_h_errno and __libc_res here.
2609
2610 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
2611
2612         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
2613         * resolv/Versions (h_errno, _res): Likewise.
2614
2615 2002-11-14  Roland McGrath  <roland@redhat.com>
2616
2617         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
2618         (%.symlist): Likewise.
2619
2620 2002-11-13  Roland McGrath  <roland@redhat.com>
2621
2622         * scripts/abilist.awk: New file.
2623         * Makefile (distribute): Add it.
2624         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
2625         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
2626         [$(subdir) = elf] (tests): Depend on libc.symlist.
2627         (generated, common-generated): Add those files.
2628
2629         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
2630         * configure: Regenerated.
2631         * config.make.in (OBJDUMP): New variable, substituted by configure.
2632
2633         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
2634         (mallochook, reallochook): Set them up.
2635         (checkhdr): Check HDR->magic2 value.
2636         (freehook): Reset HDR->magic2.
2637         (memalignhook): New static function.
2638         (old_memalign_hook): New static variable.
2639         (mcheck, reallochook): Set __memalign_hook to memalignhook.
2640
2641         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
2642         for the new TCB.
2643
2644 2002-11-13  Andreas Jaeger  <aj@suse.de>
2645
2646         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
2647         attribute.
2648         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2649
2650 2002-11-11  Paul Eggert  <eggert@twinsun.com>
2651
2652         * manual/crypt.texi (Cryptographic Functions): Mention that
2653         the MD5 one-way algorithm is compatible with BSD's.
2654
2655 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
2656
2657         * posix/regex_internal.c (re_string_skip_chars): Also return the last
2658         wide character.
2659         (re_string_reconstruct): Calculate the context by itself when the
2660         offset points out of the valid range.
2661         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
2662         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
2663         (IS_WIDE_WORD_CHAR): New macro.
2664         (IS_WIDE_NEWLINE): New macro.
2665
2666 2002-11-12  Andreas Jaeger  <aj@suse.de>
2667
2668         * sysdeps/x86_64/strchr.S: Don't use one register for two
2669         purposes, this fixes a bug noticed by test-strchr.c.
2670
2671         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
2672         correctly.
2673
2674 2002-11-12  Roland McGrath  <roland@redhat.com>
2675
2676         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
2677         (_G_IO_NO_BACKWARD_COMPAT): Define it.
2678
2679         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
2680         instead of <pt-machine.h>.
2681         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
2682         testandset.
2683         From Ian Wienand <ianw@gelato.unsw.edu.au>.
2684
2685 2002-11-10  Roland McGrath  <roland@redhat.com>
2686
2687         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
2688         Call fputs instead of fwprintf (simpler to follow in debugger).
2689
2690         * crypt/md5-crypt.c: Doc fix.
2691
2692         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
2693         the beginning of generated target commands.
2694
2695         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
2696         dependencies for these in case implicit rule search skipped the
2697         nonexistent source directory.
2698         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
2699         files with $(object-suffixes) as targets too.
2700         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
2701         and a target for it using $(make-target-directory).
2702
2703         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
2704
2705 2002-11-10  Roland McGrath  <roland@frob.com>
2706
2707         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
2708         * sysdeps/generic/bits/pthreadtypes.h: ... here.
2709
2710         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
2711         l_start == 0 and l_len == 1 as we do l_len == 0.
2712
2713 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
2714
2715         * po/da.po: Update from translation team.
2716
2717 2002-11-10  Roland McGrath  <roland@redhat.com>
2718
2719         * config.make.in (includedir): New variable, substituted by configure.
2720         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
2721         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
2722
2723 2002-11-10  Andreas Jaeger  <aj@suse.de>
2724
2725         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
2726         REG_OLDMASK and REG_CR2 to synch with kernel header.
2727         (NGREG): Increase.
2728
2729         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
2730         aliasing problem.
2731         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
2732         * nss/getnssent_r.c (__nss_getent_r): Likewise.
2733         (__nss_setent): Likewise.
2734         (__nss_getent_r): Likewise.
2735         * inet/getnetgrent_r.c (innetgr): Likewise.
2736         (__internal_setnetgrent_reuse): Likewise.
2737         (internal_getnetgrent_r): Likewise.
2738         * inet/ether_hton.c (ether_hostton): Likewise.
2739         * inet/ether_ntoh.c (ether_ntohost): Likewise.
2740         * sunrpc/netname.c (netname2user): Likewise.
2741         * sunrpc/publickey.c (getpublickey): Likewise.
2742         (getsecretkey): Likewise.
2743
2744 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
2745
2746         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
2747         error in range calculation.
2748
2749 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
2750
2751         * string/test-strspn.c (do_test): Ensure zero termination.
2752         * string/test-strpbrk.c (do_test): Likewise.
2753         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
2754         * string/test-strncpy.c (stupid_strncpy): Likewise.
2755         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
2756
2757 2002-10-08  Roland McGrath  <roland@redhat.com>
2758
2759         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
2760         nonzero characters.
2761
2762 2002-09-22  H.J. Lu  <hjl@gnu.org>
2763
2764         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
2765         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
2766         only if __NR_mmap2 is defined.
2767
2768         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
2769         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
2770         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
2771         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
2772
2773 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
2774
2775         * posix/bug-regex13.c (tests): Add new test.
2776
2777         * string/test-strchr.c (stupid_strchr): New function.
2778         (do_random_tests): Make sure the string is zero terminated.
2779         * string/test-strpbrk.c (stupid_strpbrk): New function.
2780         (do_random_tests): Make sure the string is zero terminated.
2781         * string/test-strcmp.c (stupid_strcmp): New function.
2782         (do_random_tests): Make sure the strings are zero terminated.
2783         * string/test-strspn.c (stupid_strspn): New function.
2784         (simple_strspn): Rename rej argument to acc.
2785         (do_random_tests): Make sure the string is zero terminated.
2786         * string/test-strcspn.c (stupid_strcspn): New function.
2787         * string/test-strncpy.c (stupid_strncpy): New function.
2788         * string/test-stpncpy.c (stupid_stpncpy): New function.
2789         * string/test-strncmp.c (stupid_strncmp): New function.
2790         (do_random_tests): Make sure the strings are zero terminated.
2791         * string/test-string.h (impl_t): Change test into long.
2792         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
2793
2794 2002-11-08  Roland McGrath  <roland@redhat.com>
2795
2796         * sysdeps/ia64/elf/configure.in: Add TLS check.
2797         From Ian Wienand <ianw@cse.unsw.edu.au>.
2798         * sysdeps/ia64/elf/configure: Regenerated.
2799
2800 2002-11-07  Roland McGrath  <roland@redhat.com>
2801
2802         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
2803         place of _IO_new_do_write.
2804         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
2805         #undef before versioned_symbol use.
2806
2807 2002-11-07  Richard Henderson  <rth@redhat.com>
2808
2809         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
2810         * configure: Regenerated.
2811         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
2812         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
2813         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
2814         _dl_fini via gp-relative relocations.
2815         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
2816
2817         * elf/tls-macros.h: Add alpha versions.
2818         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
2819         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
2820         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
2821         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
2822         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
2823         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
2824         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
2825         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
2826         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
2827         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
2828         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
2829         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
2830         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
2831         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
2832         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
2833         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
2834         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
2835         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
2836
2837         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
2838         Kill argument registers across the inline syscall.
2839
2840         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
2841
2842         * linuxthreads/sysdeps/alpha/tls.h: New file.
2843         * sysdeps/alpha/dl-tls.h: New file.
2844
2845 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
2846
2847         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
2848         (gmon_initializer): New function.
2849         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
2850         __gmon_start__ here.  Call it from gmon_initializer() instead.
2851
2852 2002-03-12  H.J. Lu  <hjl@gnu.org>
2853
2854         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
2855         tst-array2, and tst-array3.
2856         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
2857         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
2858         ($(objpfx)tst-array1.out): New target.
2859         ($(objpfx)tst-array2): Likewise.
2860         ($(objpfx)tst-array2.out): Likewise.
2861         ($(objpfx)tst-array3.out): Likewise.
2862         * elf/tst-array1.c: New file.
2863         * elf/tst-array1.exp: Likewise.
2864         * elf/tst-array2.c: Likewise.
2865         * elf/tst-array2dep.c: Likewise.
2866         * elf/tst-array2.exp: Likewise.
2867         * elf/tst-array3.c: Likewise.
2868
2869 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
2870
2871         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
2872         Don't add L->l_addr to array entry values.
2873
2874 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
2875
2876         * string/test-string.h: New file.
2877         * string/test-strlen.c: New file.
2878         * string/test-string.h: New file.
2879         * string/test-strcmp.c: New file.
2880         * string/test-strchr.c: New file.
2881         * string/test-strrchr.c: New file.
2882         * string/test-strcpy.c: New file.
2883         * string/test-stpcpy.c: New file.
2884         * string/test-strncpy.c: New file.
2885         * string/test-stpncpy.c: New file.
2886         * string/test-strpbrk.c: New file.
2887         * string/test-strcspn.c: New file.
2888         * string/test-strspn.c: New file.
2889         * string/test-strcat.c: New file.
2890         * string/test-strncmp.c: New file.
2891         * string/test-memchr.c: New file.
2892         * string/test-memcmp.c: New file.
2893         * string/test-memset.c: New file.
2894         * string/test-memcpy.c: New file.
2895         * string/test-mempcpy.c: New file.
2896         * string/test-memmove.c: New file.
2897         * string/Makefile (strop-tests): New variable.
2898         (tests): Add strop-tests.
2899         (distribute): Add test-string.h.
2900
2901 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
2902
2903         * posix/regcomp.c: Use tabs instead of spaces.
2904         * posix/regexec.c: Likewise.
2905         * posix/regex_internal.h: Likewise.
2906
2907         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
2908
2909 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
2910
2911         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
2912         here.
2913         (regcomp): Don't set can_be_null here.
2914         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
2915         (re_compile_internal): Clear can_be_null, set regs_allocated.
2916
2917         * posix/regcomp.c (re_set_fastmap): New function.
2918         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
2919         COMPLEX_BRACKET check.
2920         * posix/regexec.c (re_search_internal): Optimize searching with
2921         fastmap.  Call re_string_reconstruct even if match_first is
2922         smaller than raw_mbs_idx.
2923
2924 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
2925
2926         * posix/regcomp (free_dfa_content): Use free_state.
2927         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
2928         pointers in case that realloc failed.
2929         (re_node_set_merge): Likewise.
2930         (register_state): Likewise.
2931         (create_newstate_common): Invoke memory release functions in case of
2932         error conditions.
2933         (create_ci_newstate): Likewise.
2934         (create_cd_newstate): Likewise.
2935         (free_state): New function.
2936         * posix/regexec.c (re_search_internal): Invoke memory release
2937         functions in case of error conditions.
2938         (sift_states_backward): Likewise.
2939         (merge_state_array): Likewise.
2940         (add_epsilon_src_nodes): Likewise.
2941         (sub_epsilon_src_nodes): Likewise.
2942         (search_subexp): Likewise.
2943         (sift_states_bkref): Likewise.
2944         (transit_state_sb): Likewise.
2945         (transit_state_mb): Likewise.
2946         (transit_state_bkref_loop): Likewise.
2947         (group_nodes_into_DFAstates): Likewise.
2948         (push_fail_stack): Don't edit pointers in case that realloc failed.
2949         (extend_buffers): Likewise.
2950         (match_ctx_add_entry): Likewise.
2951
2952 2002-11-06  Roland McGrath  <roland@redhat.com>
2953
2954         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
2955         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
2956
2957         * configure.in: Add checks on as and ld for binutils 2.13 or later.
2958         * configure: Regenerated.
2959
2960 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
2961
2962         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
2963         If re_compile_internal failed free fastmap buffer.
2964         (free_dfa_content): Broken out of regfree function.  Frees all dfa
2965         related data.
2966         (regfree): Add free_dfa_content.
2967         (re_compile_internal): If any of the called functions fails free
2968         all dfa related memory.
2969
2970 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
2971
2972         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
2973         warnings from the kernel headers.
2974
2975 2002-11-05  Roland McGrath  <roland@redhat.com>
2976
2977         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
2978         From Johannes Stezenbach <js@convergence.de>.
2979
2980         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
2981         #errlist-compat magic comment to give 123 as size.
2982         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
2983         (libc: GLIBC_2.2): ... here.
2984         (libc: GLIBC_2.3): Likewise.
2985
2986 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
2987
2988         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
2989         which happens at the beginning so that we can unload modules in
2990         __libc_freeres.
2991
2992 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2993
2994         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
2995         under [__USE_MISC || _ASM].
2996
2997         * elf/elf.h: Remove the obsolete SH TLS relocations.
2998
2999 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3000
3001         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
3002
3003 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3004
3005         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
3006         __NR_pread64 and __NR_pwrite64.
3007         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
3008         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
3009         and __NR_pwrite64.
3010         Revert change to use INLINE_SYSCALL.
3011         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
3012         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
3013         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
3014         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
3015         INLINE_SYSCALL.
3016         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
3017
3018         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
3019         Update clobber list and add a comment about the syscall ABI.
3020
3021         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
3022         s_pwrite64, s_ftruncate, s_truncate): Re-add.
3023
3024 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
3025
3026         * iconv/gconv_dl.c (free_mem): Clear loaded.
3027         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
3028         cleanup if any.
3029
3030 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
3031
3032         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
3033
3034         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
3035         as old code without locking.  _IO_seekoff calls this function after
3036         locking the stream.
3037         * libio/ioseekpos.c: Likewise for _IO_seekpos.
3038         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
3039         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
3040         prototypes.
3041         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
3042         of _IO_seekoff_internal.
3043         (_IO_rewind): Likewise.
3044         * libio/ioftell.c: Likewise.
3045         * libio/ftello.c: Likewise.
3046         * libio/ftello64.c: Likewise.
3047         * libio/iofgetpos.c: Likewise.
3048         * libio/iofgetpos64.c: Likewise.
3049         * libio/oldiofgetpos.c: Likewise.
3050         * libio/oldiofgetpos64.c: Likewise.
3051         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
3052         _IO_seekpos_internal.
3053         * libio/iofsetpos64.c: Likewise.
3054         * libio/oldiofsetpos.c: Likewise.
3055         * libio/oldiofsetpos64.c: Likewise.
3056
3057 2002-11-04  Roland McGrath  <roland@redhat.com>
3058
3059         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
3060         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
3061         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
3062         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
3063         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
3064         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
3065         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
3066         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
3067         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
3068         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
3069         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
3070         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
3071         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
3072         Remove these, no longer used.
3073
3074 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3075
3076         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
3077         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
3078         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
3079         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
3080         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
3081         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
3082         syscall stubs.
3083
3084         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
3085         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
3086         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
3087         and __NR_pread.
3088         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
3089         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
3090         and __NR_pwrite.
3091         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
3092
3093 2002-11-03  Roland McGrath  <roland@redhat.com>
3094
3095         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
3096         `_dl_tls_static_used'.
3097         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
3098         (__libc_setup_tls): Initialize it.  Let the initial value of
3099         _dl_tls_static_size indicate some surplus space in the computed value.
3100         * elf/dl-open.c (_dl_tls_static_size): New variable.
3101         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
3102         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
3103         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
3104         (CHECK_STATIC_TLS): Use it.
3105         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
3106         closed objects occupied a trailing contiguous chunk of static TLS area.
3107
3108 2002-10-18  Bruno Haible  <bruno@clisp.org>
3109
3110         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
3111
3112 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
3113
3114         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
3115         _wide_data->_IO_read_end if adjustment can be made in the current
3116         buffer.
3117
3118         * sysdeps/unix/sysv/linux/fexecve.c: New file.
3119
3120         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
3121         wide oriented streams are used.
3122
3123         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
3124         service hasn't been used [PR libc/4744].
3125
3126         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
3127         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
3128
3129         * manual/examples/dir.c: Don't include <stddef.h>.
3130         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
3131         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
3132
3133 2002-11-02  H.J. Lu  <hjl@gnu.org>
3134
3135         * stdio-common/reg-printf.c: Include <stddef.h>.
3136
3137 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
3138
3139         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
3140
3141         * po/ca.po: Update from translation team.
3142         * po/es.po: Likewise.
3143
3144         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
3145         is defined write out memory map.
3146         * sysdeps/unix/sysv/linux/segfault.c: New file.
3147
3148 2002-11-02  Roland McGrath  <roland@redhat.com>
3149
3150         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
3151         pointers that can alias.
3152         Reported by Daniel Jacobowitz <drow@mvista.com>.
3153
3154         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
3155
3156 2002-11-02  Roland McGrath  <roland@redhat.com>
3157
3158         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
3159         description to be clearer and to say that *RESULT is set to ENTRY.
3160
3161 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3162
3163         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
3164         dests_ch arrays together.  Alloca or malloc dest_states,
3165         dest_states_word and dest_states_nl arrays together.  Free memory on
3166         error exit.
3167
3168 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
3169
3170         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
3171         and current_saltbits.
3172
3173 2002-11-02  Roland McGrath  <roland@redhat.com>
3174
3175         * stdio-common/reg-printf.c: Include <stdlib.h>.
3176
3177 2002-11-02  H.J. Lu  <hjl@gnu.org>
3178
3179         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
3180         caller to EXTRA instead of execve.
3181
3182 2002-11-01  Roland McGrath  <roland@redhat.com>
3183
3184         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
3185         in place of [!(USE_TLS && HAVE___THREAD)].
3186         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
3187
3188 2002-10-31  Roger Sayle  <roger@eyesopen.com>
3189
3190         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
3191         New macros.
3192         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
3193
3194         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
3195         without defining FP_ROUNDMODE.
3196
3197 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
3198
3199         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
3200         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
3201         declare_symbol.
3202         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
3203         (OLD_SIGLIST_SIZE): Define.
3204         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
3205         (OLD_SIGLIST_SIZE): Define.
3206         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
3207
3208 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
3209
3210         * sysdeps/ia64/strncpy.S: Fix recovery code.
3211
3212 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3213
3214         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
3215         New macros.
3216         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
3217         text_set_element.
3218         * elf/dl-libc.c (free_mem): Likewise.
3219         * iconv/gconv_conf.c (free_mem): Likewise.
3220         * iconv/gconv_db.c (free_mem): Likewise.
3221         * iconv/gconv_dl.c (free_mem): Likewise.
3222         * iconv/gconv_cache.c (free_mem): Likewise.
3223         * intl/finddomain.c (free_mem): Likewise.
3224         * intl/dcigettext.c (free_mem): Likewise.
3225         * locale/setlocale.c (free_mem): Likewise.
3226         * misc/fstab.c (fstab_free): Likewise.
3227         * nss/nsswitch.c (free_mem): Likewise.
3228         * posix/regcomp.c (free_mem): Likewise.
3229         * resolv/gai_misc.c (free_res): Likewise.
3230         * stdlib/fmtmsg.c (free_mem): Likewise.
3231         * sunrpc/clnt_perr.c (free_mem): Likewise.
3232         * sysdeps/generic/setenv.c (free_mem): Likewise.
3233         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
3234         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
3235         * time/tzset.c (free_mem): Likewise.
3236         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
3237         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
3238         * malloc/set-freeres.c (__libc_freeres): Likewise.
3239
3240         * login/getutent.c: Include stdlib.h instead of stddef.h.
3241         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
3242         (__getutent): Allocate buffer the first time it is run.
3243         * login/getutid.c: Include stdlib.h instead of stddef.h.
3244         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
3245         (__getutid): Allocate buffer the first time it is run.
3246         * login/getutline.c: Include stdlib.h instead of stddef.h.
3247         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
3248         (__getutline): Allocate buffer the first time it is run.
3249         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
3250         (mtrace): Allocate malloc_trace_buffer.
3251         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
3252         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
3253         * string/strerror.c: Include libintl.h and errno.h.
3254         (buf): New variable.
3255         (strerror): Only allocate buffer if actually needed (unknown error).
3256         * time/tzfile.c (transitions): Add libc_freeres_ptr.
3257         (freeres): Remove.
3258
3259 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
3260
3261         * include/libc-symbols.h (libc_freeres_ptr): New macro.
3262         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
3263         symbol_set_define.
3264         (__libc_freeres): Free all pointers in that section.
3265         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
3266         commands when creating .lds script.
3267         (LDSEDCMD-c.so): New variable.
3268         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
3269         (rcmd_af): Use strdup to allocate ahostbuf.
3270         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
3271         (rexec_af): Use strdup to allocate ahostbuf.
3272         * stdio-common/reg-printf.c (printf_funcs): Remove.
3273         (__printf_arginfo_table): Change into printf_arginfo_function **.
3274         Add libc_freeres_ptr.
3275         (__register_printf_function): Allocate __printf_arginfo_table
3276         and __printf_function_table the first time it is called.
3277         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
3278         printf_arginfo_function **.
3279         (parse_one_spec): Add __builtin_expect.
3280         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
3281         (free_mem): Remove.
3282         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
3283         (free_mem): Remove.
3284         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
3285         (string_space, map): Add libc_freeres_ptr.
3286         (free_mem): Remove.
3287         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
3288         (free_mem): Remove.
3289         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
3290         (free_mem): Remove.
3291         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
3292         (buffer): Add libc_freeres_ptr.
3293         (free_mem): Remove for _LIBC.
3294         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
3295         (free_mem): Remove.
3296         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
3297         (free_mem): Remove.
3298         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
3299         (free_mem): Remove.
3300         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
3301         (free_mem): Remove.
3302         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
3303         (free_mem): Remove.
3304         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
3305         (free_mem): Remove.
3306         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
3307         libc_freeres_ptr.
3308         (free_mem): Remove.
3309         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
3310         libc_freeres_ptr.
3311         (free_mem): Remove.
3312
3313 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3314
3315         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
3316         instead of duplicating the whole function in libc.
3317
3318 2002-10-31  Roland McGrath  <roland@redhat.com>
3319
3320         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
3321         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
3322
3323 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3324
3325         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
3326         32bit-predefine when creating .new32 list and -U for each
3327         32bit-predefine when creating .new64 list.
3328         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
3329
3330 2002-10-29  Andreas Schwab  <schwab@suse.de>
3331
3332         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
3333         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
3334
3335 2002-10-25  Roland McGrath  <roland@redhat.com>
3336
3337         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
3338         * sysdeps/unix/sysv/linux/configure: Regenerated.
3339
3340         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
3341         _dl_starting_up decl.
3342
3343 2002-10-20  H.J. Lu  <hjl@gnu.org>
3344
3345         * sysdeps/unix/sysv/linux/configure.in: Don't check
3346         /lib/modules/`uname -r`/build/include for kernel headers if
3347         cross compiling.
3348         * sysdeps/unix/sysv/linux/configure: Regenerated.
3349
3350 2002-10-25  Roland McGrath  <roland@redhat.com>
3351
3352         * math/math.h (M_LOG2El): Correct the value.
3353         From Stephen L Moshier <steve@moshier.net>.
3354
3355         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
3356         conditional from __libc_multiple_libcs access.  Remove kludge for weak
3357         symbol access with old compilers we no longer support.
3358         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
3359         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
3360
3361 2002-10-25  Roland McGrath  <roland@redhat.com>
3362
3363         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
3364         implement SV_RESETHAND by translating it to SA_RESETHAND.
3365
3366 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
3367
3368         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
3369         type on ELF64 platforms.
3370
3371 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
3372
3373         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
3374
3375         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
3376
3377 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
3378
3379         * elf/dl-misc.c: Include <sysdep.h>.
3380         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
3381
3382         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
3383         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
3384         (INLINE_SYSCALL): Use that.
3385         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
3386         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
3387         (INLINE_SYSCALL): Use that.
3388         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
3389         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
3390         (INLINE_SYSCALL): Use that.
3391         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
3392         dl-sysdep.h.
3393         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
3394         (__INTERNAL_SYSCALL_STRING): Define.
3395         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
3396         dl-sysdep.h.
3397         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
3398         (__INTERNAL_SYSCALL_STRING): Define.
3399         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
3400         __SYSCALL_STRING to inline_syscall*.
3401         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
3402         New macros.
3403         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
3404         inline_syscall4, inline_syscall5, inline_syscall6): Add string
3405         argument.
3406
3407 2002-10-24  Roland McGrath  <roland@redhat.com>
3408
3409         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
3410         * sysdeps/unix/sysv/linux/init-first.c: Not here.
3411         * sysdeps/powerpc/elf/libc-start.c: Or here.
3412         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
3413         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
3414         * sysdeps/unix/sysv/aix/init-first.c: Or here.
3415         * sysdeps/generic/libc-start.c: Or here.
3416         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
3417         access with [! SHARED].
3418         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
3419
3420         * libio/bug-wfflush.c: New file.
3421         * libio/Makefile (tests): Add bug-wfflush.
3422
3423 2002-10-23  Roland McGrath  <roland@redhat.com>
3424
3425         * stdio-common/tst-fphex.c: New file.
3426         * stdio-common/Makefile (tests): Add tst-fphex.
3427         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
3428         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
3429         chars always before the value digits.
3430         Reported by James Antill <james.antill@redhat.com>.
3431
3432 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
3433
3434         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
3435         (free_mem): New function.
3436         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
3437         if not cross compiling.
3438         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
3439         (bug-regex14-ENV): Set.
3440         (bug-regex14-mem): New target.
3441         * posix/bug-regex14.c: New file.
3442
3443 2002-10-23  Roland McGrath  <roland@redhat.com>
3444
3445         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
3446         target, so we don't touch it when the link fails.
3447
3448         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
3449         Check for the result overflowing off_t and fail with EOVERFLOW.
3450         * libio/ioftell.c (_IO_ftell): Likewise.
3451         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
3452
3453         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
3454         use a temporary timeval on the stack for gettimeofday and copy it.
3455         * login/logout.c (logout): Likewise.
3456         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
3457
3458         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
3459         Use __SWORD_TYPE instead of int for member types.
3460         (struct statfs64): Likewise.
3461         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
3462         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
3463         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
3464         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
3465         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
3466
3467         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
3468         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
3469         (ST_NODIRATIME): Restore fixed value of 2048.
3470         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
3471         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
3472
3473         Rearranged <bits/types.h> definitions to reduce duplication.
3474         * sysdeps/generic/bits/types.h: Rewritten, using macros from
3475         <bits/wordsize.h> and new header <bits/typesizes.h>.
3476         * posix/Makefile (headers): Add bits/typesizes.h here.
3477         * sysdeps/generic/bits/typesizes.h: New file.
3478         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
3479         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
3480         * sysdeps/mach/hurd/bits/typesizes.h: New file.
3481         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
3482         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
3483         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
3484         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
3485         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
3486         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
3487         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
3488         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
3489         <bits/pthreadtypes.h> here, not in <bits/types.h>.
3490         * signal/signal.h: Likewise.
3491
3492         * streams/stropts.h: Include <bits/xtitypes.h>.
3493         * streams/Makefile (headers): Add bits/xtitypes.h here.
3494         * sysdeps/generic/bits/xtitypes.h: New file.
3495         * sysdeps/s390/bits/xtitypes.h: New file.
3496         * sysdeps/ia64/bits/xtitypes.h: New file.
3497         * sysdeps/x86_64/bits/xtitypes.h: New file.
3498
3499         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
3500         * sysdeps/generic/bits/ipctypes.h: New file.
3501         * sysdeps/mips/bits/ipctypes.h: New file.
3502         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
3503         * sysdeps/gnu/bits/msq.h: Likewise.
3504         * sysvipc/sys/ipc.h: Likewise.
3505
3506 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
3507
3508         * elf/dl-load.c (struct filebuf): For buf element to have the
3509         alignment of ElfXX_Ehdr since this is what will be stored in it.
3510
3511 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
3512
3513         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
3514         into pointer to locrec_offset.
3515         (add_locale_to_archive): Adjust callers.  Free normalized_name right
3516         before returning, not immediately after add_locale, pass it to
3517         add_alias if not NULL instead of name.  Rename second normalized_name
3518         occurence to nnormalized_codeset_name.
3519
3520         * locale/programs/locarchive.c (enlarge_archive): Make sure
3521         string_size is always a multiple of 4.
3522         Reported by Andreas Schwab <schwab@suse.de>.
3523
3524 2002-10-21  Andreas Schwab  <schwab@suse.de&g