Update.
[jlayton/glibc.git] / ChangeLog
1 2003-03-09  Ulrich Drepper  <drepper@redhat.com>
2
3         * po/fi.po: Update from translation team.
4         * po/ca.po: Likewise.
5
6 2003-03-08  Ulrich Drepper  <drepper@redhat.com>
7
8         * rt/tst-aio7.c (do_test): Change BYTES into a #define.
9
10 2003-03-07  Ulrich Drepper  <drepper@redhat.com>
11
12         * rt/tst-aio7.c (do_test): Give buff permanent extend, too.
13
14         * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
15
16 2003-03-07  Roland McGrath  <roland@redhat.com>
17
18         * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
19         * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
20
21 2003-03-04  Guido Guenther  <agx@sigxcpu.org>
22
23         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
24         stubs, we have INLINE_SYSCALL.
25         * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
26         MAP_NONBLOCK.
27
28 2003-03-06  Roland McGrath  <roland@redhat.com>
29
30         * rt/tst-aio7.c (do_test): Revert last change.  Instead, give CB1
31         permanent extent and add a comment about testing its implicit teardown.
32
33 2003-03-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
34
35         * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
36
37 2003-03-05  Ulrich Drepper  <drepper@redhat.com>
38
39         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
40         reversed __builtin_expect expectation.
41
42 2003-03-05  Roland McGrath  <roland@redhat.com>
43
44         * stdio-common/sscanf.c: Use prototype defn with ... syntax.
45         * libio/swscanf.c: Likewise.
46         * libio/swprintf.c: Likewise.
47
48 2003-03-04  Roland McGrath  <roland@redhat.com>
49
50         * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
51         (elf_machine_rela): Always use RESOLVE_MAP, needed for
52         R_PPC64_JMP_SLOT as well as TLS cases.
53         (BIT_INSERT): Move parenthesis where it ought to have been.
54         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
55
56         * posix/confstr.c (confstr): Correct STRING_LEN values for
57         _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
58         break.  Reported by Alexandre Julliard <julliard@winehq.com>.
59
60 2003-03-04  Jakub Jelinek  <jakub@redhat.com>
61
62         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
63
64 2003-03-04  Ulrich Drepper  <drepper@redhat.com>
65
66         * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
67         clone parameters.
68
69         * po/sv.po: Update from translation team.
70
71 2003-03-04  Andreas Jaeger  <aj@suse.de>
72             Ulrich Drepper  <drepper@redhat.com>
73
74         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
75
76 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
77
78         * sysdeps/generic/dl-sysdep.h: Add double include protection.
79
80         * po/tr.po: Update from translation team.
81
82         * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
83         are holes between the segments.  Only call mprotect to set
84         proection to PROT_NONE if there are some.
85
86         * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
87         Update comment.
88
89         * include/sched.h (__clone2): Use ... instead of adding all the
90         new parameters.
91
92 2003-03-03  Roland McGrath  <roland@redhat.com>
93
94         * elf/dl-load.c (struct filebuf): Fix typo in last change.
95
96         * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
97         PI_STATIC_AND_HIDDEN.
98
99 2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>
100
101         * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
102         flags.
103         * include/sched.h: Update clone2 prototype.
104
105 2003-03-03  Andreas Jaeger  <aj@suse.de>
106
107         * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
108         (llrint): Use it to correct return type.
109         (lrint): Likewise.
110         (lround): Likewise.
111         (llround): Likewise.
112
113 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
114
115         * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
116         byte filebuf size.
117
118         * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
119         if ccs parameter isn't valid.  Reported by Andreas Schwab.
120
121 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
122
123         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
124         for system call numbers > 255.
125         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
126         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
127         INTERNAL_SYSCALL): Likewise.
128         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
129         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
130         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
131         INTERNAL_SYSCALL): Likewise.
132
133 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
134
135         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
136         array if it is the initial dtv.
137
138 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
139
140         * po/es.po: Update from translation team.
141         * po/fr.po: Likewise.
142         * po/gl.po: Likewise.
143         * po/sk.po: Likewise.
144         * po/sv.po: Likewise.
145
146         * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
147         * misc/sys/mman.h: Add prototype for remap_file_pages.
148         * sysdeps/generic/remap_file_pages.c: New file.
149         * misc/Makefile (routines): Add remap_file_pages.
150         * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
151
152         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
153         and MAP_NONBLOCK.
154         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
155         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
156         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
157         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
158         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
159         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
160         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
161         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
162
163 2003-03-03  Roland McGrath  <roland@redhat.com>
164
165         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
166         * sysdeps/ia64/dl-machine.h: Likewise.
167         * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
168         argument type.
169         * sysdeps/ia64/dl-lookupcfg.h: Update decl.
170
171         * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
172         * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
173         * locale/Versions (libc: GLIBC_2.3): Move those to ...
174         * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
175         * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
176         * Versions.def (libc): Add GLIBC_2.3.3 set.
177
178         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
179         * sysdeps/ia64/dl-machine.h: Update decl.
180
181 2003-03-03  Andreas Jaeger  <aj@suse.de>
182
183         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
184
185 2003-03-02  Roland McGrath  <roland@redhat.com>
186
187         * scripts/abilist.awk: Reject data items with apparent 0 size.
188
189         * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
190         after foo.* as if it were a duplicate.
191
192         * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
193
194 2003-03-02  Ulrich Drepper  <drepper@redhat.com>
195
196         * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
197
198         * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
199         * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
200         if not already defined.  Use SYSDEP_GETRES to allow other files to
201         provide alternative implementations.
202         * sysdeps/unix/sysv/linux/clock_getres.c: New file
203         * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
204         if not already defined.  Use SYSDEP_GETTIME to allow other files to
205         provide alternative implementations.
206         * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
207         * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
208         if not already defined.  Use SYSDEP_GETTIME to allow other files to
209         provide alternative implementations.
210         * sysdeps/unix/sysv/linux/clock_settime.c: New file.
211         * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
212         other files to provide alternative implementations.  Rearrange
213         tests for invalid parameters.
214         * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
215         * sysdeps/unix/sysv/linux/sysconf.c: New file.
216         * sysdeps/unix/sysv/linux/kernel-features.h: Define
217         __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
218         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
219         _POSIX_MONOTONIC_CLOCK.
220
221 2003-03-02  Roland McGrath  <roland@redhat.com>
222
223         * scripts/merge-abilist.awk: More checks for bogus input.
224         Uniquify duplicate config names.
225
226         * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
227
228         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
229         from dl_reloc_overflow, make global.
230         (__process_machine_rela): Update callers.
231         * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
232         Add attribute_hidden to __process_machine_rela decl.
233         (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
234
235         * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
236         variable.
237
238         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
239         Don't use weak_extern for dl_rtld_map.  Instead check only if [SHARED].
240         (elf_machine_rela): Clean up.
241
242         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
243
244         PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
245         * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
246         * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
247         * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
248         (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
249         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
250         new relocs for TLS.
251
252         * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
253         macros out of [SHARED].
254         (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
255
256         * elf/elf.h: Define R_PPC_* relocs for TLS support.
257         Clean up R_PPC64_* macro definition comments.
258
259         * configure.in: In "running configure fragment for" message,
260         omit $srcdir from the name if we prepended it.
261         * configure: Regenerated.
262
263         * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
264         From Jakub Jelinek <jakub@redhat.com>.
265
266         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
267         which duplicated the O_DIRECT defn.
268
269 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
270
271         * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
272         random functions.
273
274 2003-03-01  Andreas Schwab  <schwab@suse.de>
275
276         * resolv/Makefile (tests): Don't depend on
277         $(objpfx)mtrace-tst-leaks when cross compiling.
278
279         * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
280         __libc_stack_end through GOT since it is a global symbol.
281
282 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
283
284         * argp/argp.h: Fix a typo.
285         Reported by H.S.Teoh <hsteoh@quickfur.ath.cx>.
286
287         * manual/terminal.texi: Fix cfmakeraw() definition from int to void.
288
289 2003-02-27  Pat Rankin  <rankin@pactechdata.com>
290
291         * posix/regexec.c (proceed_next_node): Cast re_string_get_buffer to
292         char *.
293         (get_subexp): Likewise.
294
295 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
296
297         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DIRECT): Define.
298
299 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
300
301         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_DIRECT): Define.
302
303 2003-02-27  Roland McGrath  <roland@redhat.com>
304
305         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Remove
306         special case for dl_rtld_map in R_PPC64_RELATIVE; it's harmless to
307         repeat it and avoids the test for the common case.
308         Clean up and fix calculations for TLS relocs.
309
310         * sysdeps/powerpc/powerpc64/dl-tls.h: Moved to ...
311         * sysdeps/powerpc/dl-tls.h: ... here.
312         (TLS_TP_OFFSET): New macro.
313
314         * sunrpc/svc_udp.c (svcudp_recv): Add a cast to last change.
315
316 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
317
318         * sysdeps/i386/fpu/libm-test-ulps: Increase ULPs for yn due to
319         code generation changes in recent gcc.
320
321 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
322
323         * sysdeps/powerpc/fpu/fpu_control.h (_FPU_GETCW, _FPU_SETCW):
324         Rename argument to avoid symbol conflict.
325
326         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
327         [__USE_GNU] (O_DIRECT): New macro.
328
329 2003-02-24  David Mosberger  <davidm@hpl.hp.com>
330
331         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
332         unwind info.
333
334 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
335
336         * resolv/res_libc.c [USE___THREAD] (_res): Don't need the
337         initializer anymore now that res_thread_freeres is more careful.
338
339         * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
340         except the PKTINFO.  Reset interface in PKTINFO.
341         Patch by Neil Brown <neilb@cse.unsw.edu.au> [PR libc/4973].
342
343 2003-02-25  Steven Munroe  <sjmunroe@us.ibm.com>
344
345         * elf/elf.h: Add new R_PPC64_* relocs for TLS.
346         * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
347         Define.
348         * sysdeps/powerpc/powerpc64/elf/configure.in: New file.
349         * sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
350         * sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
351         * sysdeps/powerpc/powerpc64/dl-tls.h: New file.
352
353         * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
354         Do DL_SYSDEP_OSCHECK here, matching 2002-12-01 change to generic file.
355
356 2003-02-25  Andreas Jaeger  <aj@suse.de>
357
358         * manual/memory.texi (Malloc Tunable Parameters): Clarify
359         behaviour of M_MMAP_THRESHOLD.
360
361 2003-02-25  Roland McGrath  <roland@redhat.com>
362
363         * resolv/res_init.c (res_thread_freeres): Bail out if _res.nscount is
364         zero, inidicating _res was not initialized yet.
365
366 2003-02-24  Ulrich Drepper  <drepper@redhat.com>
367
368         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remove EACCES
369         test.
370
371 2003-02-24  Roland McGrath  <roland@redhat.com>
372
373         * sysdeps/posix/pause.c: Add LIBC_CANCEL_HANDLED.
374
375 2003-02-23  Roland McGrath  <roland@redhat.com>
376
377         * sysdeps/posix/pause.c: New file.
378         * sysdeps/unix/common/pause.c: File removed.
379
380 2003-02-23  Ulrich Drepper  <drepper@redhat.com>
381
382         * sysdeps/generic/bits/confname.h: Remove #ifs.
383
384         * posix/Makefile (CFLAGS-regex.c): Remove RE_ENABLE_I18N definition.
385         * posix/regex_internal.h (RE_ENABLE_I18N): Pretty printing.
386
387         * resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
388         element to -1.
389
390 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
391
392         * sysdeps/generic/dl-sysdep.c: Avoid warning.
393
394 2003-02-22  Roland McGrath  <roland@redhat.com>
395
396         * resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
397         * resolv/Makefile (tests): Add tst-leaks.
398         ($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
399         (tst-leaks-ENV): New variable.
400         ($(objpfx)mtrace-tst-leaks): New target.
401         (tests): Depend on it.
402
403         * include/libc-internal.h: Declare __libc_thread_freeres.
404
405         * Makerules: Fix last change to use $($(subdir)-version) when set.
406
407         * Makerules (install-lib-nosubdir): Depend on installed
408         libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
409         regardless of the libfoo.so target's dependencies.
410
411         * MakeTAGS (sub-make-vars): New variable, includes generating=t.
412         Use that in $(MAKE) calls.
413
414 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
415
416         * catgets/gencat.c (read_input_file): Collision between
417         auto-assigned numbers and user-defined nubmers is not fatal.
418         Handle it.
419         Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
420         * catgets/Makefile: Add rules to run test2.msg test.
421         * catgets/test2.msg: New file.
422
423         * catgets/gencat.c (main): Return 1 if messages have been printed.
424
425         * iconv/iconv_prog.c (main): Unify messages.
426
427         * stdlib/strtod.c (INTERNAL): Remove bogus clearing of second word
428         when shifting retval.
429         * stdlib/tst-strtod.c (main): Add strtold test case.
430         Reported by Fred J. Tydeman <tydeman@tybor.com>.
431
432 2003-02-21  Roland McGrath  <roland@redhat.com>
433
434         * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
435         * sunrpc/rpc_thread.c: Likewise for text_set_element use.
436         (__rpc_thread_destroy): Add it to __libc_subfreeres too.
437
438         * include/resolv.h: Add libc_hidden_proto for __res_nclose.
439         * resolv/res_init.c (__res_nclose): Add libc_hidden_def.
440         (res_thread_freeres): New function, on __libc_thread_subfreeres and
441         __libc_subfreeres.
442
443         * malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
444         * malloc/thread-freeres.c: New file.
445         * malloc/Makefile (aux): Add it.
446         * sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
447         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
448         "__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.
449
450         * sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
451         * sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.
452
453 2003-02-21  Roland McGrath  <roland@frob.com>
454
455         * sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.
456
457         * iconvdata/Makefile (tests): Add bug-iconv3 only if
458         [$(have-thread-library) = yes].
459
460 2003-02-21  Ulrich Drepper  <drepper@redhat.com>
461
462         * sysdeps/unix/sysv/linux/bits/signum.h (__SIGRTMAX): Define as _NSIG.
463
464         * sysdeps/unix/sysv/linux/i386/getuid.c: Use INTERNAL_SYSCALL and do
465         not chechk for errors (unless testing for 32bit variant).
466         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
467         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
468         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
469
470 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
471
472         * sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
473         Check for signed overflow, not unsigned.
474
475         * sysdeps/sparc/sparc64/elf/configure.in: New file.
476         * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep-CFLAGS):
477         Use -fcall-used-g6, not -fcall-used-g7.
478
479 2003-02-21  Andreas Jaeger  <aj@suse.de>
480
481         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
482         mode.
483
484         * sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
485         clear whole mxcsr but only exceptions.
486
487 2003-02-21  Roland McGrath  <roland@redhat.com>
488
489         * Makerules: Filter $(install-lib-ldscripts) out of list of targets
490         for libfoo.so that need $(make-link) rules.
491
492 2003-02-21  Roland McGrath  <roland@frob.com>
493
494         * sysdeps/mach/hurd/bits/typesizes.h (__DEV_T_TYPE): Use __U32_TYPE
495         to match existing struct stat layout in mig protocols.
496
497 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
498
499         * version.h (VERSION): Bump to 2.3.2.
500
501         * elf/Makefile (distribute): Add reldep9.c, tst-array1.exp,
502         tst-array2.exp, tst-array4.exp, tst-array2dep.c, check-textrel.c,
503         and dl-sysdep.h.
504         * sysdeps/generic/Dist: Add sysdep-cancel.h.
505         * sysdeps/powerpc/nofpu/Dist: Add soft-supp.h.
506         * sysdeps/unix/Dist: Add s-proto-bp.S and s-proto-cancel.S.
507         * sysdeps/unix/sysv/linux/Dist: Add pathconf.h.
508         * sysdeps/unix/sysv/linux/i386/Dist: Add bp-thunk.h.
509         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add fe_nomask.c and
510         ucontext_i.h.
511         * Makefile (distribute): Add include/stubs-prologue.h,
512         include/gnu/stubs.h, scripts/merge-abilist.awk, and
513         scripts/extract-abilist.awk.
514
515 2003-02-20  Roland McGrath  <roland@redhat.com>
516
517         * math/Makefile (distribute): Don't add generated files.
518
519 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
520
521         * math/Makefile: Rearrange variable definitions slightly to get
522         definition in the right order.
523
524 2003-02-20  Roland McGrath  <roland@redhat.com>
525
526         * Makerules: Clean up conditional around include of tls.make.
527         * Make-dist: Export generating=t to prevent using that.
528         (+distinfo): Likewise for $(shell $(MAKE) ...) runs.
529
530 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
531
532         * inet/rcmd.c (rresvport_af): Avoid using invliad values.  Wrap
533         around in search if port IPPORT_RESERVED/2 has been test.
534
535 2002-02-20  Paolo Bonzini  <bonzini@gnu.org>
536
537         * posix/regcomp.c: Remove inclusions.
538         * posix/regexec.c: Likewise.
539         * posix/regex_internal.c: Likewise.
540         * posix/regex_internal.h: Add inclusions here.
541         * posix/regex.c: Only include sys/types.h before regex.h.  Include
542         regex_internal.h here.  Include regex_internal.c before regcomp.c
543         and regexec.c (might expose more opportunities to the C compiler).
544
545         * posix/regcomp.c (parse_expression): Fix construct rejected by SGI CC.
546
547         * posix/regex_internal.h [!_LIBC] (__mempcpy): Fix typo.
548         [!_LIBC] (__wcrtomb): New definition.
549         [!_LIBC]: Conditionalize enabling of I18N on HAVE_WCSCOLL and
550         HAVE_LOCALE_H as well.
551
552 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
553
554         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Remove obsolete
555         patch to check for system call errors.
556
557 2002-07-24  Philip Blundell  <philb@gnu.org>
558
559         * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Yield ENODEV
560         on unknown systems.
561
562 2003-02-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
563
564         * sysdeps/powerpc/powerpc32/atomicity.h: Remove compiler workaround.
565         * sysdeps/unix/sysv/linux/kernel-features.h
566         (__ASSUME_NEW_PRCTL_SYSCALL): Defined for ppc32 too.
567         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Use prctl
568         if possible.
569         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Avoid short
570         interprocedure branches.
571         * sysdeps/powerpc/soft-fp/Dist (sim-full.c, fenv_const.c): Move to...
572         * sysdeps/powerpc/nofpu/Dist: ...here.
573         * sysdeps/unix/sysv/linux/powerpc/Dist (fe_nomask.c): Move to...
574         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: ...here.
575         * sysdeps/unix/sysv/linux/s390/s390-64/Dist (kernel_stat.h): Delete.
576         * sysdeps/unix/sysv/linux/sparc/Dist (bits/utmpx.h): Delete.
577         * sysdeps/unix/sysv/linux/x86_64/Dist (bits/utmpx.h): Delete.
578
579 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
580
581         * sysdeps/powerpc/powerpc32/sysdep.h (HIDDEN_JUMPTARGET): Redefine.
582
583 2003-02-20  Philip Blundell  <philb@gnu.org>
584
585         * sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Add
586         missing arguments to INTERNAL_SYSCALL_ERROR_P and
587         INTERNAL_SYSCALL_ERRNO.
588
589 2003-02-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
590
591         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__real_chown): Test
592         for __ASSUME_32BITUIDS.
593
594 2003-02-20  Andreas Schwab  <schwab@suse.de>
595
596         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Add MADV_* and
597         POSIX_MADV_* constants.
598
599 2003-02-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
600
601         * sysdeps/unix/sysv/linux/sh/pread.c: New file.
602         * sysdeps/unix/sysv/linux/sh/pread64.c: New file.
603         * sysdeps/unix/sysv/linux/sh/pwrite.c: New file.
604         * sysdeps/unix/sysv/linux/sh/pwrite64.c: New file.
605
606 2003-02-19  Jiro Sekiba  <jir@yamato.ibm.com>
607
608         * iconvdata/utf-16.c (gconv_end): Fix range of low surrogate.
609
610 2003-02-16  Roland McGrath  <roland@redhat.com>
611
612         * signal/signal.h: Include <sys/ucontext.h>, not <ucontext.h>.
613
614 2003-02-19  Ulrich Drepper  <drepper@redhat.com>
615
616         * stdlib/strtod.c (INTERNAL): Up the safety margin for cutting off
617         decimal input digits.
618         * stdlib/tst-strtod.c (main): Add test for strtof bug.
619
620 2003-02-18  Ulrich Drepper  <drepper@redhat.com>
621
622         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
623         invalid file descriptors and missing access permissions.
624
625 2003-02-17  Ulrich Drepper  <drepper@redhat.com>
626
627         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return 0 if no entry has
628         been found.
629
630         * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
631         TTY_NAME_MAX and not the _POSIX_* minimal value macros.
632         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
633         and LOGIN_NAME_MAX.
634
635 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
636             Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
637
638         * sysdeps/powerpc/elf/libc-start.c: Handle NONTLS_INIT_TP.
639         * sysdeps/powerpc/powerpc32/__longjmp.S: Remove R2 handling.
640         * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
641         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
642         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
643
644 2003-02-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
645
646         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Delete.
647         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Delete.
648         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Delete.
649         * sysdeps/unix/sysv/linux/powerpc/pread.c: Delete.
650         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Delete.
651         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Delete.
652
653         * sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: Move file...
654         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: ...here.
655         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Move file...
656         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
657
658         * sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
659         * sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
660         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
661         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
662
663 2003-02-14  Thorsten Kukuk  <kukuk@suse.de>
664
665         * nss/getent.c (print_hosts): Print all IP addresses of one host.
666
667 2003-02-15  Roland McGrath  <roland@frob.com>
668
669         * sysdeps/mach/hurd/tls.h: New file.
670         * sysdeps/mach/hurd/i386/tls.h: New file.
671
672         * mach/errsystems.awk: Include <errno.h> in generated output.
673
674         * sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
675         use target mach-before-compile instead of generated.
676         (mach-before-compile): New target.
677         * Makerules: Disable use of tls.make if $(generating) is set.
678         * mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
679         * sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
680         mach-shortcuts.h so mach/ generation happens before hurd/.
681
682 2003-02-14  Ulrich Drepper  <drepper@redhat.com>
683
684         * sysdeps/i386/fpu/s_nextafterl.c: Decrement high word of mantissa
685         of demorm correctly if low word is zero.
686         Reported by Fred J. Tydeman <tydeman@tybor.com>.
687         * math/libm-test.inc (nextafter_test): New test, but disabled due
688         to gcc bug.
689
690         * sysdeps/generic/libc-start.c [HAVE_PTR_NTHREADS]: Decrement thread
691         counter and only call __exit_thread if this is not the last thread.
692
693 2003-02-13  Jakub Jelinek  <jakub@redhat.com>
694
695         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
696         subtracting map->l_tls_offset.
697
698 2003-02-12  Ulrich Drepper  <drepper@redhat.com>
699
700         * sysdeps/generic/bits/confname.h: Define _CS_GNU_LIBC_VERSION and
701         _CS_GNU_LIBPTHREAD_VERSION.
702         * posix/conststr.c: Handle these new values.
703         * posix/getconf.c: Likewise.
704
705         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix
706         masking of version index.
707         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
708
709 2003-02-11  Ulrich Drepper  <drepper@redhat.com>
710
711         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Compute alignment
712         correctly.  Reported by Thorsten Kukuk.
713
714 2003-02-10  Ulrich Drepper  <drepper@redhat.com>
715
716         * elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
717         _BSD_SOURCE to compiler.
718         * elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
719         Patches by Alan Modra.
720
721 2003-02-08  Ulrich Drepper  <drepper@redhat.com>
722
723         * io/ftwtest.c: Get current working directory before and after the
724         nftw call and make sure they match.
725
726 2003-02-08  Jim Meyering  <jim@meyering.net>
727
728         * io/ftw.c (ftw_startup): When using FTW_CHDIR, always remember
729         the current directory, not just when DIR contains a slash.
730         Reported by Manoj Srivastava.
731
732 2003-02-07  Jim Meyering  <jim@meyering.net>
733
734         * io/ftw.c: Add autoconf-recommended block of alloca-related code.
735         Include autoconf-recommended block of dirent/NAMELEN-related
736         definitions and includes.  Use NAMELEN throughout, rather than
737         _D_EXACT_NAMLEN.
738         [_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
739         [!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
740         (stpcpy): Declare, if necessary.
741         (mempcpy): Define, if necessary.
742         [!_LIBC] (__stpcpy, __mempcpy): Define.
743         [!_LIBC] (LXSTAT, XSTAT): Define.
744         (lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
745         (find_object): Don't use c99-style struct initializer.
746         Tweak wording in a couple comments.
747
748 2003-02-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
749
750         * elf/tls-macros.h: Add non-PIC TLS macros and fix clobber list
751         for SH.
752         * sysdeps/unix/sysv/linux/sh/brk.c: Add SYSCALL_INST_PAD
753         after the trapa instruction.
754         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Add additional
755         parameters.
756         * sysdeps/unix/sysv/linux/sh/sh4/sysdep.h: New file.
757         (NEED_SYSCALL_INST_PAD): Define.
758         * sysdeps/unix/sysv/linux/sh/sys/user.h (start_thread): Undef to
759         avoid to use definition for the kernel.
760         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
761         Save and restore the frame pointer.
762         (SYSCALL_INST_PAD): Define.
763         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
764         (INTERNAL_SYSCALL): Make use of ERR parameter. Add SYSCALL_INST_PAD
765         after trapa instruction.
766         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
767         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
768
769 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
770
771         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
772         so that it can have aliases.
773         * inet/herrno.c (h_errno): Put it into .bss not .data section.
774
775 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
776
777         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
778         (profile_fixup): Likewise.
779         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
780
781 2002-11-24  Robert Love  <rml@tech9.net>
782
783         * posix/sched.h: Second parameter of sched_setaffinity and
784         sched_getaffinity is `unsigned int', not `unsigned long'.
785         * sysdeps/generic/sched_setaffinity.c: Likewise.
786         * sysdeps/generic/sched_getaffinity.c: Likewise.
787
788 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
789
790         * debug/catchsegv.sh: Fix typo in error messsage.
791         Reported by John Levon <levon@movementarian.org>.
792
793         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
794         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
795         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
796         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
797         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
798         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
799         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
800
801         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
802         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
803
804 2003-02-05  Jim Meyering  <jim@meyering.net>
805
806         Fix a heap-corrupting bug.
807         * io/ftw.c: Include <limits.h>.
808         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
809         (process_entry): Allocate enough space to hold the resulting
810         file name.  Don't presume that 2*dirbufsize is enough.
811         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
812         it is guaranteed to be defined.
813
814 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
815
816         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
817         * iconvdata/bug-iconv3.c: New file.
818
819 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
820
821         * sysdeps/unix/sysv/linux/s390/system.c: New file.
822
823 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
824
825         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
826         check.
827         * config.h.in (BROKEN_SPARC_WDISP22): Add.
828
829 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
830
831         * sysdeps/i386/i686/memmove.S: New file.
832
833 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
834
835         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
836         Include kernel-features.h
837         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
838         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
839         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
840         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
841
842 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
843
844         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
845
846 2003-01-25  Jim Meyering  <jim@meyering.net>
847
848         * io/ftw.c (object_compare): Compare inode numbers before device
849         numbers, since the former are much more likely to differ.
850
851 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
852
853         * time/tzfile.c (__tzfile_compute): Change return value type to
854         void.  Adjust return statements.
855         * include/time.h (__tzfile_compute): Adjust prototype.
856
857 2003-02-01  Jim Meyering  <jim@meyering.net>
858
859         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
860         always returns 1.
861
862 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
863
864         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
865         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
866
867 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
868
869         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
870         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
871         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
872         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
873         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
874         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
875         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
876         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
877
878 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
879
880         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
881         back to 2.4.19 for powerpc64.
882         * sysdeps/unix/sysv/linux/kernel-features.h
883         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
884         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
885
886 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
887
888         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
889         platforms with strange alignment requirements on wchar_t.
890
891 2003-01-31  Andreas Schwab  <schwab@suse.de>
892
893         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
894         aliases, already added by make-syscalls.sh.
895         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
896         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
897         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
898         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
899         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
900         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
901         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
902         * sysdeps/unix/inet/syscalls.list: Likewise.
903         * sysdeps/unix/syscalls.list: Likewise.
904
905 2003-01-31  Andreas Schwab  <schwab@suse.de>
906
907         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
908         any more.
909
910 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
911
912         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
913         not l to load tls from stack.
914
915 2003-01-30  Roland McGrath  <roland@redhat.com>
916
917         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
918         null argument before all else.
919         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
920
921 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
922
923         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
924         Move to RESOLVE protected part of the header.
925         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
926         Likewise.
927
928 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
929
930         * stdio-common/Makefile (tests): Add bug15.
931         (bug15-ENV): Define.
932         * stdio-common/bug15.c: New file.
933
934 2002-10-07  Wolfram Gloger  <wg@malloc.de>
935
936         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
937         to foreign sbrk()'s if arena is contiguous.  Bug report from
938         Bruno Haible <bruno@clisp.org>.
939
940 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
941
942         * sysdeps/s390/libc-tls.c: Include stdlib.h.
943
944 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
945
946         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
947         ps.__count.
948
949 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
950
951         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
952         restoring of %r6.
953         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
954         64-bit load.
955         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
956
957 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
958
959         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
960         (allocate_static_tls): ...here.  Add __attribute_noinline__.
961         Don't return on failure.
962         (_dl_reloc_bad_type): Add __attribute_noinline__.
963         * elf/do-rel.h (elf_dynamic_do_rel): Add
964         __attribute__((always_inline)).
965         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
966         elf_machine_rel_relative, elf_machine_rela_relative,
967         elf_machine_lazy_rel): Add prototypes with
968         __attribute__((always_inline)).
969
970 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
971
972         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
973
974 2003-01-29  Roland McGrath  <roland@redhat.com>
975
976         * configure.in: Barf if configured in $srcdir.
977
978 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
979
980         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
981         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
982
983 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
984
985         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
986         clone parameters to match the order used on ia32.
987         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
988
989 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
990
991         * elf/elf.h: Add new s390 relocs.
992         * elf/tls-macros.h: Add s390 versions.
993         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
994         * sysdeps/s390/dl-tls.h: New file.
995         * sysdeps/s390/libc-tls.c: New file.
996         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
997         relocs for class PLT.
998         (elf_machine_rela): Handle TLS relocs.
999         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
1000         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
1001         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
1002         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
1003         CLONE_CHILD_*TID flags.
1004         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
1005         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
1006         bit offset.
1007         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
1008         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
1009         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
1010         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
1011         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
1012         Likewise.
1013         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
1014         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
1015         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
1016         variants.
1017         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
1018         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
1019         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
1020         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
1021         variants.
1022
1023 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
1024
1025         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
1026         from __libc_pause.  Implement using sigsuspend.
1027         (__libc_pause): Call do_pause to do the real work.
1028
1029         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
1030         sig_or_mask parameter is is_sig != 0.
1031
1032 2003-01-21  Philip Blundell  <philb@gnu.org>
1033
1034         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
1035
1036 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
1037
1038         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
1039
1040 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
1041
1042         * stdio-common/bug14.c: Use official name for the locale.
1043
1044         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
1045         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
1046         instead of __libc_cleanup_region_end.
1047
1048         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
1049         as first parameter to __libc_cleanup_region_start.
1050
1051         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
1052         (__fe_nomask_env): Use __prctl not prctl.
1053         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
1054         prctl syscall.
1055
1056         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
1057
1058         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
1059
1060         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
1061         wrap-around in test.
1062
1063 2003-01-26  Andreas Schwab  <schwab@suse.de>
1064
1065         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
1066         compatibility symbols.  Remove INTDEF for __divdi3.
1067         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
1068         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
1069         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
1070         define.
1071         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
1072
1073 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
1074
1075         * elf/tls-macros.h: Add SPARC 32-bit definitions.
1076         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
1077         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
1078         for the first half of the header.  Include tls.h.
1079         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
1080         relocs too.
1081         (elf_machine_rela): Handle TLS relocs.
1082         * sysdeps/sparc/dl-tls.h: New file.
1083
1084         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
1085         support.
1086
1087         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
1088         * sysdeps/sparc/sparc32/memchr.S: Likewise.
1089         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
1090         * sysdeps/sparc/sparc32/strcat.S: Likewise.
1091         * sysdeps/sparc/sparc32/strchr.S: Likewise.
1092         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
1093         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
1094         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
1095         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
1096         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
1097         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
1098         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
1099         * sysdeps/sparc/sparc64/strcat.S: Likewise.
1100         * sysdeps/sparc/sparc64/strchr.S: Likewise.
1101         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
1102         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
1103         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
1104         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
1105         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
1106         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
1107
1108 2003-01-24  Andreas Schwab  <schwab@suse.de>
1109
1110         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
1111         elements, and process them backwards.
1112         * elf/Makefile ($(objpfx)tst-array4): New target.
1113         ($(objpfx)tst-array4.out): Likewise.
1114         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
1115         * elf/tst-array4.c: New file.
1116         * elf/tst-array4.exp: Likewise.
1117
1118 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
1119
1120         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
1121
1122 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
1123
1124         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
1125         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
1126         cancellation handling and handle both __NR_pread64 and __NR_pread.
1127         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1128         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
1129         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
1130         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
1131         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
1132         case, use register names consistently.
1133
1134 2003-01-27  Wolfram Gloger  <wg@malloc.de>
1135
1136         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
1137         pointer, not of the computed chunk.  Bug report from Carlos
1138         O'Donell <carlos@baldric.uwo.ca>.
1139
1140 2003-01-25  Andreas Schwab  <schwab@suse.de>
1141
1142         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
1143         addressing to save GOT entries.
1144
1145 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
1146
1147         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
1148         inline_syscall1, inline_syscall2, inline_syscall3,
1149         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
1150         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
1151         __attribute__((unused)) to ChEcK.
1152
1153 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1154
1155         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
1156         Fix inline assembler constraints.
1157         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
1158         Likewise.
1159
1160         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
1161         -fPIC.
1162
1163 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
1164
1165         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
1166         compute the cosine, not the sine, even if x > 0.8.
1167
1168 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
1169
1170         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
1171         _nss_nis_setspent.  Work around the different prototypes.
1172         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
1173         internal_nis_endrpcent.
1174         (internal_nis_endrpcent): Change return type to void.  Change callers.
1175         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
1176         _nss_nis_setpwent.  Work around the different prototypes.
1177         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
1178         of the function to...
1179         (internal_nis_endprotoent): ... here.  New function.
1180         (internal_nis_setprotoent): Use internal_nis_endprotoent.
1181         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
1182         _nss_nis_setnetent.  Work around the different prototypes.
1183         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
1184         of the function to...
1185         (internal_nis_endnetgrent): ... here.  New function.
1186         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
1187
1188 2003-01-19  Jim Meyering  <jim@meyering.net>
1189
1190         * time/strftime.c: (widen): Merge nearly-identical definitions.
1191         (nl_get_alt_digit) [! defined my_strftime]: Define.
1192         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
1193         _nl_get_alt_digit and _nl_get_walt_digit.
1194
1195 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
1196
1197         * time/strftime.c (my_strftime): Handle very large width
1198         specifications for numeric values correctly.  Improve checks for
1199         overflow.
1200         * time/Makefile (tests): Add tst-strftime.
1201         * time/tst-strftime.c: New file.
1202
1203 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
1204
1205         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
1206         _nss_nis_sethostent.  Work around the different prototypes.
1207         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
1208         _nss_nis_setgrent.  Work around the different prototypes.
1209         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
1210         function.  Split out from _nss_nis_endetherent.
1211         (internal_nis_setetherent): Use internal_nis_endetherent instead of
1212         duplicating the code.
1213         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
1214         of _nss_nis_setaliasent.
1215         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
1216         internal_nis_endservent code, don't duplicate it.
1217
1218         * inet/rexec.c (rexec_af): Protect socket operations with
1219         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
1220         * inet/rcmd.c (rcmd_af): Likewise.
1221
1222 2003-01-17  Roland McGrath  <roland@redhat.com>
1223
1224         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
1225         Add test of value 0.80190127184058835.
1226
1227         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
1228
1229 2003-01-17  Richard Henderson  <rth@redhat.com>
1230
1231         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
1232         relocs for class PLT.
1233         * sysdeps/alpha/libc-tls.c: New file.
1234         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
1235         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
1236
1237 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
1238
1239         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
1240         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
1241         on _dl_static_lock.
1242
1243 2003-01-17  Andreas Jaeger  <aj@suse.de>
1244
1245         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
1246
1247 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
1248
1249         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
1250         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
1251         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
1252         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
1253         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
1254         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
1255         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
1256         is 2.4.21.
1257
1258 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
1259
1260         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
1261         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
1262         buffers.
1263
1264         * sysdeps/generic/sysconf.c: Unconditionally implement
1265         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
1266         * sysdeps/posix/sysconf.c: Likewise.
1267
1268 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
1269
1270         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
1271         set *err to the returned error, not to REG_ESPACE unconditionally.
1272         (build_word_op): Likewise.
1273         * posix/Makefile (tests): Add bug-regex16.
1274         * posix/bug-regex16.c: New test.
1275
1276 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
1277
1278         * elf/dl-load.c (_dl_map_object_from_fd): Use
1279         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
1280         been already initialized.
1281
1282 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
1283
1284         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
1285
1286 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
1287
1288         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
1289         allocated too.  Reported by Al Viro <aviro@redhat.com>.
1290
1291 2003-01-16  Roland McGrath  <roland@redhat.com>
1292
1293         Tweak merged .abilist file format to merge duplicate symbols in
1294         different sets into multi-version stanzas with new "| SET regexp..."
1295         header continuation lines.
1296         * scripts/merge-abilist.awk: Rewritten for new format.
1297         * scripts/extract-abilist.awk: Likewise.
1298
1299 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
1300
1301         * nscd/connections.c (nscd_run): Remove bogus return which isn't
1302         necessary with gcc 3.2+.
1303         (nscd_init): Don't use error() to print message, use dbg_log.
1304
1305         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
1306         expected size into state.
1307         (UNPACK_BYTES): Do the reverse.
1308         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
1309         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
1310         Reported by Al Viro <aviro@redhat.com>.
1311
1312         * stdio-common/Makefile (tests): Add bug14.
1313         * stdio-common/bug14.c: New file.
1314
1315         * stdio-common/vfscanf.c: When recognizing multibyte characters in
1316         string reset the byte counter after mbrtowc reported it is not a
1317         partial character.  Reported by Al Viro <aviro@redhat.com>.
1318
1319 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
1320
1321         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
1322         sysdep-cancel.h, not sysdep.h.
1323
1324 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
1325
1326         * nscd/connections.c (nscd_run): Protect accept call with
1327         TEMP_FAILURE_RETRY.
1328
1329 2003-01-15  Andreas Schwab  <schwab@suse.de>
1330
1331         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
1332         (common-generated): Add s-proto-bp.d.
1333         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
1334         of bp thunks.
1335         * sysdeps/unix/s-proto-bp.S: New file.
1336         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
1337         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
1338         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
1339
1340 2003-01-15  Roland McGrath  <roland@redhat.com>
1341
1342         * Makerules: Use -include for tls.make, suppresses warning.
1343         Move gen-as-const-headers rules up so before-compile is set in time.
1344         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
1345
1346 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
1347
1348         * nscd/nscd.c (main): Make code to close all file descriptors
1349         faster and more robust.
1350
1351         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
1352         request with one writev call.  Protect all read calls with
1353         TEMP_FAILURE_RETRY.
1354         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
1355         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
1356
1357         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
1358         Protect writev calls with TEMP_FAILURE_RETRY.
1359         * nscd/grpcache.c: Likewise.
1360         * nscd/pwdcache.c: Likewise.
1361
1362         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
1363         IPv6 address in debug output.
1364
1365 2003-01-14  Roland McGrath  <roland@redhat.com>
1366
1367         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
1368         $(objpfx) directories, and get rid of vpath directives.  The previous
1369         arrangement resulted in files being written to the source directories
1370         when run in a clean build.  Find all .abilist files in $(..)abilist/.
1371         (update-abi-%): Likewise.
1372         (generated): Don't add .symlist files, they'll be intermediates.
1373
1374         * sysdeps/generic/init-first.c: Add a comment.
1375
1376         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
1377
1378         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
1379         #includes and expressions.
1380
1381         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
1382         config list when it already contains cpu-.*-os.* without / part.
1383
1384         * Makerules (sed-remove-dotdot): New variable.
1385         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
1386         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
1387         (check-abi-config): New variable, append /tls or /notls to the tuple.
1388         (check-abi-%): Use that for -v config value.
1389         Find .abilist files in abilist/libfoo.abilist, not in subdir.
1390         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
1391
1392 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
1393
1394         * manual/install.texi: Correct description of header preparation for
1395         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
1396
1397 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
1398
1399         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
1400         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
1401         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
1402
1403 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
1404
1405         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
1406         (INTERNAL_SYSCALL): Make use of ERR parameter.
1407         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
1408         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
1409         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
1410         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
1411
1412 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
1413
1414         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
1415         == IPPROTO_TCP.
1416         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
1417
1418         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
1419         Fix entry for bit 31.
1420
1421         * iconvdata/Makefile: Add rules to build IBM866NAV.
1422         * iconvdata/ibm866nav.c: New file.
1423         * iconvdata/tst-tables.sh: Add IBM866NAV.
1424         * iconvdata/gconv-modules: Add entries for IBM866NAV.
1425
1426 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
1427
1428         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
1429         to test void* parameters.
1430
1431         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
1432         source pointer before dereferencing.
1433         (__STRING_SMALLL_GET32): Likewise.
1434         (__memset_gc): Add missing parenthesis around macro arguments.
1435         Patch by Denis Zaitsev <zzz@cd-club.ru>.
1436
1437         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
1438         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
1439
1440 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
1441
1442         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
1443         defining.
1444
1445 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1446
1447         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
1448         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
1449         here.
1450         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
1451
1452 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1453
1454         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
1455         from here...
1456         (PSEUDO): ... to here.
1457         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
1458         from here...
1459         (PSEUDO): ... to here.
1460
1461 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
1462
1463         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
1464         dirent64 instead of struct dirent for dirent.  Call readdir64
1465         instead of readdir.
1466
1467         * locale/programs/locfile.c (siblings_uncached): Use struct
1468         dirent64 instead of struct dirent for other_dentry.  Call
1469         readdir64 instead of readdir.
1470
1471         * elf/ldconfig.c (direntry): Change type to struct dirent64.
1472         (search_dir): Use readdir64 instead of readdir.
1473         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
1474
1475 2003-01-12  Roland McGrath  <roland@redhat.com>
1476
1477         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
1478         not strtol.  The former is usable in ld.so, the latter not.
1479
1480         * include/fcntl.h: Declare __libc_creat.
1481
1482         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
1483         libhurduser-link.so-no-z-defs): New variables.
1484
1485         * malloc/malloc.c: Revert last change.
1486         * malloc/malloc.h (_int_*): Move these decls to ...
1487         * include/malloc.h: ... here.  Add attribute_hidden.
1488         (_int_valloc): Declare it too.
1489
1490 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
1491
1492         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
1493         search for removed searchlist.  Reported by Roland McGrath.
1494
1495         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
1496         given as start file.
1497
1498         * io/ftw.c (ftw_startup): Use correct name in check for symlink
1499         without existing target.  Patch by Jim Meyering.
1500
1501         * Makerules (build-shlib-helper): Don't use -z defs linker option
1502         if no-z-defs is defined either.
1503
1504 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1505
1506         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
1507         file.
1508
1509 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1510
1511         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
1512         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
1513
1514 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
1515
1516         * io/ftwtest-sh: Add test case for relative path with /. at the end.
1517
1518 2003-01-12  Jim Meyering  <jim@meyering.net>
1519
1520         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
1521         use the basename if we've already chdir'd into its parent directory.
1522
1523 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
1524
1525         * io/ftw.c (process_entry): Use relative path when using chdir()
1526         to change directory after call to ftw_dir.
1527         * io/ftwtest-sh: Add test for relative path argument to nftw()
1528         with FTW_CHDIR option.
1529
1530 2002-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1531
1532         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
1533         Define for powerpc.
1534         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
1535         into account.
1536         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
1537         (INTERNAL_SYSCALL): Make use of ERR parameter.
1538         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
1539         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
1540         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
1541         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
1542
1543 2002-01-09  Richard Henderson  <rth@redhat.com>
1544
1545         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
1546         DTPREL64 and TPREL64 without loadbase applied.
1547
1548 2002-01-09  Richard Henderson  <rth@redhat.com>
1549
1550         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
1551         for NOT_IN_libc.
1552
1553         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
1554         * sysdeps/unix/alpha/sysdep.h: ... here.
1555         (PSEUDO_LOADGP): Remove.
1556         (PSEUDO_PROLOGUE): Load GP in non-pic case.
1557         (SYSCALL_ERROR_LABEL): New.
1558         (PSEUDO): Use it in error branch.
1559         (PSEUDO_END): Add $syscall_error label.
1560
1561 2003-01-12  Andreas Jaeger  <aj@suse.de>
1562
1563         * math/bits/mathcalls.h: Round is a const function.
1564
1565 2003-01-11  Jim Meyering  <jim@meyering.net>
1566
1567         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
1568         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
1569         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
1570         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
1571         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
1572         [!_LIBC] (internal_function, dirent64, MAX): Define.
1573         (__set_errno): Define if not already defined.
1574         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
1575         the basename, not the entire file name.
1576         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
1577         the basename, not the entire file name.
1578
1579 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
1580
1581         * string/tester.c (test_strcpy): Disable last added strcpy until
1582         it is fixed.
1583
1584 2003-01-11  Philip Blundell  <philb@gnu.org>
1585
1586         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
1587
1588 2003-01-11  Andreas Schwab  <schwab@suse.de>
1589
1590         * Makerules: Add vpath for %.dynsym and %.so so that the
1591         implicit rule chaining for check-abi works.
1592
1593 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1594
1595         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
1596         Add non-PIC case.
1597
1598 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
1599
1600         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
1601         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
1602         gp is used early.
1603         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
1604         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
1605         Ensure libc.so in DT_NEEDED.
1606         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
1607         CHECK_STATIC_TLS before l_tls_offset use.
1608         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
1609         Likewise.
1610         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
1611         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
1612         Allocate TLS_PRE_TCB_SIZE bytes below result.
1613         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
1614         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
1615         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
1616         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
1617         bytes below result and add tcb_offset to memsz.
1618         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
1619         * sysdeps/ia64/dl-machine.h: Include tls.h.
1620         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
1621         too.
1622         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
1623         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
1624         * sysdeps/ia64/libc-tls.c: New file.
1625
1626 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
1627
1628         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
1629         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
1630         Fix type.  Move definition out of #if.
1631         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
1632         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
1633         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
1634         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
1635         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
1636         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
1637         support.
1638         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
1639         ftruncate64, pread64, pwrite64, truncate64 entries.
1640         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
1641         (INLINE_SYSCALL): New version that supports function call like
1642         syscalls.  Add __builtin_expect.
1643         (LOADARGS_n): Add argument size safety checks.
1644         (INTERNAL_SYSCALL): New Macro.
1645         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
1646         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
1647         redefinition of elf_fpreg_t and elf_fpregset_t.
1648
1649 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
1650
1651         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
1652         simplify test for unloading.  If loader of a DSO is unloaded do not
1653         use its scope anymore.  Fall back to own scope and adjust opencounts.
1654         Fix several comments.
1655         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
1656         the l_searchlist, not only for l_initfini.
1657
1658         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
1659         dependencies if objects cannot be removed.  Remove object with the
1660         definition as not unloadable if necessary.
1661
1662         * elf/reldep6.c: Create relocation dependency before closing the first
1663         module.
1664
1665 2003-01-10  Guido Günther  <agx@sigxcpu.org>
1666
1667         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
1668         * sysdeps/unix/mips/brk.S: Likewise.
1669         * sysdeps/unix/mips/pipe.S: Likewise.
1670
1671 2003-01-10  Andreas Schwab  <schwab@suse.de>
1672
1673         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
1674
1675         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
1676         are known to have the vfork syscall.
1677
1678         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
1679
1680         * sysdeps/unix/sysv/linux/kernel-features.h
1681         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
1682         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
1683         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
1684
1685 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
1686
1687         * elf/Makefile: Add rules to build and run reldep9 test.
1688         * elf/reldep9.c: New file.
1689         * elf/reldep9mod1.c: New file.
1690         * elf/reldep9mod2.c: New file.
1691         * elf/reldep9mod3.c: New file.
1692
1693 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
1694
1695         * elf/Makefile: Add rules to build and run nodelete2 test.
1696         * elf/nodelete2.c: New file.
1697         * elf/nodel2mod1.c: New file.
1698         * elf/nodel2mod2.c: New file.
1699         * elf/nodel2mod3.c: New file.
1700
1701 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
1702
1703         * posix/test-vfork.c (noop): Add __attribute_noinline__.
1704         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
1705         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
1706         defining it.
1707         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
1708         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
1709         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
1710         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
1711         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
1712
1713 2003-01-09  Andreas Schwab  <schwab@suse.de>
1714
1715         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
1716
1717 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
1718
1719         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
1720         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
1721         argument.
1722         (INTERNAL_SYSCALL_DECL): Define.
1723
1724 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
1725
1726         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
1727         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
1728         argument.
1729         (INTERNAL_SYSCALL_DECL): Define.
1730         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
1731         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
1732         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
1733         (INLINE_SYSCALL): Adjust.
1734         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
1735         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
1736         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
1737         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
1738         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
1739         add err argument to INTERNAL_SYSCALL* macros.
1740         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
1741         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
1742         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
1743         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
1744         Likewise.
1745         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
1746         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
1747         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
1748
1749 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
1750
1751         Unify symbols in user namespace exported by libc.so and libc.a.
1752         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
1753         argp_fmtstream_free, and argp_fmtstream_printf.
1754         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
1755         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
1756         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
1757         argp_fmtstream_point.
1758         * gmon/gmon.c: Don't define write_profiling.
1759         * libio/genops.c: Don't define _cleanup.
1760
1761         * intl/explodename.c (_nl_find_language.c): Mark as static.
1762         * intl/loadinfo.h: Remove _nl_find_language prototype.
1763
1764         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
1765         * libio/libioP.h: Remove declaration.
1766
1767         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
1768         * libio/libioP.h: Remove declaration.
1769
1770         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
1771         * sysdeps/generic/framestate.c: Define STATIC before including
1772         unwind-dw2.c.
1773
1774         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
1775
1776 2003-01-06  Philip Blundell  <philb@gnu.org>
1777
1778         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
1779         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
1780
1781         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
1782         directive.
1783         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
1784         (SYSCALL_ERROR): New.
1785         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
1786         handling code.
1787         (INTERNAL_SYSCALL): Define.
1788         (INLINE_SYSCALL): Use it.
1789         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
1790         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
1791         SYSCALL_ERROR in place of __syscall_error.
1792
1793 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
1794
1795         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
1796         __bswap_32, __bswap_64): Put x into temporary variable
1797         to avoid warnings.
1798         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
1799         (inline) functions.
1800         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
1801         __bswap_32, __bswap_64): Put x into temporary variable
1802         to avoid warnings.
1803         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
1804         (inline) functions.
1805         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
1806         Likewise.
1807
1808 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
1809
1810         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
1811         alias.
1812
1813 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
1814
1815         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
1816         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
1817
1818 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
1819
1820         * math/libm-test.inc (significand_test): New function.
1821         (main): Call it.
1822
1823 2003-01-06  Roland McGrath  <roland@redhat.com>
1824
1825         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
1826         arguments.
1827         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
1828         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
1829         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
1830
1831         * string/tester.c (test_strcpy): Add test with `void *' arguments.
1832
1833 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
1834
1835         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
1836         return significand and not the exponent.
1837         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
1838
1839         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
1840         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
1841
1842         * malloc/malloc.c: Mark all _int_* functions as static.
1843
1844 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
1845
1846         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
1847         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
1848         handling.
1849         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
1850
1851 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1852
1853         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
1854         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
1855         support.
1856         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
1857         ftruncate64, truncate64, pread64 and pwrite64 entries.
1858         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
1859         (INLINE_SYSCALL): Add __builtin_expect.
1860         (LOADARGS_n): Add argument size safety checks.
1861         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
1862         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
1863         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
1864         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
1865         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
1866         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
1867
1868 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
1869
1870         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
1871         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
1872         (LIBC_CANCEL_HANDLED): Add.
1873
1874         * sysdeps/unix/sysv/linux/alpha/sysdep.h
1875         (inline_syscall_r0_constraint): Rename to...
1876         (inline_syscall_r0_out_constraint): ... this.  Add =.
1877         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
1878
1879 2003-01-06  Andreas Schwab  <schwab@suse.de>
1880
1881         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
1882         sure this is always inlined.
1883         (elf_machine_rela): Likewise.
1884
1885         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
1886
1887 2003-01-04  Roland McGrath  <roland@redhat.com>
1888
1889         * Makeconfig (+mkdep): Add -MP flag.
1890         Suggested by Art Haas <ahaas@airmail.net>.
1891
1892 2003-01-05  Andreas Schwab  <schwab@suse.de>
1893
1894         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
1895
1896 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1897
1898         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
1899         SYSCALL_ERROR_HANDLER.
1900         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
1901         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
1902         Add support for cancellation handling.
1903         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
1904         SYSCALL_ERROR_HANDLER.
1905         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
1906         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
1907         Add support for cancellation handling.
1908         (SYSCALL_ERROR_HANDLER): Define PIC variants.
1909
1910 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1911
1912         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
1913         __syscall_pread64 and __syscall_pwrite64 cancelable.
1914         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
1915         (INTERNAL_SYSCALL): New macro.
1916         (LOADARGS_0, LOADARGS_1): Fix.
1917
1918 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
1919
1920         * Makerules (build-shlip-helper): Unless told otherwise, add
1921         -Wl,-z,defs to linker command line.
1922         * rt/Makefile (librt.so): Link with ld.so.
1923         * dlfcn/Makefile (libdl.so): Likewise.
1924
1925 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
1926
1927         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
1928         cancellation handling.
1929         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
1930         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
1931
1932 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
1933
1934         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
1935         order of parameters passed to kill.
1936
1937 2003-01-04  Andreas Schwab  <schwab@suse.de>
1938
1939         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
1940
1941 2002-01-03  Paul Eggert  <eggert@twinsun.com>
1942
1943         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
1944         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
1945         when compiling Bison 1.875's `bitset bset = obstack_alloc
1946         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
1947
1948 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
1949
1950         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
1951         unnecessary code.
1952         Correct reference counter in case SIGQUIT handler installation failed.
1953
1954 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
1955
1956         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
1957         Define using _Pragma(weak ...).
1958
1959 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
1960
1961         * resolv/res_libc.c: Provide declaration for __res_init_weak and
1962         reorder declarations.
1963
1964 2003-01-03  Art Haas  <ahaas@airmail.net>
1965
1966         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
1967         initializer syntax to C99.
1968         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
1969         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
1970         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
1971         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
1972         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
1973         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
1974         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
1975         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
1976         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
1977         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
1978         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
1979         * localedata/tests-mbwc/dat_mblen.c: Likewise.
1980         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
1981         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
1982         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
1983         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
1984         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
1985         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
1986         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
1987         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
1988         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
1989         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
1990         * localedata/tests-mbwc/dat_towlower.c: Likewise.
1991         * localedata/tests-mbwc/dat_towupper.c: Likewise.
1992         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
1993         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
1994         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
1995         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
1996         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
1997         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
1998         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
1999         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
2000         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
2001         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
2002         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
2003         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
2004         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
2005         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
2006         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
2007         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
2008         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
2009         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
2010         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
2011         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
2012         * localedata/tests-mbwc/dat_wctob.c: Likewise.
2013         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
2014         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
2015         * localedata/tests-mbwc/dat_wctype.c: Likewise.
2016         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
2017
2018 2003-01-03  Richard Henderson  <rth@redhat.com>
2019
2020         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
2021         (inline_syscall_r0_constraint): New.
2022         (inline_syscall[0-6]): Use them.
2023
2024 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
2025
2026         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
2027         Add rtld_hidden_proto.
2028         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
2029         (_dl_allocate_tls): Likewise.  Remove INTDEF.
2030
2031 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2032
2033         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
2034         Morita <toshiyasu.morita@hsa.hitachi.com>.
2035         * sysdeps/sh/memcpy.S: Likewise.
2036
2037 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
2038
2039         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
2040         any, but unify the test.
2041
2042 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
2043
2044         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
2045         sigaction): Protect weak_alias and libc_hidden_weak with
2046         #ifndef LIBC_SIGACTION.
2047         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
2048         sigaction): Likewise.
2049         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
2050         sigaction): Likewise.
2051         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
2052         sigaction): Likewise.
2053         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
2054         sigaction): Likewise.
2055         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
2056         sigaction): Likewise.
2057         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
2058         sigaction): Likewise.
2059         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
2060         sigaction): Likewise.  Remove SIGCANCEL handling here.
2061         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
2062         Likewise.
2063
2064 2003-01-02  Art Haas  <ahaas@airmail.net>
2065
2066         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
2067
2068 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
2069
2070         * posix/getconf.c: Update copyright year.
2071         * nss/getent.c: Likewise.
2072         * nscd/nscd_nischeck.c: Likewise.
2073         * iconv/iconvconfig.c: Likewise.
2074         * iconv/iconv_prog.c: Likewise.
2075         * elf/ldconfig.c: Likewise.
2076         * catgets/gencat.c: Likewise.
2077         * csu/version.c: Likewise.
2078         * elf/ldd.bash.in: Likewise.
2079         * elf/sprof.c (print_version): Likewise.
2080         * locale/programs/locale.c: Likewise.
2081         * locale/programs/localedef.c: Likewise.
2082         * nscd/nscd.c (print_version): Likewise.
2083         * debug/xtrace.sh: Likewise.
2084         * malloc/memusage.sh: Likewise.
2085         * malloc/mtrace.pl: Likewise.
2086
2087 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
2088
2089         * io/sys/stat.h: Include time.h with __need_timespec even if
2090         __USE_MISC is defined but __USE_XOPEN is not.
2091
2092 2003-01-01  Andreas Jaeger  <aj@suse.de>
2093
2094         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
2095         type to avoid strict aliasing problem.
2096         (_nss_dns_gethostbyname2_r): Likewise.
2097         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
2098         (_nss_dns_getnetbyname_r): Likewise.
2099         * resolv/gethnamaddr.c (_gethtent): Likewise.
2100         (gethostbyname2): Likewise.
2101
2102 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
2103
2104         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
2105         to avoid using the exported symbols.  Define aliases with the
2106         original names separately.
2107
2108         * include/time.h: Add libc_hidden_proto for __strftime_l.
2109         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
2110         * time/strftime.c: Always use libc_hidden_def if _LIBC.
2111
2112         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
2113         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
2114
2115         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
2116         tr_break.
2117
2118         * csu/Makefile (routines): Add dso_handle.
2119         * csu/dso_handle.c: New file.
2120
2121 2002-12-31  Roland McGrath  <roland@redhat.com>
2122
2123         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
2124         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
2125         (S-CPPFLAGS): Add -DASSEMBLER here instead.
2126         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
2127
2128 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
2129
2130         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
2131         is available.
2132
2133 2002-12-31  Andreas Jaeger  <aj@suse.de>
2134
2135         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
2136         with Linux kernel.
2137         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
2138         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
2139         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
2140
2141         * sysdeps/unix/sysv/linux/kernel_stat.h
2142         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
2143
2144         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
2145         __unused[1-3] since they're needed by some platforms.  Handle
2146         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
2147
2148         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
2149         for structs stat and stat64.
2150         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
2151         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
2152         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
2153         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
2154
2155         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
2156
2157         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
2158         nsec resolution changes.
2159         (xstat64_conv): Likewise.
2160         (xstat32_conv): Likewise.
2161
2162         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
2163         struct kernel_stat.
2164
2165         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
2166         structs stat and stat64.
2167
2168         * time/time.h (__timespec_defined): Define for __USE_MISC.
2169
2170 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
2171
2172         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
2173         and __libc_current_sigrtmax.
2174
2175 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
2176
2177         * include/errno.h (__errno_location): Add prototype.
2178         Use libc_hidden_proto unconditionally.
2179         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
2180         unconditionally.
2181         * include/resolv.h (__res_state): Likewise.
2182
2183         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
2184         * include/sys/socket.h (accept): Add libc_hidden_proto.
2185         * include/errno.h (__errno_location): Likewise.
2186         * include/netdb.h (__h_errno_location): Likewise.
2187         * include/resolv.h (__res_state): Likewise.
2188         * include/unistd.h (__lseek): Likewise.
2189         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
2190         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
2191         * sysdeps/generic/res-state.c (__res_state): Likewise.
2192         * sysdeps/generic/accept.c (accept): Likewise.
2193         * sysdeps/generic/lseek.c (__lseek): Likewise.
2194         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
2195         __libc_current_sigrtmax): Likewise.
2196         * sysdeps/mach/hurd/accept.c (accept): Likewise.
2197         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
2198         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
2199         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
2200         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
2201         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
2202         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
2203         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
2204         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
2205         alias to llseek.
2206         (__GI_accept): New alias to accept.
2207         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
2208         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
2209         New alias to llseek.
2210         (__GI_accept): New alias to accept.
2211         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
2212         Likewise.
2213         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
2214         Likewise.
2215         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
2216
2217         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
2218         strong_alias (name, __GI_name).
2219         * sysdeps/arm/bsd-_setjmp.S : Likewise.
2220         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
2221         * sysdeps/i386/bsd-_setjmp.S : Likewise.
2222         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
2223         * sysdeps/mips/bsd-_setjmp.S : Likewise.
2224         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
2225         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
2226         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
2227         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
2228         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
2229         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
2230         * sysdeps/sh/bsd-_setjmp.S : Likewise.
2231         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
2232         * sysdeps/unix/arm/fork.S : Likewise.
2233         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
2234         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
2235         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
2236         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
2237         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
2238         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
2239         * sysdeps/unix/i386/fork.S : Likewise.
2240         * sysdeps/unix/mips/fork.S : Likewise.
2241         * sysdeps/unix/sparc/fork.S : Likewise.
2242         * sysdeps/unix/sparc/vfork.S : Likewise.
2243         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
2244         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
2245         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
2246         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
2247         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
2248         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
2249         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
2250         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
2251         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
2252         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
2253         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
2254         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
2255         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
2256         * sysdeps/unix/fork.S : Likewise.
2257         * sysdeps/vax/bsd-_setjmp.S : Likewise.
2258         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
2259
2260         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
2261         inclusion.
2262
2263 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
2264
2265         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
2266         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
2267         * sysdeps/mach/hurd/fork.c: Likewise.
2268         * sysdeps/unix/sysv/aix/fork.c: Likewise.
2269         * sysdeps/unix/fork.S: Add __GI___fork alias.
2270         * sysdeps/unix/arm/fork.S: Likewise.
2271         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
2272         * sysdeps/unix/i386/fork.S: Likewise.
2273         * sysdeps/unix/mips/fork.S: Likewise.
2274         * sysdeps/unix/sparc/fork.S: Likewise.
2275         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
2276         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
2277         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
2278         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
2279         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
2280         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
2281         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
2282         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
2283         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
2284         * sysdeps/unix/sparc/vfork.S: Likewise.
2285         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
2286         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
2287         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
2288         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
2289         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
2290         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
2291         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
2292         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
2293
2294         * include/time.h: Add libc_hidden_proto for __nanosleep.
2295         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
2296         * sysdeps/mach/nanosleep.c: Likewise.
2297         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
2298         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
2299
2300         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
2301         _IO_list_unlock, and _IO_list_resetlock.
2302         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
2303         _IO_list_unlock, and _IO_list_resetlock.
2304
2305         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
2306         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
2307         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
2308         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
2309
2310         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
2311         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
2312         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
2313         __GI___longjmp alias.
2314
2315         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
2316         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
2317         * sysdeps/arm/bsd-_setjmp.S: Likewise.
2318         * sysdeps/generic/bsd-_setjmp.c: Likewise.
2319         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
2320         * sysdeps/i386/bsd-_setjmp.S: Likewise.
2321         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
2322         * sysdeps/mips/bsd-_setjmp.S: Likewise.
2323         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
2324         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
2325         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
2326         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
2327         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
2328         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
2329         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
2330         * sysdeps/sh/bsd-_setjmp.S: Likewise.
2331         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
2332         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
2333         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
2334         * sysdeps/vax/bsd-_setjmp.S: Likewise.
2335         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
2336
2337 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
2338
2339         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
2340
2341 2002-12-30  Roland McGrath  <roland@redhat.com>
2342
2343         * Rules (generated): Target removed.
2344         * mach/Makefile (generated): Define it here instead.
2345
2346         * math/Makefile (generated): Add m_*l and m_*f variants too.
2347
2348 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
2349
2350         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
2351         the to-be-deleted objects right away instead of later separately.
2352         The latter fails because the scope data structures of the DSO
2353         might already be gone.
2354
2355         * elf/Makefile: Add rules to build and run reldep8 test.
2356         * elf/reldep8.c: New file.
2357         * elf/reldep8mod1.c: New file.
2358         * elf/reldep8mod2.c: New file.
2359         * elf/reldep8mod3.c: New file.
2360         Contributed by Jakub Jelinek.
2361
2362 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
2363
2364         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
2365         checking of return value ENOSYS from getdents64.
2366
2367 2002-12-28  Andreas Schwab  <schwab@suse.de>
2368
2369         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
2370         ($(common-objpfx)s-%.d): Generalized from
2371         $(common-objpfx)s-proto.d rule.
2372         (common-generated): Add s-proto-cancel.d.
2373         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
2374         cancellable syscalls.
2375         * sysdeps/unix/s-proto-cancel.S: New file.
2376
2377 2002-12-29  Roland McGrath  <roland@redhat.com>
2378
2379         * resolv/res_libc.c: Move _res defn magic after res_init defn
2380         so _res macro is in effect for that code.
2381
2382         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
2383         pattern for prepending $(..) so it doesn't affect $(foo).
2384
2385         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
2386
2387 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
2388
2389         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
2390         in hwcap.
2391
2392 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
2393
2394         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
2395
2396 2002-12-28  Andreas Jaeger  <aj@suse.de>
2397
2398         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
2399         avoid warning.
2400         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
2401
2402 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
2403
2404         * inet/herrno.c (__h_errno_location): Remove.
2405         * inet/Makefile (routines): Add herrno-loc.
2406         * resolv/res_libc.c (__res_state): Remove.
2407         * resolv/Makefile (routines): Add res-state.
2408         * sysdeps/generic/herrno-loc.c: New file.
2409         * sysdeps/generic/res-state.c: New file.
2410
2411 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
2412
2413         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
2414         Only define if USE_DL_SYSINFO is defined.
2415
2416 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
2417
2418         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
2419         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
2420         Define. Patch by Richard Henderson and Jes Sorensen.
2421         (PSEUDO): Remove unnecessary ;;.
2422         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
2423         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
2424         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
2425         if not initializing thread pointer.
2426         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
2427         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
2428         make it weak also if NONTLS_INIT_TP.
2429         * sysdeps/unix/common/pause.c: Handle cancellation.
2430         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
2431         (LOADSYSCALL): Remove.
2432         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
2433         (SYSCALL_ERROR_HANDLER): Use it.
2434         (PSEUDO): Don't jump around error handler.
2435         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
2436         jump around error handler.
2437         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
2438         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
2439         to __syscall_error_handler on failure.
2440         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
2441         (LOADSYSCALL): Remove.
2442         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
2443         (SYSCALL_ERROR_HANDLER): Use it.
2444         (PSEUDO): Don't jump around error handler.
2445         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
2446         jump around error handler.
2447         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
2448         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
2449         to __syscall_error_handler on failure.
2450
2451 2002-12-27  Roland McGrath  <roland@redhat.com>
2452
2453         * scripts/gen-as-const.awk: New file.
2454         * Makefile (distribute): Add it.
2455         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
2456         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
2457         to the list.
2458         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
2459
2460 2002-12-27  Andreas Schwab  <schwab@suse.de>
2461
2462         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
2463
2464 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
2465
2466         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
2467         _environ is NULL.
2468
2469 2002-12-27  Andreas Schwab  <schwab@suse.de>
2470
2471         * Makerules ($(common-objpfx)%.make): Filter through
2472         $(sed-remove-objpfx).
2473
2474 2002-12-23  Roland McGrath  <roland@redhat.com>
2475
2476         * scripts/abilist.awk: Produce a more compact format, divided into
2477         stanzas for each version set, the set name listed only once.
2478         * scripts/extract-abilist.awk: New file.
2479         * scripts/merge-abilist.awk: New file.
2480         * Makerules (check-abi-%, update-abi-%): New pattern rules.
2481         (update-abi, check-abi): New targets.
2482         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
2483
2484 2002-12-19  Roland McGrath  <roland@redhat.com>
2485
2486         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
2487
2488         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
2489         INTERNAL_SYSCALL.
2490
2491 2002-12-21  Andreas Schwab  <schwab@suse.de>
2492
2493         * elf/check-textrel.c (handle_file): Swap p_type.
2494
2495 2002-12-21  Andreas Schwab  <schwab@suse.de>
2496
2497         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
2498         (INLINE_SYSCALL): Use it.
2499         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
2500         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
2501
2502         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
2503         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
2504
2505 2002-12-20  Art Haas  <ahaas@airmail.net>
2506
2507         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
2508         syntax to C99.
2509
2510 2002-12-21  Philip Blundell  <philb@gnu.org>
2511
2512         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
2513         top as seventh arg to __libc_start_main.
2514         Reported by paulnash@wildseed.com.
2515
2516         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
2517
2518         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
2519         compatibility cruft when new enough kernel is assumed.
2520
2521 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
2522
2523         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
2524         instead of INLINE_SYSCALL.
2525
2526 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
2527
2528         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
2529         typo.
2530
2531         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
2532         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
2533         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
2534         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
2535         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
2536         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
2537         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
2538         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
2539         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
2540         Patch by William Lee Irwin <wli@holomorphy.com>.
2541
2542 2002-12-20  Andreas Schwab  <schwab@suse.de>
2543
2544         * locale/programs/ld-measurement.c (measurement_output): Fix
2545         index calculation.
2546
2547 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
2548
2549         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
2550         Redefine _IO_flockifle and _IO_funlockfile as inlines.
2551
2552         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
2553         builds add "tls" in the search path.
2554         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
2555         (path_hwcap): Recognize "tls".
2556
2557 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
2558
2559         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
2560         __waitpid instead of waitpid.
2561
2562         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
2563         int $0x80.
2564         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
2565         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
2566         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
2567
2568         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
2569         information for system calls.
2570
2571         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
2572         for ld.so.
2573
2574         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
2575
2576 2002-12-19  Roland McGrath  <roland@redhat.com>
2577
2578         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
2579         * iconvdata/ibm922.h: Likewise.
2580         * iconvdata/ibm930.h: Likewise.
2581         * iconvdata/ibm932.h: Likewise.
2582         * iconvdata/ibm933.h: Likewise.
2583         * iconvdata/ibm935.h: Likewise.
2584         * iconvdata/ibm937.h: Likewise.
2585         * iconvdata/ibm939.h: Likewise.
2586         * iconvdata/ibm943.h: Likewise.
2587         * iconvdata/isiri-3342.h: Likewise.
2588
2589 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
2590
2591         * test-skeleton.c (main): Make sure correct value is seen as
2592         argv[0] after adjustment of argv, and argc.
2593
2594         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
2595         RTLD_CORRECT_DYNAMIC_WEAK is defined.
2596
2597 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
2598
2599         * nscd/connections.c (nscd_run): Shut up warning.
2600         * tst-ungetc.c (assert): Undefined before redefining.
2601
2602 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
2603
2604         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
2605         is used.
2606
2607 2002-12-17  Art Haas  <ahaas@airmail.net>
2608
2609         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
2610         * iconvdata/cp775.h: Likewise.
2611         * iconvdata/ibm1046.h: Likewise.
2612         * iconvdata/ibm1124.h: Likewise.
2613         * iconvdata/ibm1129.h: Likewise.
2614         * iconvdata/ibm1132.h: Likewise.
2615         * iconvdata/ibm1133.h: Likewise.
2616         * iconvdata/ibm1160.h: Likewise.
2617         * iconvdata/ibm1161.h: Likewise.
2618         * iconvdata/ibm1162.h: Likewise.
2619         * iconvdata/ibm1163.h: Likewise.
2620         * iconvdata/ibm1164.h: Likewise.
2621
2622 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
2623
2624         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
2625         __ASSUME_CLONE_THREAD_FLAGS is defined.
2626         * sysdeps/unix/sysv/linux/kernel-features.h
2627         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
2628
2629 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
2630
2631         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
2632         of asm.
2633         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2634
2635         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
2636         _dl_sysinfo.
2637         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
2638         code.
2639         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
2640         _rtld_global.
2641         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
2642         code.
2643         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
2644         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
2645         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
2646         Add _dl_sysinfo.
2647
2648 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
2649
2650         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
2651         __libc_writev to...
2652         [libc: GLIBC_PRIVATE]: ...here.
2653         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
2654         __libc_msgsnd to...
2655         [libc: GLIBC_PRIVATE]: ...here.
2656
2657 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
2658
2659         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
2660         Use it instead of directly int $0x80.
2661         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
2662         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
2663         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
2664         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2665         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
2666         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
2667
2668 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
2669
2670         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
2671
2672         * elf/elf.h (AT_SYSINFO): New define.
2673         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
2674         AT_SYSINFO.
2675
2676 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
2677
2678         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
2679         Make cancelable.
2680         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
2681         Likewise.
2682         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
2683         Likewise.
2684         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
2685         Likewise.
2686         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
2687         Likewise.
2688         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
2689
2690         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
2691         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
2692         available, otherwise __libc_maybe_call.
2693         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
2694         cancellation handling.
2695         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
2696
2697 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
2698
2699         * posix/regcomp.c (free_workarea_compile): Free the new member
2700         ORG_INDICES.
2701         (analyze): Initialize ORG_INDICES.
2702         (duplicate_node_closure): Search for a existing node, which is
2703         duplicated from the node ORG_DEST and satisfies the constraint
2704         CONSTRAINT.  And use it to avoid inifimite loop.
2705         (search_duplicated_node): New function.
2706         (duplicate_node): Store the index of the original node.
2707         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
2708         if needed.
2709         * posix/regex_internal.h (re_dfa_t): Add new members.
2710
2711 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
2712
2713         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
2714
2715 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
2716
2717         * sysdeps/posix/system.c (do_system): Add support for installation
2718         of cancellation handlers.
2719         * sysdeps/unix/sysv/linux/i386/system.c: New file.
2720
2721         * stdlib/Makefile (tests): Add tst-system.
2722         * stdlib/tst-system.c: New file.
2723
2724         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
2725         CENABLE]: Don't lose content of %ebx.
2726
2727 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
2728
2729         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
2730         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
2731
2732 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
2733
2734         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
2735         fails to return a function pointer don't use it.
2736
2737 2002-12-16  Art Haas  <ahaas@airmail.net>
2738
2739         * io/ftw.c: Convert GCC extension initializer syntax to C99.
2740         * iconvdata/iso-ir-165.c: Likewise.
2741         * iconvdata/jis0208.c: Likewise.
2742         * iconvdata/jis0212.c: Likewise.
2743
2744 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
2745
2746         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
2747         epoll_ctl, and epoll_wait.
2748         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
2749         epoll_create, epoll_ctl, and epoll_wait.
2750         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
2751         Davide Libenzi <davidel@xmailserver.org>.
2752         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
2753         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
2754         Add sys/epoll.h.
2755
2756 2002-12-16  Art Haas  <ahaas@airmail.net>
2757
2758         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
2759         syntax to C99
2760         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
2761         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
2762         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
2763
2764 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
2765
2766         * stdio-common/Makefile (routines): Remove lockfile.  Add
2767         flockfile, ftrylockfile, and funlockfile.
2768         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
2769         * sysdeps/generic/flockfile.c: New file.
2770         * sysdeps/generic/ftrylockfile.c: New file.
2771         * sysdeps/generic/funlockfile.c: New file.
2772
2773 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
2774
2775         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
2776         macros instead of doing the calls directly.
2777         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
2778         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
2779         targets.
2780
2781 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
2782
2783         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
2784         * sysdeps/ieee754/bits/nan.h: Likewise.
2785
2786         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
2787         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
2788
2789 2002-12-16  Roland McGrath  <roland@redhat.com>
2790
2791         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
2792         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
2793         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
2794
2795         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
2796         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
2797         s_putpmsg.
2798         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
2799         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
2800         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
2801         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
2802         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
2803         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
2804         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
2805         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
2806
2807 2002-12-13  Paul Eggert  <eggert@twinsun.com>
2808
2809         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
2810         is now u_int, not int.
2811         (struct XDR.x_handy): Now u_int, not int.
2812         * sunrpc/xdr_mem.c: Include <limits.h>.
2813         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
2814         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
2815         x_handy is now unsigned, not signed.
2816         Do not decrement x_handy if no change is made.
2817         (xdrmem_setpos): Check for int overflow.
2818         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
2819         (xdr_sizeof): Remove cast that is now unnecessary, now that
2820         x_handy is unsigned.
2821
2822 2002-12-15  Art Haas  <ahaas@airmail.net>
2823
2824         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
2825         * iconvdata/gap.awk: Likewise.
2826         * iconvdata/gen-8bit-gap-1.sh: Likewise.
2827         * iconvdata/gen-8bit-gap.sh: Likewise.
2828         * locale/C-address.c: Likewise.
2829         * locale/C-collate.c: Likewise.
2830         * locale/C-ctype.c: Likewise.
2831         * locale/C-identification.c: Likewise.
2832         * locale/C-measurement.c: Likewise.
2833         * locale/C-messages.c: Likewise.
2834         * locale/C-monetary.c: Likewise.
2835         * locale/C-name.c: Likewise.
2836         * locale/C-numeric.c: Likewise.
2837         * locale/C-paper.c: Likewise.
2838         * locale/C-telephone.c: Likewise.
2839         * locale/C-time.c: Likewise.
2840         * nscd/connections.c: Likewise.
2841         * nscd/grpcache.c: Likewise.
2842         * nscd/hstcache.c: Likewise.
2843         * nscd/pwdcache.c: Likewise.
2844         * stdio-common/vfprintf.c: Likewise.
2845         * stdlib/random.c: Likewise.
2846         * sysdeps/generic/siglist.c: Likewise.
2847         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
2848         * sysdeps/ieee754/bits/nan.h: Likewise.
2849         * sysdeps/posix/sprofil.c: Likewise.
2850         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
2851         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
2852         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
2853
2854 2002-12-15  Roland McGrath  <roland@redhat.com>
2855
2856         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
2857
2858         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
2859         <tls.h> here, no need for it.
2860         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
2861
2862         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
2863         parameter, not varargs parameter.
2864
2865         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
2866         argument so it's not an unused variable.
2867
2868         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
2869         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
2870         for users.
2871
2872         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
2873
2874 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
2875
2876         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
2877         original __libc_fcntl code.  Just renamed.
2878
2879 2002-12-15  Andreas Schwab  <schwab@suse.de>
2880
2881         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
2882
2883 2002-12-14  Olaf Hering  <olh@suse.de>
2884
2885         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
2886         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
2887
2888 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
2889
2890         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
2891
2892         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
2893         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
2894
2895         * sysdeps/unix/sysv/linux/open64.c: New file.
2896
2897         * sysdeps/generic/pselect.c: Add support for cancellation handling.
2898         * sysdeps/posix/open64.c: Likewise.
2899         * sysdeps/posix/sigpause.c: Likewise.
2900         * sysdeps/posix/sigwait.c: Likewise.
2901         * sysdeps/posix/system.c: Likewise.
2902         * sysdeps/posix/waitid.c: Likewise.
2903         * sysdeps/unix/sysv/linux/accept.S: Likewise.
2904         * sysdeps/unix/sysv/linux/connect.S: Likewise.
2905         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
2906         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
2907         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
2908         * sysdeps/unix/sysv/linux/poll.c: Likewise.
2909         * sysdeps/unix/sysv/linux/pread.c: Likewise.
2910         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
2911         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
2912         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
2913         * sysdeps/unix/sysv/linux/readv.c: Likewise.
2914         * sysdeps/unix/sysv/linux/recv.S: Likewise.
2915         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
2916         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
2917         * sysdeps/unix/sysv/linux/send.S: Likewise.
2918         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
2919         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
2920         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
2921         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
2922         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
2923         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
2924         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
2925         * sysdeps/unix/sysv/linux/wait.c: Likewise.
2926         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
2927         * sysdeps/unix/sysv/linux/writev.c: Likewise.
2928         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
2929         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
2930
2931 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
2932
2933         * sysdeps/generic/sysdep-cancel.h: New file.
2934         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
2935         cancelable syscall.
2936         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
2937         recvmsg, send, sendmsg, sendto): Make cancelable.
2938         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
2939         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
2940         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
2941         sendto, osf_select): Likewise.
2942         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
2943         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
2944         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
2945         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
2946         sendto): Likewise.
2947         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
2948         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
2949         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
2950         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
2951         sendto): Likewise.
2952         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
2953         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
2954         sendto, select): Likewise.
2955         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
2956         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
2957         Likewise.
2958         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
2959         select, fcntl): Likewise.
2960         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
2961         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
2962         read, readv, select, sigsuspend, write, writev): Likewise.
2963
2964 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
2965
2966         * dirent/bug-readdir1.c: Include unistd.h.
2967
2968 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
2969
2970         * locale/programs/locale.c: Include locarchive.h.
2971         (ARCHIVE_NAME): Define.
2972         (write_archive_locales): New function.
2973         (write_locales): Use it.  Ensure the same locale is not printed
2974         multiple times in verbose mode.
2975         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
2976         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
2977         functions.
2978         (struct nameent): New type.
2979         (nameentcmp): New function.
2980
2981 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
2982
2983         * posix/regex_internal.c (re_string_context_at): Guard wide char
2984         code with #ifdef RE_ENABLE_I18N.
2985
2986 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
2987
2988         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
2989
2990 2002-12-13  Roland McGrath  <roland@redhat.com>
2991
2992         * posix/bug-regex15.c: New file.
2993         * posix/Makefile (tests): Add it.
2994
2995         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
2996         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
2997
2998 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
2999
3000         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
3001
3002         * misc/syslog.c (log_cleanup): Don't use parameter in
3003         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
3004         pass NULL instead of a pointer to syslog_lock.
3005
3006 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
3007
3008         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
3009         linker map for all iconv modules.
3010         (distribute): Add gconv.map.
3011         * iconvdata/gconv.map: New file.
3012
3013         * elf/Makefile: Also check all iconv modules for text relocations.
3014
3015         * stdlib/Makefile: Remove code to automatically import GMP.
3016
3017         * elf/Makefile (tests): Add rules to build and run check-textrel.
3018         * elf/check-textrel.c: New file.
3019
3020         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
3021         directive.
3022
3023 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
3024
3025         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
3026         not st.st[am]time.
3027
3028 2002-04-30  Bruno Haible  <bruno@clisp.org>
3029
3030         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
3031         the encoding if it already has slashes.
3032         Reported by Perry Rapp <prapp@erols.com>.
3033
3034 2002-12-11  Roland McGrath  <roland@redhat.com>
3035
3036         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
3037         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
3038         Turn off PIC for compiling this file.
3039
3040 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
3041
3042         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
3043         definitions.  Not needed.
3044         [_LIBC]: Use definitions from libc-lock.h instead of referencing
3045         pthread routines directly.
3046         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
3047         mutex_init calls.
3048         (arena_get2): Don't look at return value of mutex_lock.
3049
3050 2002-12-11  Roland McGrath  <roland@redhat.com>
3051
3052         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
3053         elf-init.o instead of compiling a PIC version.
3054
3055 2002-12-11  Bruno Haible  <bruno@clisp.org>
3056
3057         * intl/gettext.h: Renamed to ...
3058         * intl/gmo.h: ... here.
3059         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
3060         * intl/gettextP.h: Update.
3061         * intl/loadmsgcat.c: Update.
3062
3063         * intl/gettextP.h (PARAMS): Make more portable.
3064         (attribute_hidden): Define as empty macro if not already defined.
3065         * intl/hash-string.h (PARAMS): Make more portable.
3066         * intl/loadinfo.h (PARAMS): Likewise.
3067         * intl/plural-exp.h (PARAMS): Likewise.
3068         (attribute_hidden): Move definition near the definition of
3069         internal_function.
3070
3071         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
3072         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
3073
3074 2002-07-13  Bruno Haible  <bruno@clisp.org>
3075
3076         * intl/dcigettext.c (freea): New macro.
3077         (FREE_BLOCKS): Free also the registered blocks.
3078         (DCIGETTEXT): Free the 'search' variable.
3079         Reported by Andreas Fischer <a.fischer@asentics.de>.
3080
3081 2002-04-27  Bruno Haible  <bruno@clisp.org>
3082
3083         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
3084         * intl/dcigettext.c: Likewise.
3085         * intl/dcgettext.c: Likewise.
3086         * intl/dgettext.c: Likewise.
3087         * intl/gettext.c: Likewise.
3088         * intl/dcngettext.c: Likewise.
3089         * intl/dngettext.c: Likewise.
3090         * intl/ngettext.c: Likewise.
3091         * intl/textdomain.c: Likewise.
3092         * intl/bindtextdom.c: Likewise.
3093         * intl/plural-exp.h: Likewise.
3094
3095 2002-01-02  Bruno Haible  <bruno@clisp.org>
3096
3097         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
3098
3099 2001-04-30  Bruno Haible  <bruno@clisp.org>
3100
3101         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
3102         default macro definitions.  Needed for mingw32.
3103
3104 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
3105
3106         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
3107         __builtin_constant_p to macro parameter.
3108
3109         * sysdeps/generic/sigpause.c: Define all functions as weak.
3110         * sysdeps/posix/sigpause.c: Likewise.
3111
3112         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
3113         type size_t.
3114
3115 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
3116
3117         * elf/tst-array1.c (preinit_array, init_array, fini_array):
3118         Explicitly align the array to sizeof (void *).
3119         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
3120
3121         * include/libc-symbols.h: Fix a comment typo.
3122
3123         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
3124         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
3125         Likewise.
3126         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
3127         Likewise.
3128         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
3129         (__libc_sigsuspend): Likewise.
3130         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
3131         (__libc_sigsuspend): Likewise.
3132         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
3133         (creat): New weak alias.
3134
3135 2002-12-10  Roland McGrath  <roland@redhat.com>
3136
3137         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
3138         contributes a manual chapter.
3139         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
3140         around xref to it.
3141
3142         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
3143         and move contents to ...
3144         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
3145         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
3146         it instead of duplicating its contents.
3147         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
3148
3149 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
3150
3151         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
3152         defined.
3153         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
3154         function.
3155         (EXTRA_LD_ENVVARS): Use it.
3156         (DL_OSVERSION_INIT): Define.
3157         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
3158         dl-librecon.h.
3159         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
3160
3161 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
3162
3163         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
3164
3165         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
3166         call.  It is not allowed to destroy pthread mutexes which are
3167         still in use even though it is safe for our implementations.  If
3168         somebody still uses the descriptor it is a bug.
3169
3170 2002-12-09  Richard Henderson  <rth@redhat.com>
3171
3172         * csu/abi-note.S: Use .p2align, not .align.
3173
3174 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
3175
3176         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
3177         __libc_select aliases.
3178
3179         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
3180         alias.
3181
3182         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
3183
3184         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
3185
3186         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
3187
3188         * sysdeps/unix/syscalls.list: Define __libc_select alias.
3189
3190         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
3191
3192         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
3193         __libc___xpg_sigpause aliases.
3194
3195         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
3196
3197         * misc/error.c: Remove use of USE_IN_LIBIO.
3198
3199 2002-12-08  Roland McGrath  <roland@redhat.com>
3200
3201         * elf/Makefile (tests): Uncomment tst-array[123].
3202         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
3203         * csu/elf-init.c: New file.
3204         * csu/Makefile (routines, static-only-routines): Add elf-init.
3205         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
3206         and __libc_csu_fini in place of _fini.
3207         * sysdeps/arm/elf/start.S: Likewise.
3208         * sysdeps/cris/elf/start.S: Likewise.
3209         * sysdeps/hppa/elf/start.S: Likewise.
3210         * sysdeps/i386/elf/start.S: Likewise.
3211         * sysdeps/ia64/elf/start.S: Likewise.
3212         * sysdeps/m68k/elf/start.S: Likewise.
3213         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
3214         * sysdeps/mips/elf/start.S: Likewise.
3215         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
3216         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
3217         * sysdeps/s390/s390-32/elf/start.S: Likewise.
3218         * sysdeps/s390/s390-64/elf/start.S: Likewise.
3219         * sysdeps/sh/elf/start.S: Likewise.
3220         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
3221         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
3222         * sysdeps/x86_64/elf/start.S: Likewise.
3223
3224         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
3225         struct containing function ptr and value, free it.
3226         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
3227         It's not safe to let the new thread use the SIGEV pointer.
3228
3229 2001-10-20  Paul Eggert  <eggert@twinsun.com>
3230
3231         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
3232         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
3233         Use strerror_r that is only a macro, even if it is not a function.
3234         (strerror): Check for HAVE_DECL_STRERROR before declaring.
3235         (private_strerror): Use prototypes, not old-style function definition.
3236         (print_errno_message): New function.
3237         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
3238         char*-flavored one.
3239         (error_tail, error, error_at_line): Use it.
3240
3241 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
3242
3243         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
3244
3245 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
3246
3247         * scripts/output-format.sed: Fix bug in one of the s expressions
3248         which used / for one too many things.
3249
3250         * include/unistd.h: Declare __libc_close.
3251
3252 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
3253
3254         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
3255
3256 2002-12-07  Roland McGrath  <roland@redhat.com>
3257
3258         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
3259         from 2002-12-06, but remove unnecessary memset call without removing
3260         necessary copy of initialization image.
3261
3262         * Makerules ($(common-objpfx)format.lds): New target.
3263         (common-generated): Add it.
3264         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
3265         * scripts/output-format.sed: New file.
3266         * Makefile (distribute): Add it.
3267
3268 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
3269
3270         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
3271         Reported by Art Haas <ahaas@airmail.net>.
3272
3273 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
3274
3275         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
3276
3277 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
3278
3279         * string/test-strncpy.c (do_random_tests): Improve test coverage.
3280
3281 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
3282
3283         * test-skeleton.c (timeout_handler): Allow expected signal to be
3284         SIGALRM.
3285
3286         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
3287
3288         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
3289
3290 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
3291
3292         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
3293         (SYSCALL_ERROR_HANDLER): Fix a pasto.
3294         Reported by Jeff Bailey <jbailey@nisa.net>.
3295
3296 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
3297
3298         * sysdeps/generic/libc-tls.c: Undo last patch.
3299
3300         * include/wctype.h: Define iswalnum with libc_hidden_proto.
3301
3302         * include/signal.h: Define raise with libc_hidden_proto.
3303
3304         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
3305         __execve instead of snprintf and execve.
3306
3307         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
3308         again a bit.
3309
3310 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
3311
3312         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
3313         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
3314
3315 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
3316
3317         * misc/syslog.c (log_cleanup): New function.
3318         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
3319         (closelog): Likewise.
3320
3321         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
3322         * elf/dl-iteratephdr.c: Likewise.
3323         * elf/dl-lookup.c: Likewise.
3324         * elf/dl-misc.c: Likewise.
3325         * elf/dl-open.c: Likewise.
3326         * elf/dl-support.c: Likewise.
3327         * elf/rtld.c: Likewise.
3328         * sysdeps/generic/ldsodefs.h: Likewise.
3329         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
3330         * sysdeps/mach/bits/libc-lock.h: Likewise.
3331         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
3332
3333 2002-12-06  Roland McGrath  <roland@redhat.com>
3334
3335         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
3336
3337         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
3338         (malloc_starter, memalign_starter, free_starter): Don't define these.
3339         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
3340         Don't declare them either.
3341         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
3342         __pthread_initialize, so no need to set hooks to *_starter.
3343         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
3344         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
3345         (__libc_malloc_pthread_startup): New function.
3346         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
3347
3348         * malloc/hooks.c (memalign_starter): New function.
3349         * malloc/malloc.c: Declare it.
3350         * malloc/arena.c (save_memalign_hook): New variable.
3351         (ptmalloc_init): Set __memalign_hook to memalign_starter.
3352
3353         * elf/dl-minimal.c (free): Clear the memory.
3354         (calloc): Just call malloc, knowing all memory it returns is cleared.
3355
3356         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
3357         malloc and memset; calloc can avoid the zeroing when redundant.
3358         (_dl_tls_setup): Likewise.
3359         * elf/dl-load.c (decompose_rpath): Likewise.
3360         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
3361         call, since memory from sbrk at startup is already zero.
3362
3363         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
3364         error string for failure, null for success.  Update callers.
3365         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
3366         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
3367
3368 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
3369
3370         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
3371         args to i:iipi.
3372         (readahead): Change args to i:iii.
3373         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
3374         Change args to i:iii.
3375         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
3376         args to i:iiii.
3377
3378 2002-12-05  Roland McGrath  <roland@redhat.com>
3379
3380         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
3381         call all functions rather than none.
3382         Reported by Mark P. Mitchell <mark@codesourcery.com>.
3383
3384 2002-12-04  Roland McGrath  <roland@redhat.com>
3385
3386         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
3387         on _nl_current_LC_* variables.
3388
3389 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
3390
3391         * dirent/bug-readdir1.c (main): Don't call closedir, just close
3392         the file descriptor.  This is testing what the bug report was about.
3393
3394 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
3395
3396         * po/be.po: New file.
3397
3398         * argp/Makefile (tests): Add tst-argp1.
3399
3400         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
3401         Change type of _attribute to void*.
3402         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
3403         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
3404         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
3405         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
3406         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
3407
3408 2002-12-04  Roland McGrath  <roland@redhat.com>
3409
3410         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
3411         members to the end, so a libpthread compiled with !USE_TLS will still
3412         find other members properly.
3413
3414         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
3415         operand for DEST memory.  Fix dummy input operand to use SRC.
3416         Reported by Davin McCall <davmac@ozonline.com.au>.
3417
3418         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
3419         alignment when initializing the DTV entry.
3420
3421         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
3422         when TLS has not been set up, try to set it up if we can.
3423         * elf/tst-tls4.c: Revert last change.
3424         * elf/tst-tls5.c: Likewise.
3425         * elf/tst-tls6.c: Likewise.
3426         * elf/tst-tls7.c: Likewise.
3427         * elf/tst-tls8.c: Likewise.
3428         * elf/tst-tls9.c: Likewise.
3429
3430         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
3431         * sysdeps/generic/ldsodefs.h: Declare it.
3432         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
3433         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
3434         function, broken out of __libc_setup_tls.
3435         (init_static_tls): Likewise.
3436         (__libc_setup_tls): Call them.
3437         (_dl_tls_setup): New function, uses new subroutines.
3438
3439         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
3440         Clear the pointer when returning true.
3441         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
3442         first element of the slotinfo list too.
3443
3444         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
3445         [SHARED].
3446
3447         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
3448         (_dl_determine_tlsoffset): Likewise.
3449
3450         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
3451         startup_error_tsd, made global.
3452         (dl_main): Update initialization.
3453         * elf/dl-tsd.c: Likewise.
3454         * sysdeps/generic/ldsodefs.h: Declare it.
3455
3456 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
3457
3458         * manual/texinfo.tex: Update from latest upstream version.
3459
3460 2002-12-03  Roland McGrath  <roland@redhat.com>
3461
3462         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
3463         area surplus in calculation for sbrk call.
3464
3465         * iconvdata/cp1125.c: New file.
3466         * iconvdata/Makefile (distribute): Add it.
3467         (modules): Add CP1125.
3468         (gen-8bit-gap-modules): Add cp1125.
3469         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
3470         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
3471
3472 2002-12-03  Andreas Jaeger  <aj@suse.de>
3473
3474         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
3475
3476 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
3477
3478         * sysdeps/posix/system.c (do_system): Make signal handler
3479         installation thread safe.
3480
3481 2002-12-02  Roland McGrath  <roland@redhat.com>
3482
3483         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
3484         caller from EXTRA to -.
3485         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
3486         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
3487         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
3488
3489 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
3490
3491         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
3492         bits of RM are cleared.
3493
3494 2002-12-02  Roland McGrath  <roland@redhat.com>
3495
3496         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
3497         TLS setup is required.
3498         * elf/tst-tls5.c: Likewise.
3499         * elf/tst-tls6.c: Likewise.
3500         * elf/tst-tls7.c: Likewise.
3501         * elf/tst-tls8.c: Likewise.
3502         * elf/tst-tls9.c: Likewise.
3503
3504         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
3505         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
3506         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
3507         for being null before calling free_slotinfo.
3508         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
3509         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
3510
3511 2002-11-30  Bruno Haible  <bruno@clisp.org>
3512
3513         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
3514         (struct __gconv_step): New field __btowc_fct.
3515         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
3516         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
3517         __BUILTIN_TRANS.
3518         (__gconv_btwoc_ascii): New declaration.
3519         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
3520         (__gconv_btwoc_ascii): New function.
3521         * iconv/gconv_builtin.h: Add BtowcFct argument to all
3522         BUILTIN_TRANSFORMATION invocations.
3523         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
3524         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
3525         * iconv/gconv_builtin.c (map): New field btowc_fct.
3526         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
3527         btowc_fct field.
3528         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
3529         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
3530         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
3531         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
3532         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
3533         (gconv_init): Initialize __btowc_fct field.
3534         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
3535         * iconv/loop.c: Document ONEBYTE_BODY.
3536         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
3537         Undefine ONEBYTE_BODY at the end.
3538         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
3539         * iconvdata/8bit-gap.c (NONNUL): New macro.
3540         (BODY for FROM_LOOP): Use it.
3541         (ONEBYTE_BODY): New macro.
3542         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
3543         (NONNUL): New macro.
3544         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
3545         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
3546         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
3547         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
3548         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
3549         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
3550         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
3551         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
3552         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
3553         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
3554         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
3555         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
3556         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
3557         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
3558         * iconvdata/ibm932.c: Include <stdbool.h>.
3559         (TRUE, FALSE): Remove macros.
3560         (BODY for FROM_LOOP): Remove unused variable rp1.
3561         (ONEBYTE_BODY): New macro.
3562         (BODY for TO_LOOP): Use bool.
3563         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
3564         * iconvdata/ibm943.c: Include <stdbool.h>.
3565         (TRUE, FALSE): Remove macros.
3566         (BODY for FROM_LOOP): Remove unused variable rp1.
3567         (ONEBYTE_BODY): New macro.
3568         (BODY for TO_LOOP): Use bool.
3569         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
3570         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
3571         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
3572         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
3573         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
3574         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
3575         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
3576         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
3577         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
3578         * iconvdata/gbbig5.c: Tweak comment.
3579
3580 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
3581
3582         * po/fi.po: Update from translation team.
3583
3584 2002-12-01  Roland McGrath  <roland@redhat.com>
3585
3586         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
3587         testing getdents64 return value.
3588
3589         * scripts/versions.awk: Don't pass -n flag to sort command.
3590
3591         * posix/bug-regex13.c: Include <string.h>.
3592
3593         * sysdeps/generic/libc-start.c (__libc_start_main): Do
3594         DL_SYSDEP_OSCHECK here.
3595         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
3596         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
3597
3598         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
3599         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
3600
3601         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
3602         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
3603
3604         * include/link.h: Comment typo fix.
3605
3606 2002-12-01  Roland McGrath  <roland@frob.com>
3607
3608         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
3609         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
3610         _POSIX_MEMORY_PROTECTION): Likewise.
3611         (_POSIX_POLL, _POSIX_SELECT): Removed.
3612
3613 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
3614
3615         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
3616         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
3617
3618 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
3619
3620         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
3621         USE___THREAD.
3622         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
3623         "=v" constraints.
3624
3625 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
3626
3627         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
3628         branch prediction buffers by using unpaired call/ret.
3629
3630 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
3631
3632         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
3633         first parameters constraint string.
3634         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
3635
3636 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
3637
3638         * posix/regcomp.c (parse_expression): Set the bit since the back
3639         reference is used in the regular expression.
3640         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
3641         of malloc failure.
3642         (re_node_set_init_copy): Likewise.
3643         * posix/regex_internal.h (state_array_t): New structure.
3644         (re_sub_match_last_t): Likewise.
3645         (re_sub_match_top_t): Likewise.
3646         (re_match_context_t): Add new members.
3647         (re_dfa_t): Likewise.
3648         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
3649         to check the matching is really correct, and retry if failed.
3650         Move the routin pruning the impossible nodes from here, ...
3651         (prune_impossible_nodes): To this function.
3652         (check_matching): Invoke check_subexp_matching_top, and replace
3653         redundant checking with transit_state_bkref invocation.
3654         (proceed_next_node): Replace strncmp with memcmp.  Reported by
3655         Paolo Bonzini  <bonzini@gnu.org>.
3656         (update_cur_sifted_state): Remove search_subexp invocation.
3657         (search_subexp): Remove this function.
3658         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
3659         optimization.
3660         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
3661         Remove unused invocation of match_ctx_add_entry.
3662         (transit_state): Invoke check_subexp_matching_top.
3663         (check_subexp_matching_top): New function.
3664         (transit_state_bkref): Remove unused array.
3665         Merge transit_state_bkref_loop.
3666         (transit_state_bkref_loop): Use get_subexp instead of
3667         sift_states_backward.  Use search_cur_bkref_entry for optimization.
3668         Merge this function to transit_state_bkref.
3669         (get_subexp): New function.
3670         (get_subexp_sub): Likewise.
3671         (find_subexp_node): Likewise.
3672         (check_arrival): Likewise.
3673         (check_arrival_expand_ecl): Likewise.
3674         (check_arrival_expand_ecl_sub): Likewise.
3675         (expand_bkref_cache): Likewise.
3676         (match_ctx_init): Initialize new members.
3677         (match_ctx_clean): New function.
3678         (match_ctx_free): Release new members.
3679         (match_ctx_free_subtops): New function.
3680         (match_ctx_add_entry): Fix indent.
3681         (search_cur_bkref_entry): New function.
3682         (match_ctx_add_subtop): Likewise.
3683         (match_ctx_add_sublast): Likewise.
3684
3685 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
3686
3687         * iconv/Makefile (tests): Remove tst-iconv4.c
3688         * iconv/tst-iconv4.c: Moved to...
3689         * iconvdata/tst-iconv4.c: ...here.  New file.
3690         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
3691
3692 2002-11-25  Roland McGrath  <roland@redhat.com>
3693
3694         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
3695         Grok AF_LINK if defined.
3696         From Momchil Velikov <velco@fadata.bg>.
3697
3698         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
3699         brdaddr, or dstaddr, just set those pointers to null and don't fail.
3700         Reported by Momchil Velikov <velco@fadata.bg>.
3701
3702         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
3703         is > sizeof IFR->ifa_addr, advance past the whole longer length.
3704         (__ifreq): Count up NIFS that way too.
3705         Reported by Momchil Velikov <velco@fadata.bg>.
3706
3707         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
3708
3709         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
3710         and <fpu_control.h>.
3711
3712 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
3713
3714         * elf/elf.h (EM_ST19): Fix typo.
3715
3716 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
3717
3718         * include/errno.h (__set_errno): Define as errno = val
3719         unconditionally.
3720
3721 2002-11-24  Roland McGrath  <roland@redhat.com>
3722
3723         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
3724         * sysdeps/posix/writev.c: Likewise.
3725         From Momchil Velikov <velco@fadata.bg>.
3726
3727         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
3728         calling *GL(dl_error_catch_tsd) for a thread-local location.
3729         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
3730         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
3731         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
3732
3733         * libio/iofflush.c: Add libc_hidden_def.
3734         * libio/iofwrite.c: Likewise.
3735         * sysdeps/generic/sigtimedwait.c: Likewise.
3736         * sysdeps/generic/sigwaitinfo.c: Likewise.
3737         * sysdeps/posix/sigwait.c: Likewise.
3738         Reported by Momchil Velikov <velco@fadata.bg>.
3739
3740         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
3741         to match <arpa/inet.h> declaration.
3742         * inet/inet_netof.c (inet_netof): Likewise.
3743         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
3744         Reported by Momchil Velikov <velco@fadata.bg>.
3745
3746         * configure.in: Skip AUTOCONF check under --without-cvs.
3747         * configure: Regenerated.
3748
3749         * posix/Makefile (headers): Add bits/pthreadtypes.h.
3750         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
3751         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
3752
3753 2002-11-24  Andreas Schwab  <schwab@suse.de>
3754
3755         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
3756         with six arguments.
3757
3758 2002-11-19  Jim Meyering  <jim@meyering.net>
3759
3760         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
3761         as `static'.
3762         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
3763
3764 2002-11-23  Roland McGrath  <roland@redhat.com>
3765
3766         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
3767         Just produce hex output for datum sizes.
3768
3769         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
3770         Reported by Luca Barbieri <ldb@ldb.ods.org>.
3771
3772 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
3773
3774         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
3775         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
3776         and __unused3 fields.
3777         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
3778         [__WORDSIZE == 32]: Only PPC32 requires __unused1
3779         and __unused2 fields.
3780         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
3781         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
3782         __unused3, and __unused4 fields.
3783
3784         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
3785         obtain lowest address for profiling in __monstartup call.
3786
3787 2002-11-21  Roland McGrath  <roland@redhat.com>
3788
3789         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
3790         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
3791
3792         * locale/localeinfo.h (struct locale_data): Revert last change.
3793
3794         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
3795         From Ian Wienand <ianw@gelato.unsw.edu.au>.
3796
3797         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
3798         __NR_pread64 if not defined.
3799         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
3800         From Ian Wienand <ianw@gelato.unsw.edu.au>.
3801
3802 2002-11-21  Roland McGrath  <roland@frob.com>
3803
3804         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
3805         __libc_multiple_libcs here.  Call __setfpucw.
3806
3807 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
3808
3809         * elf/Makefile (tests): Don't run test-arrayX tests for now.
3810
3811         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
3812         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
3813         CLONE_CHILD_*TID flags.
3814
3815 2002-11-20  Andreas Jaeger  <aj@suse.de>
3816
3817         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
3818         We pass struct ucontext on x86-64.
3819         (GET_PC): Adjust.
3820         (GET_FRAME): Adjust.
3821         (GET_STACK): Adjust.
3822
3823 2002-11-20  Roland McGrath  <roland@redhat.com>
3824
3825         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
3826         conditionalize [! DO_VERSIONING] #error.
3827
3828         * scripts/abilist.awk: Grok function descriptor symbols.
3829
3830         * intl/tst-gettext.c (main): Check return values from setlocale.
3831         Add necessary unsetenv's to make LANG=existing-locale check work.
3832
3833         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
3834         so aborted prior runs don't confuse things.
3835
3836         * locale/localeinfo.h (struct locale_data: union locale_data_value):
3837         Use uintptr_t instead of unsigned int for `word' member.
3838         (_NL_CURRENT_WORD): Cast to uint32_t.
3839
3840         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
3841         value.
3842
3843 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
3844
3845         * elf/tls-macros.h: Add IA-64 definitions.
3846         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
3847
3848         * iconv/Makefile (tests): Add tst-iconv4.
3849         * iconv/tst-iconv4.c: New file.
3850
3851         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
3852         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
3853         __GCONV_INCOMPLETE_INPUT.
3854         (ucs4le_internal_loop): Likewise.
3855         (ucs4le_internal_loop_unaligned): Likewise.
3856         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
3857         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
3858         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
3859
3860         * iconv/loop.c (LOOPFCT): First test for empty input then for full
3861         output buffer.
3862
3863         * inet/getnameinfo.c: Use extend_alloca where appropriate.
3864         * sysdeps/posix/getaddrinfo.c: Likewise.
3865
3866         * include/alloca.h (extend_alloca): New define.  Based on stack
3867         direction it'll try to append to the previouls allocated buffer.
3868
3869 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
3870
3871         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
3872         use the same service for AF_INET and AF_INET6.
3873
3874 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
3875
3876         * intl/localealias.c (read_alias_file): Use only about 400 bytes
3877         of stack space instead of 16k.
3878
3879 2002-11-18  Wolfram Gloger  <wg@malloc.de>
3880
3881         * malloc/arena.c
3882         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
3883         nothing if not initialized.  Bug report from Marcus Brinkmann
3884         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
3885
3886 2002-11-19  Roland McGrath  <roland@redhat.com>
3887
3888         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
3889         sched_setaffinity.
3890
3891         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
3892         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
3893         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
3894         * configure: Regenerated.
3895
3896 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
3897
3898         * include/dlfcn.h: __libc_dlopen is now a macro calling
3899         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
3900         (__libc_dlopen_mode): New prototype.
3901         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
3902         new parameter.  Store new parameter in mode field of structure passed
3903         to do_dlopen.
3904         (struct do_dlopen_args): Add new field mode.
3905         (do_dlopen): Pass mode from parameter structure to _dl_open.
3906
3907 2002-11-11  Randolf Chung  <tausq@debian.org>
3908
3909         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
3910         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
3911         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
3912
3913         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
3914
3915         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
3916         Set -mdisable-fpregs for this file.
3917
3918 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
3919
3920         * sysdeps/unix/sysv/linux/configure.in:
3921         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
3922         from gcc-3.0 era for backwards compatibility.
3923         * sysdeps/unix/sysv/linux/configure: Regenerate.
3924
3925         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
3926         Define mcontext_t as a sigcontext.
3927
3928 2002-11-18  Roland McGrath  <roland@redhat.com>
3929
3930         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
3931         Free memory in `last_result' if it was used.
3932
3933         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
3934         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
3935         Do the parsing inline instead of copying strings and calling
3936         inet_network, and properly skip all alias names not matching the form.
3937
3938         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
3939
3940 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
3941
3942         * manual/pattern.texi (Wordexp Example): Fix sample code.
3943
3944         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
3945         childs stack which will be loaded into the %esi register.
3946
3947 2002-11-14  Paul Eggert  <eggert@twinsun.com>
3948
3949         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
3950         overflow when skipping the question part and when unpacking aliases.
3951
3952 2002-11-15  Roland McGrath  <roland@redhat.com>
3953
3954         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
3955         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
3956         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
3957
3958 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
3959
3960         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
3961         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
3962
3963 2002-11-15  Roland McGrath  <roland@redhat.com>
3964
3965         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
3966         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
3967         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
3968         (+make-include-of-dep): New canned sequence.
3969
3970         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
3971         From Dmitry V. Levin <ldv@altlinux.org>.
3972
3973 2002-11-14  Roland McGrath  <roland@redhat.com>
3974
3975         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
3976         * inet/herrno.c (__libc_h_errno): Likewise.
3977         * resolv/res_libc.c (__libc_res): Likewise.
3978         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
3979         (__res_state) [! USE___THREAD]: Don't define as weak.
3980         * csu/Versions: Revert last change.
3981         * resolv/Versions: Revert last change.
3982
3983         * Makerules ($(common-objpfx)%.make): New pattern rule.
3984         * tls.make.c: New file.
3985         * Makefile (distribute): Add it.
3986
3987         * sysdeps/generic/errno.c [! USE___THREAD]
3988         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
3989         with compat_symbol so they are not link-time visible.
3990         [! USE___THREAD] (__libc_errno): New alias for errno.
3991         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
3992         Add __libc_errno here.
3993         * inet/herrno.c [USE___THREAD]: Use this conditional
3994         in place of [USE_TLS && HAVE___THREAD].
3995         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
3996         (h_errno, _h_errno): Declare these with compat_symbol so they are not
3997         link-time visible.
3998         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
3999         * resolv/res_libc.c [! USE___THREAD]
4000         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
4001         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
4002         (__libc_res): Define as alias for _res.
4003         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
4004         Add __libc_h_errno and __libc_res here.
4005
4006 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
4007
4008         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
4009         * resolv/Versions (h_errno, _res): Likewise.
4010
4011 2002-11-14  Roland McGrath  <roland@redhat.com>
4012
4013         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
4014         (%.symlist): Likewise.
4015
4016 2002-11-13  Roland McGrath  <roland@redhat.com>
4017
4018         * scripts/abilist.awk: New file.
4019         * Makefile (distribute): Add it.
4020         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
4021         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
4022         [$(subdir) = elf] (tests): Depend on libc.symlist.
4023         (generated, common-generated): Add those files.
4024
4025         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
4026         * configure: Regenerated.
4027         * config.make.in (OBJDUMP): New variable, substituted by configure.
4028
4029         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
4030         (mallochook, reallochook): Set them up.
4031         (checkhdr): Check HDR->magic2 value.
4032         (freehook): Reset HDR->magic2.
4033         (memalignhook): New static function.
4034         (old_memalign_hook): New static variable.
4035         (mcheck, reallochook): Set __memalign_hook to memalignhook.
4036
4037         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
4038         for the new TCB.
4039
4040 2002-11-13  Andreas Jaeger  <aj@suse.de>
4041
4042         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
4043         attribute.
4044         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
4045
4046 2002-11-11  Paul Eggert  <eggert@twinsun.com>
4047
4048         * manual/crypt.texi (Cryptographic Functions): Mention that
4049         the MD5 one-way algorithm is compatible with BSD's.
4050
4051 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
4052
4053         * posix/regex_internal.c (re_string_skip_chars): Also return the last
4054         wide character.
4055         (re_string_reconstruct): Calculate the context by itself when the
4056         offset points out of the valid range.
4057         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
4058         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
4059         (IS_WIDE_WORD_CHAR): New macro.
4060         (IS_WIDE_NEWLINE): New macro.
4061
4062 2002-11-12  Andreas Jaeger  <aj@suse.de>
4063
4064         * sysdeps/x86_64/strchr.S: Don't use one register for two
4065         purposes, this fixes a bug noticed by test-strchr.c.
4066
4067         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
4068         correctly.
4069
4070 2002-11-12  Roland McGrath  <roland@redhat.com>
4071
4072         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
4073         (_G_IO_NO_BACKWARD_COMPAT): Define it.
4074
4075         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
4076         instead of <pt-machine.h>.
4077         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
4078         testandset.
4079         From Ian Wienand <ianw@gelato.unsw.edu.au>.
4080
4081 2002-11-10  Roland McGrath  <roland@redhat.com>
4082
4083         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
4084         Call fputs instead of fwprintf (simpler to follow in debugger).
4085
4086         * crypt/md5-crypt.c: Doc fix.
4087
4088         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
4089         the beginning of generated target commands.
4090
4091         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
4092         dependencies for these in case implicit rule search skipped the
4093         nonexistent source directory.
4094         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
4095         files with $(object-suffixes) as targets too.
4096         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
4097         and a target for it using $(make-target-directory).
4098
4099         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
4100
4101 2002-11-10  Roland McGrath  <roland@frob.com>
4102
4103         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
4104         * sysdeps/generic/bits/pthreadtypes.h: ... here.
4105
4106         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
4107         l_start == 0 and l_len == 1 as we do l_len == 0.
4108
4109 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
4110
4111         * po/da.po: Update from translation team.
4112
4113 2002-11-10  Roland McGrath  <roland@redhat.com>
4114
4115         * config.make.in (includedir): New variable, substituted by configure.
4116         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
4117         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
4118
4119 2002-11-10  Andreas Jaeger  <aj@suse.de>
4120
4121         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
4122         REG_OLDMASK and REG_CR2 to synch with kernel header.
4123         (NGREG): Increase.
4124
4125         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
4126         aliasing problem.
4127         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
4128         * nss/getnssent_r.c (__nss_getent_r): Likewise.
4129         (__nss_setent): Likewise.
4130         (__nss_getent_r): Likewise.
4131         * inet/getnetgrent_r.c (innetgr): Likewise.
4132         (__internal_setnetgrent_reuse): Likewise.
4133         (internal_getnetgrent_r): Likewise.
4134         * inet/ether_hton.c (ether_hostton): Likewise.
4135         * inet/ether_ntoh.c (ether_ntohost): Likewise.
4136         * sunrpc/netname.c (netname2user): Likewise.
4137         * sunrpc/publickey.c (getpublickey): Likewise.
4138         (getsecretkey): Likewise.
4139
4140 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
4141
4142         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
4143         error in range calculation.
4144
4145 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
4146
4147         * string/test-strspn.c (do_test): Ensure zero termination.
4148         * string/test-strpbrk.c (do_test): Likewise.
4149         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
4150         * string/test-strncpy.c (stupid_strncpy): Likewise.
4151         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
4152
4153 2002-10-08  Roland McGrath  <roland@redhat.com>
4154
4155         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
4156         nonzero characters.
4157
4158 2002-09-22  H.J. Lu  <hjl@gnu.org>
4159
4160         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
4161         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
4162         only if __NR_mmap2 is defined.
4163
4164         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
4165         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
4166         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
4167         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
4168
4169 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
4170
4171         * posix/bug-regex13.c (tests): Add new test.
4172
4173         * string/test-strchr.c (stupid_strchr): New function.
4174         (do_random_tests): Make sure the string is zero terminated.
4175         * string/test-strpbrk.c (stupid_strpbrk): New function.
4176         (do_random_tests): Make sure the string is zero terminated.
4177         * string/test-strcmp.c (stupid_strcmp): New function.
4178         (do_random_tests): Make sure the strings are zero terminated.
4179         * string/test-strspn.c (stupid_strspn): New function.
4180         (simple_strspn): Rename rej argument to acc.
4181         (do_random_tests): Make sure the string is zero terminated.
4182         * string/test-strcspn.c (stupid_strcspn): New function.
4183         * string/test-strncpy.c (stupid_strncpy): New function.
4184         * string/test-stpncpy.c (stupid_stpncpy): New function.
4185         * string/test-strncmp.c (stupid_strncmp): New function.
4186         (do_random_tests): Make sure the strings are zero terminated.
4187         * string/test-string.h (impl_t): Change test into long.
4188         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
4189
4190 2002-11-08  Roland McGrath  <roland@redhat.com>
4191
4192         * sysdeps/ia64/elf/configure.in: Add TLS check.
4193         From Ian Wienand <ianw@cse.unsw.edu.au>.
4194         * sysdeps/ia64/elf/configure: Regenerated.
4195
4196 2002-11-07  Roland McGrath  <roland@redhat.com>
4197
4198         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
4199         place of _IO_new_do_write.
4200         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
4201         #undef before versioned_symbol use.
4202
4203 2002-11-07  Richard Henderson  <rth@redhat.com>
4204
4205         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
4206         * configure: Regenerated.
4207         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
4208         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
4209         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
4210         _dl_fini via gp-relative relocations.
4211         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
4212
4213         * elf/tls-macros.h: Add alpha versions.
4214         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
4215         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
4216         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
4217         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
4218         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
4219         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
4220         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
4221         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
4222         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
4223         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
4224         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
4225         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
4226         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
4227         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
4228         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
4229         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
4230         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
4231         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
4232
4233         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
4234         Kill argument registers across the inline syscall.
4235
4236         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
4237
4238         * linuxthreads/sysdeps/alpha/tls.h: New file.
4239         * sysdeps/alpha/dl-tls.h: New file.
4240
4241 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
4242
4243         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
4244         (gmon_initializer): New function.
4245         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
4246         __gmon_start__ here.  Call it from gmon_initializer() instead.
4247
4248 2002-03-12  H.J. Lu  <hjl@gnu.org>
4249
4250         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
4251         tst-array2, and tst-array3.
4252         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
4253         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
4254         ($(objpfx)tst-array1.out): New target.
4255         ($(objpfx)tst-array2): Likewise.
4256         ($(objpfx)tst-array2.out): Likewise.
4257         ($(objpfx)tst-array3.out): Likewise.
4258         * elf/tst-array1.c: New file.
4259         * elf/tst-array1.exp: Likewise.
4260         * elf/tst-array2.c: Likewise.
4261         * elf/tst-array2dep.c: Likewise.
4262         * elf/tst-array2.exp: Likewise.
4263         * elf/tst-array3.c: Likewise.
4264
4265 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
4266
4267         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
4268         Don't add L->l_addr to array entry values.
4269
4270 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
4271
4272         * string/test-string.h: New file.
4273         * string/test-strlen.c: New file.
4274         * string/test-string.h: New file.
4275         * string/test-strcmp.c: New file.
4276         * string/test-strchr.c: New file.
4277         * string/test-strrchr.c: New file.
4278         * string/test-strcpy.c: New file.
4279         * string/test-stpcpy.c: New file.
4280         * string/test-strncpy.c: New file.
4281         * string/test-stpncpy.c: New file.
4282         * string/test-strpbrk.c: New file.
4283         * string/test-strcspn.c: New file.
4284         * string/test-strspn.c: New file.
4285         * string/test-strcat.c: New file.
4286         * string/test-strncmp.c: New file.
4287         * string/test-memchr.c: New file.
4288         * string/test-memcmp.c: New file.
4289         * string/test-memset.c: New file.
4290         * string/test-memcpy.c: New file.
4291         * string/test-mempcpy.c: New file.
4292         * string/test-memmove.c: New file.
4293         * string/Makefile (strop-tests): New variable.
4294         (tests): Add strop-tests.
4295         (distribute): Add test-string.h.
4296
4297 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
4298
4299         * posix/regcomp.c: Use tabs instead of spaces.
4300         * posix/regexec.c: Likewise.
4301         * posix/regex_internal.h: Likewise.
4302
4303         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
4304
4305 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
4306
4307         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
4308         here.
4309         (regcomp): Don't set can_be_null here.
4310         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
4311         (re_compile_internal): Clear can_be_null, set regs_allocated.
4312
4313         * posix/regcomp.c (re_set_fastmap): New function.
4314         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
4315         COMPLEX_BRACKET check.
4316         * posix/regexec.c (re_search_internal): Optimize searching with
4317         fastmap.  Call re_string_reconstruct even if match_first is
4318         smaller than raw_mbs_idx.
4319
4320 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
4321
4322         * posix/regcomp (free_dfa_content): Use free_state.
4323         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
4324         pointers in case that realloc failed.
4325         (re_node_set_merge): Likewise.
4326         (register_state): Likewise.
4327         (create_newstate_common): Invoke memory release functions in case of
4328         error conditions.
4329         (create_ci_newstate): Likewise.
4330         (create_cd_newstate): Likewise.
4331         (free_state): New function.
4332         * posix/regexec.c (re_search_internal): Invoke memory release
4333         functions in case of error conditions.
4334         (sift_states_backward): Likewise.
4335         (merge_state_array): Likewise.
4336         (add_epsilon_src_nodes): Likewise.
4337         (sub_epsilon_src_nodes): Likewise.
4338         (search_subexp): Likewise.
4339         (sift_states_bkref): Likewise.
4340         (transit_state_sb): Likewise.
4341         (transit_state_mb): Likewise.
4342         (transit_state_bkref_loop): Likewise.
4343         (group_nodes_into_DFAstates): Likewise.
4344         (push_fail_stack): Don't edit pointers in case that realloc failed.
4345         (extend_buffers): Likewise.
4346         (match_ctx_add_entry): Likewise.
4347
4348 2002-11-06  Roland McGrath  <roland@redhat.com>
4349
4350         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
4351         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
4352
4353         * configure.in: Add checks on as and ld for binutils 2.13 or later.
4354         * configure: Regenerated.
4355
4356 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
4357
4358         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
4359         If re_compile_internal failed free fastmap buffer.
4360         (free_dfa_content): Broken out of regfree function.  Frees all dfa
4361         related data.
4362         (regfree): Add free_dfa_content.
4363         (re_compile_internal): If any of the called functions fails free
4364         all dfa related memory.
4365
4366 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
4367
4368         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
4369         warnings from the kernel headers.
4370
4371 2002-11-05  Roland McGrath  <roland@redhat.com>
4372
4373         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
4374         From Johannes Stezenbach <js@convergence.de>.
4375
4376         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
4377         #errlist-compat magic comment to give 123 as size.
4378         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
4379         (libc: GLIBC_2.2): ... here.
4380         (libc: GLIBC_2.3): Likewise.
4381
4382 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
4383
4384         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
4385         which happens at the beginning so that we can unload modules in
4386         __libc_freeres.
4387
4388 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4389
4390         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
4391         under [__USE_MISC || _ASM].
4392
4393         * elf/elf.h: Remove the obsolete SH TLS relocations.
4394
4395 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
4396
4397         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
4398
4399 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
4400
4401         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
4402         __NR_pread64 and __NR_pwrite64.
4403         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
4404         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
4405         and __NR_pwrite64.
4406         Revert change to use INLINE_SYSCALL.
4407         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
4408         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
4409         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
4410         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
4411         INLINE_SYSCALL.
4412         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
4413
4414         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
4415         Update clobber list and add a comment about the syscall ABI.
4416
4417         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
4418         s_pwrite64, s_ftruncate, s_truncate): Re-add.
4419
4420 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
4421
4422         * iconv/gconv_dl.c (free_mem): Clear loaded.
4423         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
4424         cleanup if any.
4425
4426 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
4427
4428         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
4429
4430         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
4431         as old code without locking.  _IO_seekoff calls this function after
4432         locking the stream.
4433         * libio/ioseekpos.c: Likewise for _IO_seekpos.
4434         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
4435         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
4436         prototypes.
4437         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
4438         of _IO_seekoff_internal.
4439         (_IO_rewind): Likewise.
4440         * libio/ioftell.c: Likewise.
4441         * libio/ftello.c: Likewise.
4442         * libio/ftello64.c: Likewise.
4443         * libio/iofgetpos.c: Likewise.
4444         * libio/iofgetpos64.c: Likewise.
4445         * libio/oldiofgetpos.c: Likewise.
4446         * libio/oldiofgetpos64.c: Likewise.
4447         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
4448         _IO_seekpos_internal.
4449         * libio/iofsetpos64.c: Likewise.
4450         * libio/oldiofsetpos.c: Likewise.
4451         * libio/oldiofsetpos64.c: Likewise.
4452
4453 2002-11-04  Roland McGrath  <roland@redhat.com>
4454
4455         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
4456         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
4457         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
4458         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
4459         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
4460         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
4461         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
4462         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
4463         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
4464         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
4465         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
4466         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
4467         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
4468         Remove these, no longer used.
4469
4470 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
4471
4472         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
4473         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
4474         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
4475         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
4476         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
4477         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
4478         syscall stubs.
4479
4480         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
4481         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
4482         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
4483         and __NR_pread.
4484         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
4485         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
4486         and __NR_pwrite.
4487         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
4488
4489 2002-11-03  Roland McGrath  <roland@redhat.com>
4490
4491         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
4492         `_dl_tls_static_used'.
4493         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
4494         (__libc_setup_tls): Initialize it.  Let the initial value of
4495         _dl_tls_static_size indicate some surplus space in the computed value.
4496         * elf/dl-open.c (_dl_tls_static_size): New variable.
4497         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
4498         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
4499         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
4500         (CHECK_STATIC_TLS): Use it.
4501         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
4502         closed objects occupied a trailing contiguous chunk of static TLS area.
4503
4504 2002-10-18  Bruno Haible  <bruno@clisp.org>
4505
4506         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
4507
4508 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
4509
4510         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
4511         _wide_data->_IO_read_end if adjustment can be made in the current
4512         buffer.
4513
4514         * sysdeps/unix/sysv/linux/fexecve.c: New file.
4515
4516         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
4517         wide oriented streams are used.
4518
4519         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
4520         service hasn't been used [PR libc/4744].
4521
4522         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
4523         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
4524
4525         * manual/examples/dir.c: Don't include <stddef.h>.
4526         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
4527         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
4528
4529 2002-11-02  H.J. Lu  <hjl@gnu.org>
4530
4531         * stdio-common/reg-printf.c: Include <stddef.h>.
4532
4533 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
4534
4535         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
4536
4537         * po/ca.po: Update from translation team.
4538         * po/es.po: Likewise.
4539
4540         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
4541         is defined write out memory map.
4542         * sysdeps/unix/sysv/linux/segfault.c: New file.
4543
4544 2002-11-02  Roland McGrath  <roland@redhat.com>
4545
4546         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
4547         pointers that can alias.
4548         Reported by Daniel Jacobowitz <drow@mvista.com>.
4549
4550         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
4551
4552 2002-11-02  Roland McGrath  <roland@redhat.com>
4553
4554         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
4555         description to be clearer and to say that *RESULT is set to ENTRY.
4556
4557 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
4558
4559         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
4560         dests_ch arrays together.  Alloca or malloc dest_states,
4561         dest_states_word and dest_states_nl arrays together.  Free memory on
4562         error exit.
4563
4564 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
4565
4566         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
4567         and current_saltbits.
4568
4569 2002-11-02  Roland McGrath  <roland@redhat.com>
4570
4571         * stdio-common/reg-printf.c: Include <stdlib.h>.
4572
4573 2002-11-02  H.J. Lu  <hjl@gnu.org>
4574
4575         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
4576         caller to EXTRA instead of execve.
4577
4578 2002-11-01  Roland McGrath  <roland@redhat.com>
4579
4580         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
4581         in place of [!(USE_TLS && HAVE___THREAD)].
4582         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
4583
4584 2002-10-31  Roger Sayle  <roger@eyesopen.com>
4585
4586         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
4587         New macros.
4588         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
4589
4590         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
4591         without defining FP_ROUNDMODE.
4592
4593 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
4594
4595         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
4596         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
4597         declare_symbol.
4598         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
4599         (OLD_SIGLIST_SIZE): Define.
4600         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
4601         (OLD_SIGLIST_SIZE): Define.
4602         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
4603
4604 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
4605
4606         * sysdeps/ia64/strncpy.S: Fix recovery code.
4607
4608 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
4609
4610         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
4611         New macros.
4612         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
4613         text_set_element.
4614         * elf/dl-libc.c (free_mem): Likewise.
4615         * iconv/gconv_conf.c (free_mem): Likewise.
4616         * iconv/gconv_db.c (free_mem): Likewise.
4617         * iconv/gconv_dl.c (free_mem): Likewise.
4618         * iconv/gconv_cache.c (free_mem): Likewise.
4619         * intl/finddomain.c (free_mem): Likewise.
4620         * intl/dcigettext.c (free_mem): Likewise.
4621         * locale/setlocale.c (free_mem): Likewise.
4622         * misc/fstab.c (fstab_free): Likewise.
4623         * nss/nsswitch.c (free_mem): Likewise.
4624         * posix/regcomp.c (free_mem): Likewise.
4625         * resolv/gai_misc.c (free_res): Likewise.
4626         * stdlib/fmtmsg.c (free_mem): Likewise.
4627         * sunrpc/clnt_perr.c (free_mem): Likewise.
4628         * sysdeps/generic/setenv.c (free_mem): Likewise.
4629         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
4630         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
4631         * time/tzset.c (free_mem): Likewise.
4632         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
4633         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
4634         * malloc/set-freeres.c (__libc_freeres): Likewise.
4635
4636         * login/getutent.c: Include stdlib.h instead of stddef.h.
4637         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
4638         (__getutent): Allocate buffer the first time it is run.
4639         * login/getutid.c: Include stdlib.h instead of stddef.h.
4640         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
4641         (__getutid): Allocate buffer the first time it is run.
4642         * login/getutline.c: Include stdlib.h instead of stddef.h.
4643         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
4644         (__getutline): Allocate buffer the first time it is run.
4645         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
4646         (mtrace): Allocate malloc_trace_buffer.
4647         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
4648         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
4649         * string/strerror.c: Include libintl.h and errno.h.
4650         (buf): New variable.
4651         (strerror): Only allocate buffer if actually needed (unknown error).
4652         * time/tzfile.c (transitions): Add libc_freeres_ptr.
4653         (freeres): Remove.
4654
4655 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
4656
4657         * include/libc-symbols.h (libc_freeres_ptr): New macro.
4658         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
4659         symbol_set_define.
4660         (__libc_freeres): Free all pointers in that section.
4661         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
4662         commands when creating .lds script.
4663         (LDSEDCMD-c.so): New variable.
4664         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
4665         (rcmd_af): Use strdup to allocate ahostbuf.
4666         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
4667         (rexec_af): Use strdup to allocate ahostbuf.
4668         * stdio-common/reg-printf.c (printf_funcs): Remove.
4669         (__printf_arginfo_table): Change into printf_arginfo_function **.
4670         Add libc_freeres_ptr.
4671         (__register_printf_function): Allocate __printf_arginfo_table
4672         and __printf_function_table the first time it is called.
4673         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
4674         printf_arginfo_function **.
4675         (parse_one_spec): Add __builtin_expect.
4676         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
4677         (free_mem): Remove.
4678         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
4679         (free_mem): Remove.
4680         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
4681         (string_space, map): Add libc_freeres_ptr.
4682         (free_mem): Remove.
4683         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
4684         (free_mem): Remove.
4685         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
4686         (free_mem): Remove.
4687         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
4688         (buffer): Add libc_freeres_ptr.
4689         (free_mem): Remove for _LIBC.
4690         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
4691         (free_mem): Remove.
4692         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
4693         (free_mem): Remove.
4694         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
4695         (free_mem): Remove.
4696         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
4697         (free_mem): Remove.
4698         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
4699         (free_mem): Remove.
4700         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
4701         (free_mem): Remove.
4702         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
4703         libc_freeres_ptr.
4704         (free_mem): Remove.
4705         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
4706         libc_freeres_ptr.
4707         (free_mem): Remove.
4708
4709 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
4710
4711         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
4712         instead of duplicating the whole function in libc.
4713
4714 2002-10-31  Roland McGrath  <roland@redhat.com>
4715
4716         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
4717         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
4718
4719 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
4720
4721         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
4722         32bit-predefine when creating .new32 list and -U for each
4723         32bit-predefine when creating .new64 list.
4724         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
4725
4726 2002-10-29  Andreas Schwab  <schwab@suse.de>
4727
4728         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
4729         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
4730
4731 2002-10-25  Roland McGrath  <roland@redhat.com>
4732
4733         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
4734         * sysdeps/unix/sysv/linux/configure: Regenerated.
4735
4736         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
4737         _dl_starting_up decl.
4738
4739 2002-10-20  H.J. Lu  <hjl@gnu.org>
4740
4741         * sysdeps/unix/sysv/linux/configure.in: Don't check
4742         /lib/modules/`uname -r`/build/include for kernel headers if
4743         cross compiling.
4744         * sysdeps/unix/sysv/linux/configure: Regenerated.
4745
4746 2002-10-25  Roland McGrath  <roland@redhat.com>
4747
4748         * math/math.h (M_LOG2El): Correct the value.
4749         From Stephen L Moshier <steve@moshier.net>.
4750
4751         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
4752         conditional from __libc_multiple_libcs access.  Remove kludge for weak
4753         symbol access with old compilers we no longer support.
4754         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
4755         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
4756
4757 2002-10-25  Roland McGrath  <roland@redhat.com>
4758
4759         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
4760         implement SV_RESETHAND by translating it to SA_RESETHAND.
4761
4762 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
4763
4764         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
4765         type on ELF64 platforms.
4766
4767 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
4768
4769         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
4770
4771         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
4772
4773 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
4774
4775         * elf/dl-misc.c: Include <sysdep.h>.
4776         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
4777
4778         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
4779         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
4780         (INLINE_SYSCALL): Use that.
4781         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
4782         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
4783         (INLINE_SYSCALL): Use that.
4784         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
4785         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
4786         (INLINE_SYSCALL): Use that.
4787         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
4788         dl-sysdep.h.
4789         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
4790         (__INTERNAL_SYSCALL_STRING): Define.
4791         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
4792         dl-sysdep.h.
4793         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
4794         (__INTERNAL_SYSCALL_STRING): Define.
4795         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
4796         __SYSCALL_STRING to inline_syscall*.
4797         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
4798         New macros.
4799         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
4800         inline_syscall4, inline_syscall5, inline_syscall6): Add string
4801         argument.
4802
4803 2002-10-24  Roland McGrath  <roland@redhat.com>
4804
4805         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
4806         * sysdeps/unix/sysv/linux/init-first.c: Not here.
4807         * sysdeps/powerpc/elf/libc-start.c: Or here.
4808         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
4809         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
4810         * sysdeps/unix/sysv/aix/init-first.c: Or here.
4811         * sysdeps/generic/libc-start.c: Or here.
4812         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
4813         access with [! SHARED].
4814         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
4815
4816         * libio/bug-wfflush.c: New file.
4817         * libio/Makefile (tests): Add bug-wfflush.
4818
4819 2002-10-23  Roland McGrath  <roland@redhat.com>
4820
4821         * stdio-common/tst-fphex.c: New file.
4822         * stdio-common/Makefile (tests): Add tst-fphex.
4823         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
4824         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
4825         chars always before the value digits.
4826         Reported by James Antill <james.antill@redhat.com>.
4827
4828 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
4829
4830         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
4831         (free_mem): New function.
4832         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
4833         if not cross compiling.
4834         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
4835         (bug-regex14-ENV): Set.
4836         (bug-regex14-mem): New target.
4837         * posix/bug-regex14.c: New file.
4838
4839 2002-10-23  Roland McGrath  <roland@redhat.com>
4840
4841         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
4842         target, so we don't touch it when the link fails.
4843
4844         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
4845         Check for the result overflowing off_t and fail with EOVERFLOW.
4846         * libio/ioftell.c (_IO_ftell): Likewise.
4847         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
4848
4849         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
4850         use a temporary timeval on the stack for gettimeofday and copy it.
4851         * login/logout.c (logout): Likewise.
4852         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
4853
4854         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
4855         Use __SWORD_TYPE instead of int for member types.
4856         (struct statfs64): Likewise.
4857         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
4858         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
4859         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
4860         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
4861         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
4862
4863         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
4864         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
4865         (ST_NODIRATIME): Restore fixed value of 2048.
4866         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
4867         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
4868
4869         Rearranged <bits/types.h> definitions to reduce duplication.
4870         * sysdeps/generic/bits/types.h: Rewritten, using macros from
4871         <bits/wordsize.h> and new header <bits/typesizes.h>.
4872         * posix/Makefile (headers): Add bits/typesizes.h here.
4873         * sysdeps/generic/bits/typesizes.h: New file.
4874         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
4875         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
4876         * sysdeps/mach/hurd/bits/typesizes.h: New file.
4877         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
4878         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
4879         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
4880         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
4881         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
4882         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
4883         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
4884         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
4885         <bits/pthreadtypes.h> here, not in <bits/types.h>.
4886         * signal/signal.h: Likewise.
4887
4888         * streams/stropts.h: Include <bits/xtitypes.h>.
4889         * streams/Makefile (headers): Add bits/xtitypes.h here.
4890         * sysdeps/generic/bits/xtitypes.h: New file.
4891         * sysdeps/s390/bits/xtitypes.h: New file.
4892         * sysdeps/ia64/bits/xtitypes.h: New file.
4893         * sysdeps/x86_64/bits/xtitypes.h: New file.
4894
4895         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
4896         * sysdeps/generic/bits/ipctypes.h: New file.
4897         * sysdeps/mips/bits/ipctypes.h: New file.
4898         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
4899         * sysdeps/gnu/bits/msq.h: Likewise.
4900         * sysvipc/sys/ipc.h: Likewise.
4901
4902 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
4903
4904         * elf/dl-load.c (struct filebuf): For buf element to have the
4905         alignment of ElfXX_Ehdr since this is what will be stored in it.
4906
4907 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
4908
4909         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
4910         into pointer to locrec_offset.
4911         (add_locale_to_archive): Adjust callers.  Free normalized_name right
4912         before returning, not immediately after add_locale, pass it to
4913         add_alias if not NULL instead of name.  Rename second normalized_name
4914         occurence to nnormalized_codeset_name.
4915
4916         * locale/programs/locarchive.c (enlarge_archive): Make sure
4917         string_size is always a multiple of 4.
4918         Reported by Andreas Schwab <schwab@suse.de>.
4919
4920 2002-10-21  Andreas Schwab  <schwab@suse.de>
4921
4922         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
4923         caller to EXTRA instead of execve, since the latter has a
4924         higher-priority implementation in linuxthreads.
4925
4926 2002-10-21  Roland McGrath  <roland@redhat.com>
4927
4928         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
4929         slotinfo list's len member to the proper size, not just 1.
4930         Initialize static_map.l_tls_initimage.
4931
4932         * elf/dl-open.c (dl_open_worker): Fix loop searching for
4933         dtv_slotinfo_list element containing new modules' l_tls_modid.
4934
4935         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
4936         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
4937         * elf/Makefile (tests): Add tst-tls9.
4938         (tests-static): Add tst-tls9-static.
4939         (tst-tls9-static-ENV): New variable.
4940         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
4941
4942         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
4943         modids used by partially loaded modules being closed can't be known.
4944
4945 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
4946
4947         * posix/Makefile: Add a test case for the bug reported by Aharon
4948         Robbins <arnold@skeeve.com>.
4949         * posix/bug-regex13.c: New file.
4950         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
4951
4952 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
4953
4954         * csu/gmon-start.c: Pretty printing.
4955
4956 2002-10-19  Art Haas  <ahaas@neosoft.com>
4957
4958         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
4959         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
4960         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
4961         * configure: Regenerated.
4962
4963 2002-10-19  Roland McGrath  <roland@redhat.com>
4964
4965         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
4966         and then set $subdirs directly, because the new Autoconf breaks
4967         compatibility in every way imaginable and insists on whining
4968         about usage that worked since the dawn of time.
4969         * configure: Regenerated.
4970
4971         * configure: Regenerated (using Autoconf 2.54).
4972         * sysdeps/alpha/elf/configure: Likewise.
4973         * sysdeps/generic/configure: Likewise.
4974         * sysdeps/i386/elf/configure: Likewise.
4975         * sysdeps/ia64/elf/configure: Likewise.
4976         * sysdeps/mach/hurd/configure: Likewise.
4977         * sysdeps/mach/configure: Likewise.
4978         * sysdeps/unix/configure: Likewise.
4979         * sysdeps/unix/common/configure: Likewise.
4980         * sysdeps/unix/sysv/aix/configure: Likewise.
4981         * sysdeps/unix/sysv/linux/configure: Likewise.
4982         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
4983         * sysdeps/x86_64/elf/configure: Likewise.
4984
4985         * config.make.in: Nix completely-soft nonsense.
4986         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
4987         of machine directories instead of fpu subdirectory.
4988         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
4989         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
4990         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
4991         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
4992         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
4993         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
4994         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
4995         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
4996         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
4997         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
4998         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
4999         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
5000         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
5001         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
5002         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
5003         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
5004         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
5005         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
5006         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
5007         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
5008         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
5009         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
5010         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
5011         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
5012         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
5013         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
5014         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
5015         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
5016         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
5017         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
5018         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
5019         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
5020         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
5021         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
5022         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
5023         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
5024         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
5025         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
5026         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
5027         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
5028
5029 2002-10-19  Bruno Haible  <bruno@clisp.org>
5030
5031         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
5032
5033 2002-10-18  Roland McGrath  <roland@redhat.com>
5034
5035         * io/Makefile (routines): Add lchmod.
5036         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
5037         * sysdeps/generic/lchmod.c: New file.
5038         * sysdeps/mach/hurd/lchmod.c: New file.
5039         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
5040
5041 2002-10-18  Art Haas  <ahaas@neosoft.com>
5042
5043         * configure.in: Remove remaining AC_FD_CC macros, and replace
5044         AC_FD_MSG with AS_MESSAGE_FD.
5045
5046 2002-10-18  Roland McGrath  <roland@redhat.com>
5047
5048         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
5049         typos: VALUE -> FINALADDR.
5050
5051         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
5052         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
5053         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
5054         (inline_syscall6): Move these macros ...
5055         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
5056
5057         * configure.in (libc_link_dests, libc_link_sources): Remove these
5058         variables and the AC_LINK_FILES call.
5059
5060         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
5061         change to put new symbols here instead of in GLIBC_2.2.
5062         * sysdeps/powerpc/Subdirs: Move this file ...
5063         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
5064
5065 2002-10-07  Roland McGrath  <roland@redhat.com>
5066
5067         * sysdeps/generic/bits/time.h: Replaced with contents of the
5068         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
5069         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
5070         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
5071         macros is ok even for architectures that don't now implement them.
5072         * sysdeps/mach/hurd/bits/time.h: File removed.
5073         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
5074         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
5075         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
5076         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
5077         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
5078
5079 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
5080
5081         * configure.in: Replace obsolete AC_OUTPUT syntax with
5082         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
5083
5084         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
5085         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
5086
5087         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
5088         * sysdeps/alpha/elf/configure.in: Likewise.
5089         * sysdeps/i386/elf/configure.in: Likewise.
5090         * sysdeps/mach/hurd/configure.in: Likewise.
5091         * sysdeps/x86_64/elf/configure.in: Likewise.
5092
5093         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
5094
5095         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
5096         * sysdeps/generic/configure.in: Likewise.
5097         * sysdeps/i386/elf/configure.in: Likewise.
5098         * sysdeps/ia64/elf/configure.in: Likewise.
5099         * sysdeps/mach/configure.in: Likewise.
5100         * sysdeps/mach/hurd/configure.in: Likewise.
5101         * sysdeps/unix/configure.in: Likewise.
5102         * sysdeps/unix/common/configure.in: Likewise.
5103         * sysdeps/unix/sysv/aix/configure.in: Likewise.
5104         * sysdeps/unix/sysv/linux/configure.in: Likewise.
5105         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
5106         * sysdeps/x86_64/elf/configure.in: Likewise.
5107
5108         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
5109         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
5110         that it's obvious when extra autoconf machinery is being dragged in.
5111
5112 2002-10-18  Roland McGrath  <roland@redhat.com>
5113
5114         * configure.in: Remove bogus echo included in
5115         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
5116         * configure: Regenerated.
5117
5118 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
5119
5120         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
5121         (statfs_filesize_max): New function.
5122         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
5123         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
5124         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
5125         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
5126         statfs_filesize_max.
5127         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
5128         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
5129         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
5130
5131 2002-10-17  Roland McGrath  <roland@redhat.com>
5132
5133         * configure.in (MIG): Just AC_SUBST it here.
5134         * configure: Regenerated.
5135         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
5136         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
5137         * sysdeps/mach/configure: Regenerated.
5138
5139         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
5140         and AC_PROVIDE([_AS_CR_PREPARE]).
5141
5142         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
5143         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
5144
5145         * elf/dl-support.c: Move _dl_tls_* variables to ...
5146         * sysdeps/generic/libc-tls.c: ... here.
5147
5148         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
5149         allow IDX to be one past the current last slotinfo entry.
5150         (_dl_close): Pass IMAP->l_init_called for that parameter.
5151
5152 2002-10-07  Andreas Schwab  <schwab@suse.de>
5153
5154         * aclocal.m4: Fix for autoconf 2.53.
5155         * configure.in: Likewise.  Require autoconf 2.53.
5156
5157 2002-10-08  Richard Henderson  <rth@redhat.com>
5158
5159         * soft-fp/op-4.h: Handle carry correctly in
5160         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
5161         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
5162         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
5163
5164 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
5165
5166         * configure.in: Compute completely-soft.
5167         * config.make.in: Make completely-soft available to sub-makes.
5168         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
5169         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
5170         fe_nomask to libm-support.
5171         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
5172         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
5173         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
5174         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
5175         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
5176         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
5177         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
5178         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
5179         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
5180         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
5181         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
5182         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
5183         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
5184         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
5185         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
5186         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
5187         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
5188         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
5189         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
5190         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
5191         __sim_round_mode.
5192         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
5193         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
5194         FP_HANDLE_EXCEPTIONS.
5195         Define FP_ROUNDMODE.
5196         Redefine FP_* macros to correspond to the FE_* bit positions.
5197         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
5198         Define externs for __sim_exceptions, __sim_disabled_exceptions,
5199         __sim_round_mode, __simulate_exceptions.
5200         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
5201         * sysdeps/powerpc/bits/fenv.h: ...to here.
5202
5203 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
5204
5205         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
5206         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
5207         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
5208         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
5209         __builtin_expect.
5210
5211 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
5212
5213         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
5214         __libc_res_nsend): New prototypes.
5215         * resolv/res_query.c (QUERYSIZE): Define.
5216         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
5217         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
5218         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
5219         res_nsend, pass answerp.
5220         (res_nquery): Changed into wrapper around __libc_res_nquery.
5221         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
5222         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
5223         instead of the non-__libc_ variants, pass them answerp.
5224         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
5225         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
5226         Added answerp argument.  Call __libc_res_nquery instead of
5227         res_nquery, pass answerp.
5228         (res_nquerydomain): Changed into wrapper around
5229         __libc_res_nquerydomain.
5230         * resolv/res_send.c: Include sys/ioctl.h.
5231         (MAXPACKET): Define.
5232         (send_vc): Change arguments.  Reallocate answer buffer if it is
5233         too small.
5234         (send_dg): Likewise.
5235         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
5236         Reallocate answer buffer if it is too small and hooks are in use.
5237         Adjust calls to send_vc and send_dg.
5238         (res_nsend): Changed into wrapper around __libc_res_nsend.
5239         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
5240         just 1K answer buffer on the stack, use __libc_res_nsearch instead
5241         of res_nsearch.
5242         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
5243         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
5244         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
5245         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
5246         (gethostbyaddr): Similarly with __libc_res_nquery.
5247         * resolv/Versions (libresolv): Export __libc_res_nquery and
5248         __libc_res_nsearch at GLIBC_PRIVATE.
5249
5250 2002-10-17  Roland McGrath  <roland@redhat.com>
5251
5252         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
5253         * configure: Regenerated.
5254
5255         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
5256         before performing the reloc, not after.
5257         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
5258
5259 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
5260
5261         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
5262         * locale/programs/linereader.c (lr_open): Likewise.
5263         * locale/programs/charmap-dir.c (charmap_open): Likewise.
5264         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
5265
5266 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
5267
5268         * posix/bug-regex11.c: Add a test case for the bug reported by
5269         Paolo Bonzini <bonzini@gnu.org>.
5270         * posix/regexec.c (sift_states_bkref): Use correct destination of
5271         the back reference.
5272
5273 2002-10-17  Roland McGrath  <roland@redhat.com>
5274
5275         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
5276         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
5277         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
5278         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
5279         Call it after performing TPOFF relocs.
5280         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
5281         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
5282         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
5283
5284         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
5285         when closing a partially-initialized object.
5286
5287         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
5288         instead of _dl_fatal_printf when we see PT_TLS.
5289
5290         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
5291         instead of $(libof-$<).
5292
5293 2002-10-16  Roland McGrath  <roland@redhat.com>
5294
5295         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
5296         instead of += to append, to be sure $(lib) gets expanded at defn time.
5297         (libof-$(cpp-src)): New variable, define this instead.
5298         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
5299         (lib): Don't use override.
5300         (CPPFLAGS-$(lib)): New variable, put -D's here.
5301         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
5302         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
5303         LIB found by $(libof-*) for basename, target, or source.
5304         * Makerules (CPPFLAGS-nonlib): New variable.
5305         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
5306         * locale/Makefile (lib): Likewise.
5307         * sunrpc/Makefile (lib): Likewise.
5308
5309         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
5310         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
5311         * sysdeps/unix/sysv/linux/pathconf.h: New file.
5312         (statfs_link_max): New function, guts from fpathconf.c.
5313         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
5314         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
5315         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
5316         to use the linux/pathconf.c code by #include rather than duplication.
5317         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
5318
5319 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
5320
5321         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
5322         Use __libc_errno only for libc itself.
5323
5324 2002-10-16  Andreas Jaeger  <aj@suse.de>
5325
5326         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
5327
5328 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
5329
5330         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
5331         Use __libc_errno only for libc itself.
5332
5333 2002-10-15  Roland McGrath  <roland@redhat.com>
5334             Jakub Jelinek  <jakub@redhat.com>
5335
5336         * sysdeps/unix/sysv/linux/Makefile
5337         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
5338         sparc/Makefile to produce a bi-arch file as needed.
5339         That's now parameterized by the variable $(64bit-predefine).
5340         Use LC_ALL=C for `comm' commands in that rule.
5341         No longer conditional on [$(no_syscall_list_h)].
5342         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
5343         (64bit-predefine): New variable.
5344         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
5345         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
5346         * sysdeps/unix/sysv/linux/powerpc/Makefile
5347         (64bit-predefine): New variable.
5348
5349 2002-10-15  Roland McGrath  <roland@redhat.com>
5350
5351         * sysdeps/unix/sysv/linux/Makefile
5352         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
5353
5354         * login/utmp-private.h: Declare __libc_utmp_lock.
5355         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
5356         and call __libc_utmp_jump_table functions directly, instead of using
5357         __setutent et al.
5358
5359         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
5360         * sysdeps/unix/sysv/linux/configure: Regenerated.
5361
5362         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
5363         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
5364         Use int32_t for ll_time.
5365         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
5366         Use int32_t instead of long int for ut_session.
5367         Use an anonymous struct with 32-bit fields for ut_tv.
5368         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
5369         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
5370         here as in utmp.h for `struct utmp'.
5371         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
5372         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
5373         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
5374         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
5375         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
5376         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
5377
5378         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
5379         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
5380         All the following files were identical or equivalent to it.
5381         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
5382         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
5383         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
5384         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
5385         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
5386         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
5387         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
5388         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
5389         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
5390         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
5391
5392         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
5393         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
5394         Other than the previously incorrect sign of msg_iovlen, this is a
5395         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
5396         match their layouts as well, so the following are now identical to it.
5397         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
5398         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
5399         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
5400         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
5401         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
5402
5403 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
5404
5405         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
5406         Define for 2.4+ kernels.
5407
5408         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
5409         are known to have the vfork syscall.  Don't confuse the CPUs
5410         branch prediction unit by jumping to the return address.
5411
5412         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
5413         support for reiserfs and xfs.
5414
5415         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
5416         XFS link count.
5417         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
5418         and XFS_LINK_MAX.
5419         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
5420
5421 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
5422
5423         * include/libc-symbols.h (attribute_tls_model_ie): Define.
5424         * include/errno.h (errno): Define to __libc_errno in libc.so.
5425         Add attribute_tls_model_ie.
5426         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
5427         Add attribute_tls_model_ie.
5428         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
5429         attribute_tls_model_ie.
5430         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
5431         (h_errno): Define.
5432         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
5433         (_res): Define.
5434         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
5435         attribute_tls_model_ie.
5436         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
5437         __thread.
5438         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
5439         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
5440         __libc_errno in USE___THREAD case.
5441         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
5442         Likewise.
5443         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
5444         __attribute__((tls_model (""))).
5445         * configure: Rebuilt.
5446         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
5447
5448 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
5449
5450         * timezone/asia: Update from tzdata2002d.
5451         * timezone/australasia: Likewise.
5452         * timezone/iso3166.tab: Likewise.
5453         * timezone/southamerica: Likewise.
5454         * timezone/zone-tab: Likewise.
5455
5456 2002-10-15  Roland McGrath  <roland@redhat.com>
5457
5458         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
5459         Adjust TCB pointer before calling free, so we get the whole block.
5460
5461 2002-10-14  Roland McGrath  <roland@redhat.com>
5462
5463         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
5464         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
5465         extern using attribute_hidden instead of static, avoids warning.
5466
5467 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
5468
5469         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
5470         * sysdeps/unix/sysv/linux/configure: Rebuilt.
5471
5472 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
5473
5474         * po/sv.po: Update from translation team.
5475
5476 2002-10-12  H.J. Lu  <hjl@gnu.org>
5477
5478         * sunrpc/thrsvc.c (PROCQUIT): New.
5479         (struct rpc_arg): New.
5480         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
5481         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
5482         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
5483         (main): Modified for struct rpc_arg *.
5484
5485 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
5486
5487         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
5488
5489 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
5490
5491         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
5492         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
5493         in ld.so even if __thread is supported.
5494
5495 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
5496
5497         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
5498         Add hack to prevent the compiler from clobbering the signal context.
5499         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
5500         Likewise.
5501         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
5502         Likewise.
5503
5504 2002-10-14  Andreas Jaeger  <aj@suse.de>
5505
5506         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
5507         Guido Guenther <agx@sigxcpu.org>.
5508
5509 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
5510
5511         * po/sk.po: Update from translation team.
5512
5513 2002-09-26  Roland McGrath  <roland@redhat.com>
5514
5515         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
5516         dynamic string tag.
5517         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
5518         DL_DST_LIB based on $(slibdir).
5519
5520 2002-10-13  Roland McGrath  <roland@frob.com>
5521
5522         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
5523
5524         * sysdeps/mach/hurd/getresuid.c: New file.
5525         * sysdeps/mach/hurd/getresgid.c: New file.
5526         * sysdeps/mach/hurd/setresuid.c: New file.
5527         * sysdeps/mach/hurd/setresgid.c: New file.
5528
5529         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
5530         setresgid): Declare them.
5531         * NEWS: Mention it.
5532         * include/unistd.h
5533         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
5534         add libc_hidden_proto.
5535         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
5536         getresuid, getresgid, setresuid, setresgid here.
5537         * Versions.def (libc): Define GLIBC_2.3.2 set.
5538         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
5539         Add libc_hidden_def.
5540         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
5541         * sysdeps/generic/setresgid.c: New file.
5542         * sysdeps/generic/setresuid.c: New file.
5543         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
5544         (sysdep_routines): Don't add getresuid and getresgid here.
5545         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
5546         (sysdep_routines): Don't add setresuid and setresgid here.
5547         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
5548         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
5549         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
5550         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
5551         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
5552         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
5553         * posix/Makefile (routines): Add them all here instead.
5554         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
5555         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
5556         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
5557         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
5558         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
5559         [! __NR_setresuid]: Include generic file.
5560         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
5561         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
5562         [! __NR_setresuid]: Include generic file.
5563         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
5564         Caller is - now, not EXTRA.
5565         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
5566         (setresuid, setresgid, getresuid, getresgid): Likewise.
5567         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
5568         Add these calls here.
5569         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
5570         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
5571         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
5572         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
5573         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
5574         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
5575         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
5576         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
5577         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
5578
5579         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
5580         (sysdep_routines): Add setfsuid and setfsgid here.
5581         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
5582         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
5583         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
5584         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
5585         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
5586         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
5587         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
5588         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
5589
5590         * hurd/errno.c: Renamed to ...
5591         * hurd/errno-loc.c: ... this.
5592         * hurd/Makefile (routines): errno -> errno-loc
5593
5594 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
5595
5596         * po/de.po: Update from translation team.
5597
5598         * MakeTAGS: Add -E flag to xgettext runs.
5599
5600 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
5601
5602         * po/fr.po: Update from translation team.
5603
5604         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
5605         Optimize a bit for use in glibc.
5606
5607 2002-10-12  Roland McGrath  <roland@redhat.com>
5608
5609         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
5610         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
5611
5612 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
5613
5614         * po/sv.po: Update from translation team.
5615
5616 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
5617
5618         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
5619         OP_CONTEXT_NODE.
5620         (regfree): Likewise.
5621         (create_initial_state): Likewise.
5622         (analyze): Remove the substitutions which became useless.
5623         (calc_first): Likewise.
5624         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
5625         epsilon destination.
5626         (duplicate_node_closure): New function.
5627         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
5628         (calc_inveclosure): Likewise.
5629         (calc_eclosure): Likewise.
5630         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
5631         direct invocation of duplicate_node.
5632         (parse): Don't use comma operator in the return to avoid compiler
5633         warning.
5634         (parse_reg_exp): Likewise.
5635         (parse_branch): Likewise.
5636         (parse_expression): Likewise.
5637         (parse_sub_exp): Likewise.
5638         (parse_dup_op): Likewise.
5639         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
5640         which became useless.
5641         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
5642         (create_cd_newstate): Likewise.
5643         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
5644         (re_token_t): Likewise.
5645         (re_dfa_t): Likewise.
5646         (re_node_set_remove): New macro.
5647         * posix/regexec.c (check_matching): Remove the handling
5648         OP_CONTEXT_NODE.
5649         (check_halt_node_context): Likewise.
5650         (proceed_next_node): Likewise.
5651         (pop_fail_stack): Fix the memory leak.
5652         (set_regs): Likewise.
5653         (free_fail_stack_return): New function.
5654         (sift_states_backward): Fix the memory leak.  Remove the handling
5655         OP_CONTEXT_NODE.
5656         (update_cur_sifted_state): Append some if clause to avoid redundant
5657         call.
5658         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
5659         back reference.
5660         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
5661         (check_subexp_limits): Likewise.
5662         (search_subexp): Likewise.
5663         (sift_states_bkref): Likewise.
5664         (transit_state_mb): Likewise.
5665         (transit_state_bkref_loop): Likewise.
5666         (transit_state_bkref_loop): Likewise.
5667         (group_nodes_into_DFAstates): Likewise.
5668         (check_node_accept): Likewise.
5669         (sift_ctx_init): Add initializing.
5670
5671 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
5672
5673         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
5674         __builtin_expect.
5675
5676 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
5677
5678         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
5679         duplicated variable c.
5680
5681         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
5682         if possible.
5683
5684         * sysdeps/unix/sysv/linux/i386/sysdep.h
5685         (INTERNAL_SYSCALL_ERROR_P): New define.
5686         (INTERNAL_SYSCALL_ERRNO): Likewise.
5687
5688         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
5689         Add hack to prevent the compiler from clobbering the signal context.
5690
5691 2002-10-11  Roland McGrath  <roland@redhat.com>
5692
5693         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
5694         Fix typos.
5695
5696         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
5697         * sysdeps/sh/dl-lookupcfg.h: File removed.
5698         * sysdeps/i386/dl-lookupcfg.h: File removed.
5699
5700         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
5701         missing labels and ; from last change.
5702
5703         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
5704         number literals, so they are doubles instead of ints.
5705
5706 2002-10-09  Roland McGrath  <roland@redhat.com>
5707
5708         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
5709         changed from [USE_TLS && HAVE___THREAD].
5710
5711         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
5712         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
5713         * sysdeps/x86_64/dl-machine.h
5714         (elf_machine_type_class, elf_machine_rela): Likewise.
5715         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
5716         Likewise.
5717
5718         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
5719         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
5720         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
5721
5722         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
5723         instead of ___tls_get_addr.
5724         (___tls_get_addr_internal): Add attribute_hidden to decl.
5725
5726         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
5727         _dl_error_catch_tsd.
5728         * elf/rtld.c (startup_error_tsd): New function.
5729         (dl_main): Point _dl_error_catch_tsd at that.
5730         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
5731         use new function pointer instead.
5732         * elf/dl-tsd.c: New file.
5733         * elf/Makefile (routines): Add it.
5734
5735 2002-10-07  Roland McGrath  <roland@redhat.com>
5736
5737         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
5738         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
5739         take _dl_load_lock around calling __writev.
5740
5741         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
5742         (INLINE_SYSCALL): Use that.
5743
5744         * sysdeps/generic/dl-sysdep.h: New file.
5745         * sysdeps/mach/hurd/dl-sysdep.h: New file.
5746         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
5747         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
5748         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
5749         access it directly.
5750         * elf/dl-minimal.c (__errno_location): Removed.
5751         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
5752         Use GOTOFF access for errno.
5753         * sysdeps/unix/sysv/linux/i386/sysdep.h
5754         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
5755
5756         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
5757         Use PC-relative access for errno.
5758         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
5759         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
5760
5761         * include/tls.h: New file.
5762         (USE___THREAD): New macro.
5763         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
5764         libc or libpthread.
5765         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
5766         changed from [USE_TLS && HAVE___THREAD].
5767         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
5768         * sysdeps/unix/i386/sysdep.S: Likewise.
5769         * sysdeps/unix/x86_64/sysdep.S: Likewise.
5770         * include/errno.h: Likewise.
5771         * include/netdb.h: Likewise.
5772         * include/resolv.h: Likewise.
5773
5774         * sysdeps/generic/errno.c: New file.
5775         * csu/Makefile (aux): New variable, list errno.
5776         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
5777         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
5778         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
5779         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
5780         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
5781         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
5782         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
5783         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
5784         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
5785         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
5786         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
5787         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
5788         * sysdeps/unix/alpha/sysdep.S: Likewise.
5789         * sysdeps/generic/start.c: Likewise.
5790         * sysdeps/unix/start.c: Likewise.
5791         * sysdeps/unix/arm/start.c: Likewise.
5792         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
5793         * sysdeps/unix/sparc/start.c: Likewise.
5794         * sysdeps/unix/sysv/irix4/start.c: Likewise.
5795         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
5796
5797         * manual/search.texi (Tree Search Function, Hash Search Function):
5798         Mention search.h clearly.
5799
5800 2002-10-05  Roland McGrath  <roland@redhat.com>
5801
5802         * elf/dl-fxstat64.c: File removed.
5803         * elf/dl-xstat64.c: File removed.
5804         * elf/Makefile (rtld-routines): Remove them.
5805         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
5806         Instead, use strong_alias instead of versioned_symbol in the
5807         !SHLIB_COMPAT case.
5808         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
5809         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
5810
5811         * include/shlib-compat.h
5812         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
5813         [! NOT_IN_libc] (IS_IN_libc): Define it.
5814         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
5815         * elf/Makefile (CPPFLAGS-.os): Likewise.
5816
5817         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
5818         Return the status instead of calling exit.
5819
5820         * Makeconfig (CFLAGS): Prepend -std=gnu99.
5821         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
5822         Remove superfluous rm command, whose @ plus make bugs hid
5823         all these commands from the make output.
5824
5825         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
5826         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
5827         Use that file's contents instead of literal echo's for the prologue.
5828         * include/features.h: Include <gnu/stubs.h> unconditionally.
5829         * include/gnu/stubs.h: New file.
5830
5831 2002-09-30  Roland McGrath  <roland@redhat.com>
5832
5833         * elf/rtld-Rules: New file.
5834         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
5835         $(objpfx)rtld-libc.a): New targets.
5836         (generated): Add them.
5837         (reloc-link): Remove -o $@ from the variable.
5838         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
5839         (distribute): Add rtld-Rules.
5840         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
5841         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
5842         (common-mostlyclean, common-clean): Clean up rtld-* files.
5843         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
5844
5845 2002-10-11  Roland McGrath  <roland@redhat.com>
5846
5847         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
5848         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
5849
5850         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
5851         proper set of no-op insn prefixes.
5852
5853         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
5854
5855 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
5856
5857         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
5858         __pthread_kill_other_threads_np.
5859
5860         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
5861
5862 2002-10-08  Roland McGrath  <roland@redhat.com>
5863
5864         * locale/newlocale.c (__newlocale): If setting all categories to "C",
5865         just return &_nl_C_locobj instead of copying it.
5866         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
5867         * locale/duplocale.c (__duplocale): Likewise.
5868
5869 2002-10-07  Roland McGrath  <roland@frob.com>
5870
5871         * config.h.in (HAVE_I386_SET_GDT): New #undef.
5872         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
5873         * sysdeps/mach/configure: Regenerated.
5874
5875 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
5876
5877         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
5878         Add all necessary register outputs for syscall-clobbered registers.
5879
5880 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
5881
5882         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
5883         Itanium 2 (and Itanium).
5884         Fix unwind directives and make it fit in 80 columns.
5885         * sysdeps/ia64/memset.S: Likewise.
5886         * sysdeps/ia64/memcpy.S: Likewise.
5887         Move jump table to .rodata section.
5888
5889 2002-10-03  Roland McGrath  <roland@frob.com>
5890
5891         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
5892         clobbers to asm.
5893
5894 2002-10-10  Andreas Jaeger  <aj@suse.de>
5895
5896         * sysdeps/x86_64/_mcount.S: Restore correct registers.
5897
5898 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
5899
5900         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
5901
5902 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
5903
5904         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
5905         _dl_allocate_tls_init.  Add rtld_hidden_proto.
5906         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
5907         rtld_hidden_def.
5908         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
5909
5910         * version.h (VERSION): Bump to 2.3.1.
5911
5912         * Make-dist: Add back one of the tar invocations removed before.
5913
5914         * stdlib/Makefile (distribute): Add allocalim.h.
5915
5916         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
5917         (__libc_tsd_address): Use correct variable name.
5918         Patch by Stefan Jones <stefan.jones@multigig.com>.
5919
5920         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
5921         Reported by edwardsg@sgi.com [PR libc/4678].
5922
5923         * Versions.def (libc): Add GLIBC_2.3.1.
5924         (libpthread): Add GLIBC_2.3.1.
5925
5926         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
5927         and __sigtimedwait.
5928         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
5929         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
5930         libc_hidden_def.
5931         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
5932         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
5933
5934         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
5935         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
5936         and make old name an alias.
5937         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
5938         and make old name an alias.
5939         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
5940         __libc_msgsnd.
5941
5942         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
5943         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
5944         __libc_writev.
5945         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
5946         old name an alias.
5947         * sysdeps/posix/readv.c: Likewise
5948         * sysdeps/unix/sysv/aix/readv.c: Likewise.
5949         * sysdeps/unix/sysv/linux/readv.c: Likewise.
5950         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
5951         old name an alias.
5952         * sysdeps/posix/writev.c: Likewise
5953         * sysdeps/unix/sysv/aix/writev.c: Likewise.
5954         * sysdeps/unix/sysv/linux/writev.c: Likewise.
5955
5956         * include/sys/wait.h: Declare __waitid.
5957         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
5958         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
5959         name an alias.
5960         * sysdeps/posix/waitid.c: Likewise.
5961         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
5962
5963         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
5964
5965 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
5966
5967         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
5968         prototypes.
5969         (__MAX_ALLOCA_CUTOFF): Define.
5970         Include allocalim.h.
5971         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
5972         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
5973         host_buffer depending on __libc_use_alloca.
5974         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
5975         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
5976         net_buffer depending on __libc_use_alloca.
5977         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
5978         buf depending on __libc_use_alloca.
5979         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
5980         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
5981         instead of hardcoded constants.
5982         Pass proper size argument to alloca and compute end for wide char
5983         version.
5984         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
5985         instead of hardcoded constants.
5986         * string/strcoll.c (strcoll): Likewise.
5987         * string/strxfrm.c (strxfrm): Likewise.
5988         * sysdeps/posix/readv.c (__readv): Likewise.
5989         * sysdeps/posix/writev.c (__writev): Likewise.
5990         * sysdeps/generic/allocalim.h: New file.
5991
5992 2002-10-08  Roland McGrath  <roland@redhat.com>
5993
5994         * configure.in (aux_missing warning): Change "too old" to
5995         "incompatible versions", since for autoconf it's "too new" right now.
5996         * configure: Regenerated.
5997
5998         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
5999         one found doesn't work on our configure.in.
6000         * configure: Regenerated.
6001         * config.make.in (AUTOCONF): New substituted variable.
6002         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
6003         (autoconf-it): ... here, use that instead of defining conditionally.
6004         Use $(AUTOCONF) instead of literal autoconf.
6005         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
6006         with this condition.
6007         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
6008
6009 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
6010
6011         * Make-dist (dist): Cleanup a bit.  We are not interested in the
6012         14 char filename limit anymore.  Remove intermediate files and
6013         symlinks.
6014
6015 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
6016
6017         * po/sk.po: Update from translation team.
6018         * po/tr.po: Likewise.
6019         * po/gl.po: Likewise.
6020
6021 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
6022
6023         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
6024
6025 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
6026
6027         * version.h (RELEASE): Change to stable.
6028
6029 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
6030
6031         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
6032         __syscall_exit_group): New prototypes.
6033
6034 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
6035
6036         * glibc 2.3 released.
6037
6038
6039 See ChangeLog.13 for earlier changes.