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