Update.
[platform/upstream/glibc.git] / ChangeLog
1 2003-05-17  Andreas Jaeger  <aj@suse.de>
2
3         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Revert last patch.
4
5         * rt/tst-clock_nanosleep.c: Include <time.h> for clock_nanosleep.
6
7 2003-05-16  Ulrich Drepper  <drepper@redhat.com>
8
9         * rt/Makefile (tests): Add tst-clock_nanosleep.
10         * rt/tst-clock_nanosleep.c: New file.
11         * posix/Makefile (tests): Add tst-nanosleep.
12         * posix/tst-nanosleep.c: New file.
13
14         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Fix definition.
15
16         * include/features.h (__USE_XOPEN2K): Define also for
17         _POSIX_C_SOURCE>=200112L.
18
19         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Fold
20         SI_TKILL code into SI_USER.
21         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
22
23         * sysdeps/posix/sigpause.c (do_sigpause): Use sigdelset after all.
24
25 2003-05-15  Jakub Jelinek  <jakub@redhat.com>
26
27         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow):
28         Remove sym argument, always use refsym.
29         (__process_machine_rela): Adjust callers.
30         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
31         Likewise.
32         * sysdeps/powerpc/powerpc32/dl-machine.h (_dl_reloc_overflow):
33         Adjust prototype.
34         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
35
36 2003-05-15  Ulrich Drepper  <drepper@redhat.com>
37
38         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Fix typo
39         (DL_NEED_SYSINFO -> NEED_DL_SYSINFO).  If aux value is not known
40         print numeric values.
41
42 2003-05-12  Thorsten Kukuk  <kukuk@suse.de>
43
44         * inet/netinet/igmp.h: Sync with Linux Kernel 2.5.69 and *BSD.
45
46 2003-05-14  Andreas Schwab  <schwab@suse.de>
47
48         * sysdeps/unix/sysv/linux/ia64/umount.c: New file.
49
50 2003-05-14  Jakub Jelinek  <jakub@redhat.com>
51
52         * elf/rtld.c (dl_main): For LD_TRACE_PRELINKING print search scope
53         even if no DT_NEEDED is present.
54
55 2003-05-13  David Mosberger  <davidm@hpl.hp.com>
56
57         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix the fix from
58         2003-03-27: setjmp is NOT a leaf-routine (due to the call to
59         __sigjmp_save) so we can't keep the saved unat value in a scratch
60         register (r16).  Use loc2 instead.
61
62 2003-05-13  Ulrich Drepper  <drepper@redhat.com>
63
64         * csu/Makefile: Do compile elf-init with PIC flag since in dynamic
65         binaries it has to be relocatable.
66
67         * sysdeps/unix/sysv/linux/waitpid.c: Use waitpid syscall is available.
68
69 2003-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
70
71         * sysdeps/powerpc/bits/atomic.h
72         (__arch_compare_and_exchange_bool_8_rel): Define.
73         (__arch_compare_and_exchange_bool_16_rel): Define.
74         (__ARCH_REL_INSTR): Define if not already defined.
75         (__arch_atomic_exchange_and_add_32): Add "memory" to clobber list.
76         (__arch_atomic_decrement_if_positive_32):
77         Add "memory" to clobber list.
78         (__arch_compare_and_exchange_val_32_acq): Remove release sync.
79         (__arch_compare_and_exchange_val_32_rel): Define.
80         (__arch_atomic_exchange_32): Remove.
81         (__arch_atomic_exchange_32_acq): Define.
82         (__arch_atomic_exchange_32_rel): Define.
83         (atomic_compare_and_exchange_val_rel): Define.
84         (atomic_exchange_acq): Use __arch_atomic_exchange_*_acq forms.
85         (atomic_exchange_rel): Define.
86         * sysdeps/powerpc/powerpc32/bits/atomic.h
87         (__arch_compare_and_exchange_bool_32_acq): Remove release sync.
88         (__arch_compare_and_exchange_bool_32_rel): Define.
89         (__arch_compare_and_exchange_bool_64_rel): Define.
90         (__arch_compare_and_exchange_val_64_rel): Define.
91         (__arch_atomic_exchange_64): Remove.
92         (__arch_atomic_exchange_64_acq): Define.
93         (__arch_atomic_exchange_64_rel): Define.
94         * sysdeps/powerpc/powerpc64/bits/atomic.h
95         (__arch_compare_and_exchange_bool_32_rel): Define.
96         (__arch_compare_and_exchange_bool_64_acq): Remove release sync.
97         (__arch_compare_and_exchange_bool_64_rel): Define.
98         (__arch_compare_and_exchange_val_64_acq): Remove release sync.
99         (__arch_compare_and_exchange_val_64_rel): Define.
100         (__arch_atomic_exchange_64): Remove.
101         (__arch_atomic_exchange_64_acq): Define.
102         (__arch_atomic_exchange_64_rel): Define.
103         (__arch_atomic_exchange_and_add_64): Add "memory" to clobber list.
104         (__arch_atomic_decrement_if_positive_64):
105         Add "memory" to clobber list.
106         [!UP](__ARCH_REL_INSTR): Define as lwsync.
107
108 2003-05-11  Andreas Schwab  <schwab@suse.de>
109
110         * io/Makefile ($(objpfx)ftwtest.out): Use absolute file names.
111
112 2003-05-11  Ulrich Drepper  <drepper@redhat.com>
113
114         * time/tst-strftime.c (do_test): Add tests for - flag.
115
116 2003-05-11  Jim Meyering  <jim@meyering.net>
117
118         * time/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
119         the space-padded-by-default conversion specifiers, %e, %k, %l.
120
121 2003-05-11  Andreas Schwab  <schwab@suse.de>
122
123         * sysdeps/generic/sched_setaffinity.c: Fix parameter name.
124
125 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
126
127         * sysdeps/generic/bits/sched.h: Define cpu_set_t only if not
128         already defined and when really needed.
129         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
130
131 2003-05-09  Thorsten Kukuk  <kukuk@suse.de>
132
133         * sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel
134         headers, add defines from kernel header, move it from here...
135         * inet/netinet/igmp.h: ... to here.
136         * inet/Makefile (headers): Add netinet/igmp.h.
137         * sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h.
138         * sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h.
139
140 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
141
142         * sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL,
143         use dummy sigevent structure with SIGEV_NONE [PR libc/5015].
144
145 2003-05-09  Thorsten Kukuk <kukuk@suse.de>
146
147         * libio/bits/stdio.h: Sync prototypes with libio/stdio.h
148         (remove __THROW from possible cancellation points).
149
150 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
151
152         * posix/sched.h (CPU_SETSIZE): Define.
153
154 2003-05-09  Ulrich Drepper  <drepper@redhat.com>
155
156         * Makeconfig (gnulib): Remove -lgcc_eh again.
157
158         * posix/sched.h: Change prototypes of sched_getaffinity and
159         sched_setaffinity.  Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
160         * sysdeps/generic/sched_getaffinity.c: Adjust definition.
161         * sysdeps/generic/sched_setaffinity.c: Likewise.
162         * sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
163         __CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
164         __CPU_CLR, and __CPU_ISSET.
165         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
166         * sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
167         * sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.
168
169         * include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
170         (atomic_exchange_rel): New #define.
171         * sysdeps/ia64/bits/atomic.h: Likewise.
172         * sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
173         atomic_exchange.
174         * sysdeps/m68k/m68020/bits/atomic.h: Likewise.
175         * sysdeps/powerpc/bits/atomic.h: Likewise.
176         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
177         * sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
178         * sysdeps/x86_64/bits/atomic.h: Likewise.
179         * csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
180
181         * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: New file.
182
183 2003-05-08  Ulrich Drepper  <drepper@redhat.com>
184
185         * malloc/thread-m.h: Remove special handling of thread_atfork if
186         HAVE_register_atfork_malloc is defined.
187
188 2003-05-07  Andreas Jaeger  <aj@suse.de>
189
190         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Add DWARF2 unwind
191         information.
192
193 2003-05-06  Ulrich Drepper  <drepper@redhat.com>
194
195         * libio/oldiofdopen.c (_IO_old_fdopen): Use _IO_old_init not _IO_init.
196         * libio/oldiofopen.c (_IO_old_fopen): Likewise.
197         * libio/libioP.h: Declare _IO_old_init.
198         * libio/genops.c (_IO_no_init): Split in two.  New function
199         _IO_old_init.
200
201 2003-05-05  Ulrich Drepper  <drepper@redhat.com>
202
203         * sysdeps/generic/enbl-secure.c (__libc_enable_secure_decided): New
204         variable.
205         (__libc_init_secure): Don't do anything if __libc_enable_secure_decided
206         is nonzero.
207         * include/unistd.h: Declare __libc_enable_secure_decided.
208         * elf/dl-support.c (_dl_aux_init): Recognize AT_UID, AT_EUID, AT_GID,
209         and AT_EGID.  If all found, set __libc_enable_secure and
210         __libc_enable_secure_decided.
211
212         * sysdeps/generic/libc-start.c [!SHARED]: Call
213         __libc_check_standard_fds after __libc_init_first.
214
215 2003-05-05  Roland McGrath  <roland@redhat.com>
216
217         * Makerules (common-before-compile): New variable.
218         ($(common-objpfx)%.make): Depend on that instead of $(before-compile).
219         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.  Move this rule
220         to after all setting of before-compile.
221
222 2003-05-05  Jakub Jelinek  <jakub@redhat.com>
223
224         * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
225         __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type.
226         * sysdeps/powerpc/powerpc32/bits/atomic.h
227         (__arch_compare_and_exchange_val_64_acq): Likewise.
228         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
229         (__arch_compare_and_exchange_val_8_acq,
230         __arch_compare_and_exchange_val_16_acq,
231         __arch_compare_and_exchange_val_64_acq): Likewise.
232         * sysdeps/sparc/sparc64/bits/atomic.h
233         (__arch_compare_and_exchange_val_8_acq,
234         __arch_compare_and_exchange_val_16_acq): Likewise.
235         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
236         __arch_compare_and_exchange_val_16_acq,
237         __arch_compare_and_exchange_val_64_acq): Likewise.
238         * sysdeps/unix/sysv/linux/sh/bits/atomic.h
239         (__arch_compare_and_exchange_val_64_acq): Likewise.
240         * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut
241         up warning.
242         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise.
243
244         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
245         (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0):
246         Return long instead of int.
247         (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace
248         0xfffff001u with -4095UL.
249
250 2003-05-05  Andreas Jaeger  <aj@suse.de>
251
252         * sysdeps/x86_64/fpu_control.h: New from i386.
253
254         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (__NR_semtimedop):
255         Define if not defined.
256
257         * sunrpc/Makefile (generated-dirs): New variable.
258         * resolv/Makefile (generated): New variable.
259
260 2003-05-04  Roland McGrath  <roland@redhat.com>
261
262         * csu/Makefile ($(csu-dummies) target rule): Don't use a temp C file.
263         Depend on $(before-compile).
264
265         * csu/Makefile ($(objpfx)crt%.o): Replace implicit rule with a static
266         pattern rule.  The implicit rule could be ruled out when $(objpfx)
267         didn't exist at the time of its consideration (ugh!).
268
269         * Makerules (+make-deps): Fix target matching.
270         Use $(sed-remove-dotdot).
271
272 2003-05-03  Ulrich Drepper  <drepper@redhat.com>
273
274         * nscd/nscd.c (main): Parse config file right after parsing
275         parameters.  Then, if get_stats is true, call receive_print_stats.
276         Drop parameter from nscd_init call.
277         (get_stats): New variable.
278         (parse_opt): Set get_stats, don't call receive_print_stats here.
279         * nscd/nscd.h: Declare dbs, stat_user, and stat_uid.  Adjust nscd_init
280         prototype.
281         * nscd/connections.c (stat_user, stat_uid): New variables.
282         (dbs): Make global.
283         (nscd_init): Don't read configuration file here.  Drop parameter.
284         (handle_request): Cleanup handling of non-database lookup requests.
285         * nscd/nscd_conf.c (nscd_parse_file): Recognize stat-user entry.
286         Get UID of the specified user.  Use xstrdup instead of strdup.
287         * nscd/nscd_stat.c (receive_print_stats): Check UID.  If not zero,
288         check stat_user.
289         * nscd/Makefile (nscd-modules): Add xstrdup.
290         * nscd/nscd.conf: Document stat-user entry.
291
292 2003-05-03  H.J. Lu  <hongjiu.lu@intel.com>
293
294         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_semtimedop): Define
295         if not defined.
296
297 2003-04-22  Roland McGrath  <roland@redhat.com>
298
299         * elf/elf.h (AT_SYSINFO_EHDR): New macro, replaces AT_SYSINFO_EH_FRAME.
300         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
301         dl_sysinfo_eh_frame member, add dl_sysinfo_dso member instead.
302         * elf/dl-support.c: Update defn.
303         * sysdeps/generic/libc-start.c: Don't call __register_frame_info_bases.
304         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
305         Set GL(dl_sysinfo_dso) from AT_SYSINFO_EHDR.
306         (_dl_show_auxv): Grok AT_SYSINFO_EHDR, not AT_SYSINFO_EH_FRAME.
307         * elf/rtld.c (dl_main) [NEED_DL_SYSINFO]: If GL(dl_sysinfo_dso) is
308         set, set up a link_map for the preloaded, prelinked object.
309
310 2003-05-03  Roland McGrath  <roland@redhat.com>
311
312         * sysdeps/gnu/Makefile (generated): Append errlist-compat.c here, ...
313         * stdio-common/Makefile: ... not here.
314
315         * csu/Makefile ($(objpfx)initfini.s): Depend on $(before-compile).
316         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c): Likewise.
317
318 2003-05-02  Ulrich Drepper  <drepper@redhat.com>
319
320         * sysdeps/unix/sysv/linux/s390/semtimedop.c: New file.
321
322         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h (IPCOP_semtimedop): Define.
323
324         * sysdeps/generic/dl-fptr.c (_dl_make_fptr): Use 0 not NULL for
325         comparing ftab elements.
326         (_dl_unmap): Fix typo in test.
327         (_dl_make_fptr): Fix typos introduced in last change.
328
329         * sysdeps/generic/dl-fptr.c: Put back one optimization from the
330         original patch.  Use non-exported symbols.  Mark translatable
331         strings.  Pretty printing.
332
333 2003-05-02  Roland McGrath  <roland@redhat.com>
334
335         * Makerules (do-stamp): Do $(make-target-directory).
336
337 2003-04-07  H.J. Lu  <hjl@gnu.org>
338
339         * sysdeps/generic/dl-fptr.c: Modify to remove the lock.
340
341 2003-04-03  H.J. Lu  <hjl@gnu.org>
342
343         * sysdeps/ia64/dl-fptr.c: Moved to ...
344         * sysdeps/generic/dl-fptr.c: Here.
345
346         * sysdeps/generic/dl-fptr.h: New.
347         * sysdeps/ia64/dl-fptr.h: New.
348
349         * sysdeps/ia64/dl-symaddr.c: Moved to ...
350         * sysdeps/generic/dl-symaddr.c: here.
351
352         * sysdeps/ia64/dl-machine.h: Include <dl-fptr.h>.
353         (IA64_BOOT_FPTR_TABLE_LEN): Removed.
354         (ia64_fdesc): Likewise.
355         (ia64_fdesc_table): Likewise.
356         (__ia64_make_fptr): Likewise.
357         (__ia64_init_bootstrap_fdesc_table): Replace __ia64_boot_fptr_table
358         with _dl_boot_fptr_table.
359         (elf_machine_runtime_setup): Replace `struct ia64_fdesc' with
360         `struct fdesc'.
361         (elf_machine_rela): Replace __ia64_make_fptr with _dl_make_fptr.
362
363 2003-05-01  Roland McGrath  <roland@redhat.com>
364
365         * sysdeps/generic/bp-thunks.h: Protect includes with [!__ASSEMBLER__].
366         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: Likewise.
367
368         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
369         Use $(make-target-directory).
370         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Likewise.
371
372         * Makerules (compile-mkdep-flags): New variable, pass -MD -MF $@.d.
373         (compile-command.S): Don't use ifndef.  Append $(compile-mkdep-flags).
374         (compile-command.s, compile-command.c): Likewise.
375         ($(objpfx)%.d): All such pattern rules removed.
376         ($(+sysdir_pfx)sysd-rules): Don't generate them.
377         ($(common-objpfx)dummy.d): Target removed.
378         (make-dummy-dep): Variable removed.
379         (generate-md5): Likewise.
380         (%.d: %.dt): New pattern rule.
381         (+depfiles): Use $(wildcard) function to get just existing *.d files
382         and .d files for existing *.dt files.
383         (common-clean): Remove all *.d and *.dt files.
384         (before-compile): Add $(objpfx). when it doesn't exist,
385         regardless of $(no_deps).
386         * elf/rtld-Rules ($(objpfx)rtld-%.d): All such pattern rules removed.
387         (rtld-depfiles): Use .os.d instead of .d names.
388         Include existing *.d files and .d files for existing *.dt files.
389
390         * Makerules ($(common-objpfx)%.make): Protect with [! subdir].
391         Use -MD, -MT and -MF flags instead of SUNPRO_DEPENDENCIES variable.
392
393         * sysdeps/unix/Makefile ($(common-objpfx)s-%.d): Remove compat.h hack.
394         Do s-*.d includes only if we have some syscall routines in this subdir.
395
396         * include/libc-symbols.h (libc_freeres_ptr): Use %nobits instead of
397         @nobits.  The former is accepted by gas on any ELF platform.
398
399 2003-05-01  Ulrich Drepper  <drepper@redhat.com>
400
401         * sysdeps/unix/sysv/linux/semtimedop.c: New file.
402
403         * malloc/malloc.c (mSTATs): Call ptmalloc_init if necessary.
404
405 2003-04-29  Andreas Schwab  <schwab@suse.de>
406
407         * string/test-strcat.c (do_one_test): Fix attribute name.
408
409 2003-04-30  Alexandre Oliva  <aoliva@redhat.com>
410
411         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (ucontext): Make
412         uc_flags long for all ABIs.
413
414 2003-04-30  Andreas Jaeger  <aj@suse.de>
415
416         * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h
417         (DR_CONTROL_RESERVED): Use correct value for 64-bit.
418         Reported by Andrew Derrick Balsa <andrebalsa@mailingaddress.org>.
419         Add bi-arch support.
420
421 2003-04-30  Ulrich Drepper  <drepper@redhat.com>
422
423         * malloc/malloc.c (mEMALIGn): Define alias __memalign_internal.
424         (__posix_memalign): Use __memalign_internal instead of memalign.
425
426 2003-04-29  Roland McGrath  <roland@redhat.com>
427
428         * configure.in: Search for AUTOCONF unconditionally.
429         Just don't complain about missing it under --without-cvs.
430
431         * include/libc-symbols.h (__symbol_set_attribute): New macro,
432         give hidden for [SHARED] and weak for [! SHARED].
433         (symbol_set_declare): Use that.  Never need weak_extern these days.
434         * Makerules ($(common-objpfx)shlib.lds): Go back to using PROVIDE.
435         Depend on $(..)Makerules.
436
437 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
438
439         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Use __ protected
440         variants of socket, bind, recvmsg, and sendto.
441
442         * sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word.
443
444         * include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset.
445         * signal/sigaddset.c: Add libc_hidden_def.
446         * signal/sigdelset.c: Likewise.
447
448 2003-04-29  Jakub Jelinek  <jakub@redhat.com>
449
450         * sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move
451         to the end of the file.
452
453         * configure.in: Change __oline__ to $LINENO.
454         (HAVE_BUILTIN_REDIRECTION): New check.
455         * config.h.in (HAVE_BUILTIN_REDIRECTION): Add.
456         * include/libc-symbols.h (libc_hidden_builtin_proto,
457         libc_hidden_builtin_def, libc_hidden_builtin_weak,
458         libc_hidden_builtin_ver): Define.
459         * include/string.h (memchr, memcpy, memmove, memset, strcat, strchr,
460         strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr,
461         strspn, strstr): Add libc_hidden_builtin_proto.
462         * intl/plural.y: Include string.h.
463         * sysdeps/alpha/alphaev6/memchr.S (memchr): Add
464         libc_hidden_builtin_def.
465         * sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise.
466         * sysdeps/alpha/alphaev6/memset.S (memset): Likewise.
467         * sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise.
468         * sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise.
469         * sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise.
470         * sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise.
471         * sysdeps/alpha/memchr.S (memchr): Likewise.
472         * sysdeps/alpha/memset.S (memset): Likewise.
473         * sysdeps/alpha/strcat.S (strcat): Likewise.
474         * sysdeps/alpha/strchr.S (strchr): Likewise.
475         * sysdeps/alpha/strcmp.S (strcmp): Likewise.
476         * sysdeps/alpha/strcpy.S (strcpy): Likewise.
477         * sysdeps/alpha/strlen.S (strlen): Likewise.
478         * sysdeps/alpha/strncmp.S (strncmp): Likewise.
479         * sysdeps/alpha/strncpy.S (strncpy): Likewise.
480         * sysdeps/alpha/strrchr.S (strrchr): Likewise.
481         * sysdeps/arm/memset.S (memset): Likewise.
482         * sysdeps/arm/strlen.S (strlen): Likewise.
483         * sysdeps/generic/memchr.c (memchr): Likewise.
484         * sysdeps/generic/memcpy.c (memcpy): Likewise.
485         * sysdeps/generic/memmove.c (memmove): Likewise.
486         * sysdeps/generic/memset.c (memset): Likewise.
487         * sysdeps/generic/strcat.c (strcat): Likewise.
488         * sysdeps/generic/strchr.c (strchr): Likewise.
489         * sysdeps/generic/strcmp.c (strcmp): Likewise.
490         * sysdeps/generic/strcpy.c (strcpy): Likewise.
491         * sysdeps/generic/strcspn.c (strcspn): Likewise.
492         * sysdeps/generic/strlen.c (strlen): Likewise.
493         * sysdeps/generic/strncmp.c (strncmp): Likewise.
494         * sysdeps/generic/strncpy.c (strncpy): Likewise.
495         * sysdeps/generic/strpbrk.c (strpbrk): Likewise.
496         * sysdeps/generic/strrchr.c (strrchr): Likewise.
497         * sysdeps/generic/strspn.c (strspn): Likewise.
498         * sysdeps/generic/strstr.c (strstr): Likewise.
499         * sysdeps/i386/i486/strcat.S (strcat): Likewise.
500         * sysdeps/i386/i486/strlen.S (strlen): Likewise.
501         * sysdeps/i386/i586/memcpy.S (memcpy): Likewise.
502         * sysdeps/i386/i586/memset.S (memset): Likewise.
503         * sysdeps/i386/i586/strchr.S (strchr): Likewise.
504         * sysdeps/i386/i586/strcpy.S (strcpy): Likewise.
505         * sysdeps/i386/i586/strlen.S (strlen): Likewise.
506         * sysdeps/i386/i686/memcpy.S (memcpy): Likewise.
507         * sysdeps/i386/i686/memmove.S (memmove): Likewise.
508         * sysdeps/i386/i686/memset.S (memset): Likewise.
509         * sysdeps/i386/i686/strcmp.S (strcmp): Likewise.
510         * sysdeps/i386/memchr.S (memchr): Likewise.
511         * sysdeps/i386/memset.c (memset): Likewise.
512         * sysdeps/i386/strchr.S (strchr): Likewise.
513         * sysdeps/i386/strcspn.S (strcspn): Likewise.
514         * sysdeps/i386/strlen.c (strlen): Likewise.
515         * sysdeps/i386/strpbrk.S (strpbrk): Likewise.
516         * sysdeps/i386/strrchr.S (strrchr): Likewise.
517         * sysdeps/i386/strspn.S (strspn): Likewise.
518         * sysdeps/ia64/memchr.S (memchr): Likewise.
519         * sysdeps/ia64/memcpy.S (memcpy): Likewise.
520         * sysdeps/ia64/memmove.S (memmove): Likewise.
521         * sysdeps/ia64/memset.S (memset): Likewise.
522         * sysdeps/ia64/strcat.S (strcat): Likewise.
523         * sysdeps/ia64/strchr.S (strchr): Likewise.
524         * sysdeps/ia64/strcmp.S (strcmp): Likewise.
525         * sysdeps/ia64/strcpy.S (strcpy): Likewise.
526         * sysdeps/ia64/strlen.S (strlen): Likewise.
527         * sysdeps/ia64/strncmp.S (strncmp): Likewise.
528         * sysdeps/ia64/strncpy.S (strncpy): Likewise.
529         * sysdeps/m68k/memchr.S (memchr): Likewise.
530         * sysdeps/m68k/strchr.S (strchr): Likewise.
531         * sysdeps/mips/mips64/memcpy.S (memcpy): Likewise.
532         * sysdeps/mips/mips64/memset.S (memset): Likewise.
533         * sysdeps/mips/memcpy.S (memcpy): Likewise.
534         * sysdeps/mips/memset.S (memset): Likewise.
535         * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
536         * sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise.
537         * sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise.
538         * sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise.
539         * sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise.
540         * sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise.
541         * sysdeps/powerpc/powerpc64/memset.S (memset): Likewise.
542         * sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise.
543         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise.
544         * sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise.
545         * sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise.
546         * sysdeps/powerpc/strcat.c (strcat): Likewise.
547         * sysdeps/sparc/sparc32/memchr.S (memchr): Likewise.
548         * sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise.
549         * sysdeps/sparc/sparc32/memset.S (memset): Likewise.
550         * sysdeps/sparc/sparc32/strcat.S (strcat): Likewise.
551         * sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise.
552         * sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise.
553         * sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise.
554         * sysdeps/sparc/sparc32/strlen.S (strlen): Likewise.
555         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise.
556         * sysdeps/sparc/sparc64/memchr.S (memchr): Likewise.
557         * sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise.
558         * sysdeps/sparc/sparc64/memset.S (memset): Likewise.
559         * sysdeps/sparc/sparc64/strcat.S (strcat): Likewise.
560         * sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise.
561         * sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise.
562         * sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise.
563         * sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise.
564         * sysdeps/sparc/sparc64/strlen.S (strlen): Likewise.
565         * sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise.
566         * sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise.
567         * sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise.
568         * sysdeps/sparc/sparc64/strspn.S (strspn): Likewise.
569         * sysdeps/sh/memcpy.S (memcpy): Likewise.
570         * sysdeps/sh/memset.S (memset): Likewise.
571         * sysdeps/sh/strlen.S (strlen): Likewise.
572         * sysdeps/s390/s390-32/memchr.S (memchr): Likewise.
573         * sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise.
574         * sysdeps/s390/s390-32/memset.S (memset): Likewise.
575         * sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise.
576         * sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise.
577         * sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise.
578         * sysdeps/s390/s390-64/memchr.S (memchr): Likewise.
579         * sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise.
580         * sysdeps/s390/s390-64/memset.S (memset): Likewise.
581         * sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise.
582         * sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise.
583         * sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise.
584         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
585         * sysdeps/x86_64/memset.S (memset): Likewise.
586         * sysdeps/x86_64/strcat.S (strcat): Likewise.
587         * sysdeps/x86_64/strchr.S (strchr): Likewise.
588         * sysdeps/x86_64/strcmp.S (strcmp): Likewise.
589         * sysdeps/x86_64/strcpy.S (strcpy): Likewise.
590         * sysdeps/x86_64/strcspn.S (strcspn): Likewise.
591         * sysdeps/x86_64/strlen.S (strlen): Likewise.
592         * sysdeps/x86_64/strspn.S (strspn): Likewise.
593         * string/string-inlines.c: Move...
594         * sysdeps/generic/string-inlines.c: ...here.
595         (__memcpy_g, __strchr_g): Remove.
596         (__NO_INLINE__): Define before including <string.h>,
597         undefine after.  Include bits/string.h and bits/string2.h.
598         * sysdeps/i386/i486/string-inlines.c: New file.
599         * sysdeps/i386/string-inlines.c: New file.
600         * sysdeps/i386/i486/Versions: Remove.
601         All GLIBC_2.1.1 symbols moved...
602         * sysdeps/i386/Versions (libc): ...here.
603
604 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
605
606         * sysdeps/i386/fpu/Makefile: New file.
607         * sysdeps/i386/fpu/fedisblxcpt.c: Also set SSE control word.
608         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
609         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
610         * sysdeps/i386/fpu/fesetround.c: Also set SSE rounding mode
611         [PR libc/4987].
612
613 2003-04-28  Ulrich Drepper  <drepper@redhat.com>
614
615         * nscd/nscd_getgr_r.c: Compact code a bit.  Add some __builtin_expect.
616         * nscd/nscd_getpw_r.c: Likewise.
617         * nscd/nscd_gethst_r.c: Likewise.
618
619 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
620
621         * nscd/pwdcache.c: Initialize .version element in result.
622         * nscd/grpcache.c: Likewise.
623         * nscd/pwdcache.c: Likewise.
624
625 2003-04-27  Andreas Schwab  <schwab@suse.de>
626
627         * Makeconfig ($(common-objpfx)sysd-sorted): Fix for running in
628         subdirectory.
629
630 2003-04-27  Andreas Schwab  <schwab@suse.de>
631
632         * sysdeps/unix/sysv/linux/m68k/semtimedop.S: New file.
633
634 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
635
636         * nscd/connections.c (client_queued): New variable.
637         (nscd_run): Revamp the loop.  Don't call poll except for cleanup
638         threads.  Keep track of the number of delays caused because of busy
639         worker threads.
640         * nscd/nscd.h: Declare client_queued.
641         * nscd/nscd_stat.c: Transmit and print client_queued information.
642
643         * locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX.
644
645         * Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to
646         define __start_libc_freeres_ptrs and __stop___libc_freeres_ptrs.
647
648 2003-04-26  Ulrich Drepper  <drepper@redhat.com>
649
650         * elf/dl-close.c [USE_TLS && TLS_TCB_AT_TP] (_dl_close): Reimplement
651         tracking of freed memory in static TLS block.
652         * elf/Makefile: Add rules to build and run tst-tls13.
653         * elf/tst-tls13.c: New file.
654         * elf/tst-tlsmod13.c: New file.
655         * elf/tst-tlsmod13a.c: New file.
656
657         * elf/tst-tls8.c: Adjust types of variables to avoid warnings.
658
659         * elf/dl-reloc.c: Pretty printing.
660
661 2003-04-26  Roland McGrath  <roland@redhat.com>
662
663         * Makerules ($(common-objpfx)shlib.lds): New target.
664         (common-generated): Add it.
665         (build-shlib, build-module): Use that instead of generating every time.
666         ($(common-objpfx)libc.so): Depend on it.
667         (lib%.so rule): Likewise.
668         (build-module-helper-objlist): Remove %.lds.
669         (LDSEDCMD-c.so): Variable removed.
670         * iconvdata/extra-module.mk ($(objpfx)$(mod).so):
671         Depend on $(common-objpfx)shlib.lds.
672         * dlfcn/Makefile ($(test-modules)): Likewise.
673
674 2003-04-26  Roland McGrath  <roland@frob.com>
675
676         * sysdeps/mach/hurd/tmpfile.c: Remove USE_IN_LIBIO conditionals.
677
678 2003-04-26  Andreas Schwab  <schwab@suse.de>
679
680         * elf/dl-close.c (remove_slotinfo): Fix missing parens.
681
682 2003-04-25  Ulrich Drepper  <drepper@redhat.com>
683
684         * nscd/cache.c (cache_search): Keep track of how many chain links
685         we searched and update table statistics.
686         (cache_add): Keep track of how many values are in the table.
687         (prune_cache): Likewise.  Keep track of locking success.
688         Print messages about removed entries in separate pass.
689         * nscd/connections.c (handle_request): Don't print debug message here.
690         The caller will do it.  Keep track of locking success.
691         (nscd_run): Print debug message.  Also print PID of the client process.
692         * nscd/nscd.c (start_time): New variable.
693         (main): Remember start time.
694         * nscd/nscd.h: Declare start_time.
695         (struct database): Add more members for new statistics.
696         * nscd/nscd_stat.c: Add support for sending, receiving, and printing
697         of new statistics.
698
699         * sysdeps/posix/getaddrinfo.c: Include <stdbool.h>.
700
701 2003-04-22  Jakub Jelinek  <jakub@redhat.com>
702
703         * include/link.h (NO_TLS_OFFSET): Define to 0 if not defined.
704         * elf/dl-close.c (_dl_close): Use NO_TLS_OFFSET.
705         * elf/dl-object.c (_dl_new_object): Initialize l_tls_offset to
706         NO_TLS_OFFSET.
707         * elf/rtld.c (_dl_start_final, _dl_start): Likewise.
708         * elf/dl-reloc.c (CHECK_STATIC_TLS): Use NO_TLS_OFFSET.
709         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Likewise.
710         * sysdeps/powerpc/dl-tls.h (TLS_TPREL_VALUE): Don't subtract
711         TLS_TCB_SIZE.
712
713 2003-04-24  Ulrich Drepper  <drepper@redhat.com>
714
715         * nss/getent.c: Implement alternative host database lookup via
716         getaddrinfo.
717
718         * include/ifaddrs.h: New file.
719         * include/netdb.h: Move definitions of AI_V4MAPPED, AI_ALL, and
720         AI_ADDRCONFIG...
721         * resolv/netdb.h: ...here.
722         * sysdeps/gnu/ifaddrs.c. Use libc_hidden_def where appropriate.
723         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
724         * sysdeps/posix/getaddrinfo.c: Implement AI_V4MAPPED, AI_ALL, and
725         AI_ADDRCONFIG.
726
727 2003-04-24  Roland McGrath  <roland@redhat.com>
728
729         * elf/dl-reloc.c (_dl_allocate_static_tls): Add internal_function.
730
731 2003-04-24  Jakub Jelinek  <jakub@redhat.com>
732
733         * elf/dl-reloc.c (allocate_static_tls): Rename to...
734         (_dl_allocate_static_tls): ... this function.  No longer static.
735         (CHECK_STATIC_TLS): Adjust.
736         * sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype.
737         * sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela):
738         Add SYM_MAP argument.
739         (elf_machine_rela): Adjust caller.  Declare SYM_MAP unconditionally.
740         Check if SYM_MAP != NULL for R_PPC_DTPREL32.  Only handle 32-bit
741         TLS relocs here.  #ifdef out relocs which never appear in
742         .gnu.conflict section from dl-conflict.c processing.
743         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
744         Add SYM_MAP argument.  Handle 16-bit TLS relocs here.
745
746         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef
747         out relocs which never appear in .gnu.conflict section from
748         dl-conflict.c processing.
749         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
750         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
751         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
752         Use r_type in RESOLVE macro.
753
754 2003-04-23  Ulrich Drepper  <drepper@redhat.com>
755
756         * nis/ypclnt.c (__yp_bind): Expect YPDB parameter to always be !=
757         NULL.  Remove code made redundant by this assumption.
758         (__yp_unbind): Add call to free.  Adjust all callers.
759
760         * nis/ypclnt.c (yp_all): Free the dom_binding object after
761         unbinding it.
762
763         * grp/initgroups.c (getgrouplist): Don't copy too much into the
764         user buffer if more groups are found than fit into it.
765
766         * nis/nss_nis/nis-initgroups.c (_nss_nis_initgroups_dyn): Use
767         extend_alloca.
768
769 2003-04-23  Jakub Jelinek  <jakub@redhat.com>
770
771         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check for rc == ERANGE,
772         not rc == errno.  Use extend_alloca.
773
774         * elf/tst-tls12.c (main): Fix declaration.
775         * elf/tst-tls10.c (dummy): Make hidden instead of static.
776         * elf/tst-tlsmod7.c (dummy): Likewise.
777         * elf/tst-tlsmod8.c (dummy): Likewise.
778         * elf/tst-tlsmod9.c (dummy): Likewise.
779
780 2003-04-22  Roland McGrath  <roland@redhat.com>
781
782         * sysdeps/unix/sysv/linux/not-cancel.h: Put parens around macro args.
783         (open_not_cancel): Make last argument non-optional.
784         * sysdeps/generic/check_fds.c (check_one_fd): Update caller.
785         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Likewise.
786         * iconv/gconv_cache.c (__gconv_load_cache): Likewise.
787
788         * include/tls.h: Protect against multiple inclusion.
789
790 2003-04-22  Ulrich Drepper  <drepper@redhat.com>
791
792         * nscd/nscd-client.h: Add declaration for __nscd_open_socket.
793         * nscd/nscd_gethst_r.c (__nscd_open_socket): Renamed from
794         open_socket.  Not static anymore.
795         (nscd_gethst_r): Use __nscd_open_socket.
796         * nscd/nscd_getgr_r.c (open_socket): Removed.
797         (nscd_getgr_r): Use __nscd_open_socket.
798         * nscd/nscd_getpw_r.c (open_socket): Removed.
799         (nscd_getpw_r): Use __nscd_open_socket.
800
801         * nscd/nscd.c (main): Change type of fdn to long int and use strtol.
802         * nscd/connections.c (handle_request): Add cast to avoid warning.
803
804 2003-04-21  Ulrich Drepper  <drepper@redhat.com>
805
806         * signal/sigfillset.c: Moved to...
807         * sysdeps/generic/sigfillset.c: ...here.  If SIGCANCEL is defined
808         do not set the corresponding bit.
809
810         * sysdeps/unix/sysv/linux/sigprocmask.c: Prevent changing mask for
811         SIGCANCEL.
812         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Define SI_TKILL.
813         * sysdeps/unix/sysv/linux/bits/siginfo.h: Define SI_TKILL.
814         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Define SI_TKILL.
815         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Define SI_TKILL.
816         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Define SI_TKILL.
817
818 2003-04-20  Ulrich Drepper  <drepper@redhat.com>
819
820         * sysdeps/unix/sysv/linux/not-cancel.h (open_not_cancel): Cast
821         first syscall parameter to const char*.
822
823 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
824
825         * intl/Makefile ($(objpfx)msgs.h): Use C locale for sed run.
826
827         * configure.in: Add AC_PROG_CXX.
828         * config.make.in (CXX): Define.
829
830         * sysdeps/i386/i686/hp-timing.h (HP_TIMING_PRINT): Change type of
831         __len to size_t to avoid warnings.
832
833 2003-04-18  Jes Sorensen  <jes@wildopensource.com>
834
835         * libc/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Sync with Linux
836         2.5.67.
837         * libc/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
838
839 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
840
841         * stdlib/cxa_finalize.c (__cxa_finalize): Don't call
842         UNREGISTER_ATFORK if d == NULL.
843
844         * catgets/nl_types.h: Remove __THROW marker from cancellation points.
845         * dirent/dirent.h: Likewise.
846         * dlfcn/dlfcn.h: Likewise.
847         * grp/grp.h: Likewise.
848         * iconv/iconv.h: Likewise.
849         * io/fcntl.h: Likewise.
850         * io/ftw.h: Likewise.
851         * libio/stdio.h: Likewise.
852         * misc/sys/mman.h: Likewise.
853         * misc/sys/select.h: Likewise.
854         * misc/sys/syslog.h: Likewise.
855         * misc/sys/uio.h: Likewise.
856         * posix/spawn.h: Likewise.
857         * posix/unistd.h: Likewise.
858         * posix/sys/wait.h: Likewise.
859         * pwd/pwd.h: Likewise.
860         * resolv/netdb.h: Likewise.
861         * rt/aio.h: Likewise.
862         * shadow/shadow.h: Likewise.
863         * signal/signal.h: Likewise.
864         * socket/sys/socket.h: Likewise.
865         * stdlib/stdlib.h: Likewise.
866         * streams/stropts.h: Likewise.
867         * string/string.h: Likewise.
868         * sysdeps/gnu/utmpx.h: Likewise.
869         * sysvipc/sys/msg.h: Likewise.
870         * termios/termios.h: Likewise.
871         * time/time.h: Likewise.
872         * wcsmbs/wchar.h: Likewise.
873         * iconv/gconv_cache.c: Include <not-cancel.h> and use non-cancelable
874         functions.
875         * misc/daemon.c: Likewise.
876         * sysdeps/generic/backtracesymsfd.c: Likewise.
877         * sysdeps/generic/check_fds.c: Likewise.
878         * sysdeps/unix/sysv/linux/gethostid.c: Likewise.
879         * sysdeps/unix/sysv/linux/not-cancel.h: New file.
880         * sysdeps/generic/not-cancel.h: New file.
881         * csu/Makefile (distribute): Add not-cancel.h.
882         * sysdeps/unix/sysv/linux/fatal-prepare.h: New file.
883         * sysdeps/unix/sysv/linux/Makefile: Define FATAL_PREPARE_INCLUDE
884         for assert.c and assert-perr.c to include <fatal-prepare.h>.
885         * sysdeps/unix/sysv/linux/Dist: Add fatal-prepare.h.
886
887         * sysdeps/posix/remove.c (remove): Rewrite.  No need to restore
888         errno and unlink first.
889
890         * io/ftw.c (ftw_dir): In all places assume fchdir is available.
891
892 2003-04-18  Ulrich Drepper  <drepper@redhat.com>
893
894         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Use
895         INTERNAL_SYSCALL instead of INLINE_SYSCALL.
896
897 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
898
899         * sysdeps/unix/sysv/linux/Makefile: Remove db2 directory handling.
900
901         * malloc/Makefile (CFLAGS-malloc.c): Define DEFAULT_TOP_PAD to 128k.
902         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-malloc.c): Add to, not
903         replace.
904
905         * signal/Makefile (tests): Add tst-sigsimple.
906         * signal/tst-sigsimple.c: New file.
907
908 2003-04-16  Jakub Jelinek  <jakub@redhat.com>
909
910         * elf/Makefile (distribute): Add tst-tlsmod{[7-9],1[0-2]}.c and
911         tst-tls10.h.
912         (tests): Add tst-tls1[0-2].
913         (modules-names): Add tst-tlsmod{[7-8],1[0-2]}.
914         ($(objpfx)tst-tlsmod8.so): Depend on tst-tlsmod7.so.
915         ($(objpfx)tst-tlsmod10.so): Depend on tst-tlsmod9.so.
916         ($(objpfx)tst-tlsmod12.so): Depend on tst-tlsmod11.so.
917         ($(objpfx)tst-tls10): Depend on tst-tlsmod8.so.
918         ($(objpfx)tst-tls11): Depend on tst-tlsmod10.so.
919         ($(objpfx)tst-tls12): Depend on tst-tlsmod12.so.
920         * elf/tst-tls10.c: New test.
921         * elf/tst-tls11.c: New test.
922         * elf/tst-tls12.c: New test.
923         * elf/tst-tls10.h: New file.
924         * elf/tst-tlsmod7.c: New file.
925         * elf/tst-tlsmod8.c: New file.
926         * elf/tst-tlsmod9.c: New file.
927         * elf/tst-tlsmod10.c: New file.
928         * elf/tst-tlsmod11.c: New file.
929         * elf/tst-tlsmod12.c: New file.
930
931 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
932
933         * sysdeps/powerpc/bits/atomic.h: Moved ppc32/64 specific code to ...
934         * sysdeps/powerpc/powerpc32/bits/atomic.h: New file.
935         * sysdeps/powerpc/powerpc64/bits/atomic.h: New file.
936
937 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
938
939         * posix/regex.h: Include <sys/types.h>.
940
941         * signal/sigrelse.c (sigrelse): Use sigdelset and not __sigdelset.
942         The signal number must be checked.
943         * signal/sighold.c (sighold): Use sigaddset and not __sigaddset.
944         The signal number must be checked [PR libc/5004].
945
946         * sysdeps/unix/sysv/linux/system.c: If compiled without threads
947         don't do anything fancy.
948
949         * sysdeps/generic/bits/libc-lock.h: Define
950         __rtld_lock_define_initialized_recursive.
951
952         * nss/getXXbyYY_r.c [USE_NSCD] (REENTRANT_NAME): Only retry
953         contacting nscd if NOT_USENSCD_NAME > 0.
954         * nss/nsswitch.c (__nss_disable_nscd): New function.
955         * nss/nsswitch.h: Declare it.
956         * nss/Versions [GLIBC_PRIVATE]: Export __nss_disable_nscd.
957         * nscd/nscd.c (main): Call __nss_disable_nscd.
958
959 2003-04-16  Ulrich Drepper  <drepper@redhat.com>
960
961         * stdio-common/perror.c (perror): We don't need to set the offset
962         to _IO_pos_bad, this is how streams are initialized.
963
964         * locale/programs/ld-time.c (TESTARR_ELEM): Make i unsigned.
965         (time_output): If necessary, allocate new buffer for .name string if
966         padding is required.
967
968         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Check lengths
969         before copying.  This might leave holes in the list.  Adjust
970         pointers if necessary.
971         (netlink_receive): Allocate only one block.
972         (free_netlink_handle): Adjust appropriately.
973         (getifaddrs): Lots of cleanups.
974
975         * string/test-strncpy.c (do_one_test): Mark start and stop as
976         possibly unused.
977         * string/test-memchr.c: Likewise.
978         * string/test-memcmp.c: Likewise.
979         * string/test-memcpy.c: Likewise.
980         * string/test-memmove.c: Likewise.
981         * string/test-memset.c: Likewise.
982         * string/test-strcat.c: Likewise.
983         * string/test-strchr.c: Likewise.
984         * string/test-strcmp.c: Likewise.
985         * string/test-strcpy.c: Likewise.
986         * string/test-strlen.c: Likewise.
987         * string/test-strncmp.c: Likewise.
988         * string/test-strpbrk.c: Likewise.
989         * string/test-strrchr.c: Likewise.
990         * string/test-strspn.c: Likewise.
991
992 2003-04-15  Roland McGrath  <roland@redhat.com>
993
994         * libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning.
995
996         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for
997         INTUSE(__register_frame_info_bases).
998
999 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
1000
1001         * elf/elf.h: Define AT_SYSINFO_EH_FRAME.
1002         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Handle
1003         AT_SYSINFO_EH_FRAME.  Adjust string width.
1004         (_dl_show_auxv):Display AT_SYSINFO_EH_FRAME value.
1005         * sysdeps/generic/ldsodefs.h [NEED_DL_SYSINFO] (struct rtld_global):
1006         Add _dl_sysinfo_eh_frame field.
1007         * elf/dl-support.c [NEED_DL_SYSINFO]: Define _dl_sysinfo_eh_frame.
1008         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO] Define eh_obj
1009         variable.
1010         [NEED_DL_SYSINFO] (LIBC_START_MAIN): Call __register_frame_info_bases
1011         if _dl_sysinfo_eh_frame is non-NULL.
1012
1013         * Makeconfig (gnulib): Add -lgcc_eh.
1014
1015         * config.h.in: Define HAVE_FORCED_UNWIND.
1016
1017 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
1018
1019         * sysdeps/powerpc/powerpc64/strcmp.S: Convert to full 64-bit.
1020         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
1021
1022 2003-04-15  Jakub Jelinek  <jakub@redhat.com>
1023
1024         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Avoid
1025         checking R_PPC_RELATIVE, R_PPC_NONE and whether relocation is
1026         against local symbol in conflict processing.
1027
1028 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
1029
1030         * sysdeps/powerpc/bits/atomic.h
1031         [__powerpc64] (__arch_compare_and_exchange_val_64_acq): Define.
1032         [! __powerpc64] (__arch_compare_and_exchange_val_64_acq): Defined
1033         as abort stub.
1034         (__arch_compare_and_exchange_val_32_acq): Define.
1035         (atomic_compare_and_exchange_val_acq): Define.
1036
1037 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
1038
1039         * include/atomic.h: Pretty printing.
1040
1041 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
1042
1043         * stdio-common/vfscanf.c: Add casts to avoid warnings.
1044
1045 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
1046
1047         * sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
1048         * sysdeps/x86_64/bits/atomic.h: Likewise.
1049
1050 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
1051
1052         * sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
1053         POPARGS_1 to emit labels for the mov instructions.
1054
1055 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
1056
1057         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
1058
1059 2003-04-14  Roland McGrath  <roland@redhat.com>
1060
1061         * sysdeps/generic/unwind-dw2.c (_Unwind_GetCFA): Add a cast to silence
1062         compiler warning.
1063
1064         * sysdeps/generic/unwind-pe.h: Fix decl hacks broken in merge.
1065
1066 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
1067
1068         * string/strxfrm.c (STRXFRM): Terminate rulearr at correct
1069         position.  Reported by jreiser@BitWagon.com.
1070
1071 2003-04-13  Ulrich Drepper  <drepper@redhat.com>
1072
1073         * sysdeps/generic/unwind-dw2-fde.c: Update from recent gcc version.
1074         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
1075         * sysdeps/generic/unwind-dw2.c: Likewise.
1076         * sysdeps/generic/unwind-pe.h: Likewise.
1077
1078 2003-04-13  Alexandre Oliva  <aoliva@redhat.com>
1079
1080         * sysdeps/unix/sysv/linux/mips/profil-counter: New.
1081         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Port to n32/n64.
1082         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: New.
1083         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Port to n32/n64.
1084         (mcontext_t): Make it match the 32-bit mips kernel in o32.
1085         * sysdeps/unix/sysv/linux/mips/sys/user.h: Bring in constants from
1086         the mips and mips64 headers.
1087         (struct user): Port to n32/n64.
1088
1089 2003-04-12  Ulrich Drepper  <drepper@redhat.com>
1090
1091         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add cast to
1092         avoid warning.
1093
1094         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): If
1095         __ASSUME_VSYSCALL is defined don't add restorer.
1096         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1097         __ASSUME_VSYSCALL for 2.5.53.
1098
1099 2003-04-11  Ulrich Drepper  <drepper@redhat.com>
1100
1101         * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling.
1102         Remove HAVE_CANCELBUF code.  Replace with code using the new
1103         initializers for unwind-based cleanup handling.
1104         * sysdeps/generic/unwind.h: Update from latest gcc version.
1105         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few
1106         places to allow unwind data generation.
1107         * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times.
1108         * sysdeps/x86_64/bits/setjmp.h: Likewise.
1109         * sysdeps/sh/bits/setjmp.h: Likewise.
1110         * sysdeps/powerpc/bits/setjmp.h: Likewise.
1111         * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
1112         * sysdeps/alpha/bits/setjmp.h: Likewise.
1113
1114 2003-04-11  Roland McGrath  <roland@redhat.com>
1115
1116         * csu/tst-empty.c: New file.
1117         * csu/Makefile (tests, tests-static): Add it.
1118
1119 2003-04-11  Jakub Jelinek  <jakub@redhat.com>
1120
1121         * string/test-strcmp.c (do_random_tests): Test whether return value
1122         has been promoted to wordsize if the ABI requires caller to do so.
1123         * string/test-strncmp.c (do_random_tests): Likewise.
1124         * string/test-memcmp.c (do_random_tests): Likewise.
1125
1126         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Sign extend rRTN
1127         before returning.
1128
1129         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
1130         (__fe_nomask_env): Try prctl even if __ASSUME_NEW_PRCTL_SYSCALL
1131         is not defined, but the prctl constants are.
1132
1133         * string/tester.c (test_strcmp): Fix a typo.
1134
1135 2003-04-09  Ulrich Drepper  <drepper@redhat.com>
1136
1137         * sysdeps/alpha/fpu/bits/mathdef.h: Remove FLT_EVAL_METHOD definition.
1138         * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
1139
1140 2003-04-08  Alexandre Oliva  <aoliva@redhat.com>
1141
1142         * sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on
1143         NewABI.
1144         (ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on
1145         NewABI.
1146         * sysdeps/mips/mips64/memcpy.S: Adjust register naming
1147         conventions.
1148         * sysdeps/mips/mips64/memset.S: Likewise.
1149         * sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]:
1150         Use t0 instead of t4 as temporary.
1151
1152 2003-04-07  Ulrich Drepper  <drepper@redhat.com>
1153
1154         * elf/ldconfig.c (parse_conf): Ignore leading whitespace.  Use
1155         feof_unlocked instead of feof.
1156         (add_dir): Ignore trailing whitespace.
1157
1158 2003-04-07  Jakub Jelinek  <jakub@redhat.com>
1159
1160         * posix/bug-regex4.c (main): Cap RANGE and STOP arguments to
1161         sum of SIZE1 and SIZE2 arguments.
1162
1163 2003-04-06  Ulrich Drepper  <drepper@redhat.com>
1164
1165         * iconv/iconv_prog.c (process_block): Don't print message about
1166         invalid input if the -c option is used.
1167         (main): Correctly append IGNORE string for -c option.
1168
1169 2002-04-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1170
1171         * sysdeps/sh/bits/atomic.h: Moved to ...
1172         * sysdeps/unix/sysv/linux/sh/bits/atomic.h: ... here.  Add comments.
1173         (__arch_compare_and_exchange_val_*_acq): Add parens around macro
1174         arguments.
1175         (atomic_bit_set, atomic_bit_test_set): Likewise.
1176         (atomic_exchange_and_add): Likewise.  Don't evaluate VALUE argument
1177         twice.
1178         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
1179
1180 2003-04-06  Roland McGrath  <roland@redhat.com>
1181
1182         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Rewrite register
1183         restoration as done for setcontext yesterday.
1184
1185 2003-04-06  Jakub Jelinek  <jakub@redhat.com>
1186
1187         * elf/rtld.c: Revert 2003-03-14 change.
1188         * elf/dl-conflict.c (_dl_resolve_conflicts): Move
1189         #if ! ELF_MACHINE_NO_RELA conditional into the routine.
1190
1191 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
1192
1193         * sunrpc/xdr.c (xdr_string): Catch nodesize == 0 [PR libc/4999].
1194
1195         * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r):
1196         Always initialize *signgamp before returning an error.
1197
1198 2003-04-05  Roland McGrath  <roland@redhat.com>
1199
1200         * sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
1201         below the stack pointer even if switching to the same context we are
1202         running right now.
1203
1204 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
1205
1206         * catgets/gencat.c (read_input_file): Make sure that \n is not
1207         alone on the line before testing for continuation.
1208
1209         * math/test-tgmath.c (compile_test): Initialize c.
1210
1211 2003-04-05  Alexandre Oliva  <aoliva@redhat.com>
1212
1213         * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
1214         * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
1215         * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
1216         on mips n32.
1217         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why
1218         XSTAT_IS_XSTAT64 must not be used for mips n64.  Use 64-bit data
1219         structure on n32 as well.
1220         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
1221         data types on n32 and n64.
1222
1223 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
1224
1225         * libio/fileops.c (_IO_new_file_fopen): Don't free step data right
1226         after getting them.
1227
1228         * malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If
1229         HAVE_register_atfork_malloc is defined use __register_atfork_malloc
1230         instead of __register_atfork.
1231
1232 2003-04-05  Jakub Jelinek  <jakub@redhat.com>
1233
1234         * stdio-common/reg-printf.c (__register_printf_function): Calloc
1235         instead of malloc __printf_arginfo_table and __printf_function_table.
1236         Reported by John Reiser <jreiser@BitWagon.com>.
1237
1238 2003-04-04  Steven Munroe  <sjmunroe@us.ibm.com>
1239
1240         * sysdeps/powerpc/powerpc64/strchr.S: 64-bit optimizations.
1241         * sysdeps/powerpc/powerpc64/strlen.S: 64-bit optimizations.
1242
1243         * sysdeps/powerpc/fpu/bits/mathdef.h (FLT_EVAL_METHOD): Undef before
1244         defining.
1245
1246 2003-04-04  Alexandre Oliva  <aoliva@redhat.com>
1247
1248         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust
1249         for n64 abi.
1250
1251 2003-04-03  Roland McGrath  <roland@redhat.com>
1252
1253         * configure.in: Fix up use of compilation flags to match the build:
1254         For .s files, $ASFLAGS;
1255         For .S files, $CPPFLAGS $ASFLAGS;
1256         For .c files, $CFLAGS $CPPFLAGS;
1257         when linking, add $LDFLAGS.
1258         * configure: Regenerated.
1259
1260 2003-04-03  Jakub Jelinek  <jakub@redhat.com>
1261
1262         * sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test
1263         for atomic_compare_and_exchange_bool_acq failure.
1264
1265 2003-04-03  Ulrich Drepper  <drepper@redhat.com>
1266
1267         * posix/unistd.h: Define _POSIX_VERSION, _POSIX2_VERSION,
1268         _POSIX2_C_BIND, _POSIX2_C_DEV, _POSIX2_SW_DEV, and
1269         _POSXI2_LOCALEDEF to 200112L.  Remove _POSIX2_C_VERSION.
1270         Remove declaration of pthread_atfork.
1271
1272 2003-04-02  Ulrich Drepper  <drepper@redhat.com>
1273
1274         * locale/iso-639.def: Add many more languages from the current ISO 639.
1275
1276         * sysdeps/unix/sysv/linux/ipc_priv.h: Define IPCOP_semtimedop.
1277         * sysdeps/generic/semtimedop.c: New file.
1278         * sysdeps/unix/sysv/linux/i386/semtimedop.S: New file.
1279         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add semtimedop.
1280         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
1281         * sysvipc/Makefile (routines): Add semtimedop.
1282         * sysvipc/Versions [GLIBC_2.3.3] (glibc): Add semtimedop.
1283         * sysvipc/sys/sem.h: Declare semtimedop.
1284
1285 2003-04-02  Daniel Jacobowitz  <drow@mvista.com>
1286
1287         * configure.in: Check for __register_frame_info in both
1288         -lgcc and -lgcc_eh.
1289         * configure: Regenerated.
1290
1291 2003-04-01  Roland McGrath  <roland@redhat.com>
1292
1293         * scripts/abilist.awk: Allow dots in soname suffix.
1294
1295         * scripts/abilist.awk (emit): Fix bailout condition.
1296
1297 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
1298
1299         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the
1300         IA-64 version.
1301
1302         * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp
1303         register as input to asm.
1304
1305 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
1306
1307         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo.
1308
1309 2003-04-01  Andreas Jaeger  <aj@suse.de>
1310
1311         * configure.in: Output as/ld as name if version is too old.
1312
1313 2003-03-31  Daniel Jacobowitz  <drow@mvista.com>
1314
1315         * configure.in: Don't require an installed C library in the test
1316         for ".set" assembler support.
1317
1318 2003-03-31  Roland McGrath  <roland@redhat.com>
1319
1320         * signal/tst-sigset.c: New file.
1321         * signal/Makefile (tests): Add it.
1322
1323 2003-03-31  Ulrich Drepper  <drepper@redhat.com>
1324
1325         * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65.
1326         * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise.
1327         * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise.
1328         * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise.
1329         (__SIGRTMAX): Adjust accordingly.
1330         * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define
1331         second compatibility symbol set.
1332         * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define.
1333
1334 2003-03-31  Andreas Schwab  <schwab@suse.de>
1335
1336         * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test):
1337         Define.
1338         (atomic_decrement_and_test): Fix test.
1339
1340 2003-03-31  Jakub Jelinek  <jakub@redhat.com>
1341
1342         * sysdeps/sparc/sparc32/bits/atomic.h: New file.
1343         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file.
1344         * sysdeps/sparc/sparc64/bits/atomic.h: New file.
1345         * sysdeps/sparc/sparc32/atomicity.h: Removed.
1346         * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed.
1347         * sysdeps/sparc/sparc64/atomicity.h: Removed.
1348
1349 2003-03-30  Roland McGrath  <roland@redhat.com>
1350
1351         * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
1352
1353         * intl/po2test.sed: Anchor substitution regexps to fix last change.
1354
1355 2003-03-29  Paolo Bonzini  <bonzini@gnu.org>
1356
1357         * intl/po2test.sed: Unify the transformations for msgid and msgstr
1358         and remove a useless s/// command.
1359
1360 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
1361
1362         * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
1363         directive into empty .prologue region to ensure that call-chain
1364         is terminated even for the first instruction.
1365
1366         * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
1367         to terminate call-chain right from the get-go.
1368
1369         * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
1370         stop bit between compare & branch.
1371
1372 2003-03-29  Ulrich Drepper  <drepper@redhat.com>
1373
1374         * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal
1375         point correctly [PR libc/4993].
1376
1377         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid
1378         netlink_open calls if netlink is known to not be available.
1379
1380 2003-03-29  Alexandre Oliva  <aoliva@redhat.com>
1381
1382         * configure.in: Add mips64* support.
1383         * sysdeps/mips/bits/endian.h: Make it bi-endian.
1384         * sysdeps/mips/mipsel/bits/endian.h: Removed.
1385         * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
1386         * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
1387         * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
1388         * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
1389         * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
1390         * sysdeps/mips/Implies: Moved wordsize-32 to...
1391         * sysdeps/mips/mips32/Implies: New file.
1392         * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
1393         ret_NOERRNO): New.
1394         (ret, PSEUDO_END): Moved past END.
1395         (PSEUDO): Moved to...
1396         * sysdeps/unix/mips/mips32/sysdep.h: New file.
1397         * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
1398         * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
1399         * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
1400         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
1401         * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
1402
1403         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
1404         Re-introduce ENTRY.
1405
1406 2003-03-28  Thorsten Kukuk  <kukuk@suse.de>
1407
1408         * sysdeps/unix/sysv/linux/ifaddrs.c: New file.
1409         * inet/test-ifaddrs.c: Allow AF_PACKET.
1410         * sysdeps/unix/sysv/linux/kernel-features.h: Add
1411         __ASSUME_NETLINK_SUPPORT.
1412
1413 2003-03-28  Ulrich Drepper  <drepper@redhat.com>
1414
1415         * elf/vismain.c (do_test): Comment out tests which fail in the moment.
1416
1417 2003-03-26  H.J. Lu  <hjl@gnu.org>
1418
1419         * elf/vismod.h (getvarlocal1): Return const char **.
1420         (getvarinmod1): Likewise.
1421         (getvaritcpt1): Likewise.
1422         (getvarlocal2): Likewise.
1423         (getvarinmod2): Likewise.
1424         (getvaritcpt2): Likewise.
1425         (getvaritcpt3): Likewise.
1426         * elf/vismain.c (do_test): Adjusted.
1427         * elf/vismod1.c (getvarlocal1): Return address.
1428         (getvarinmod1): Likewise.
1429         (getvaritcpt1): Likewise.
1430         * elf/vismod2.c (getvarlocal2): Likewise.
1431         (getvarinmod2): Likewise.
1432         (getvaritcpt2): Likewise.
1433         * elf/vismod3.c (getvaritcpt3): Likewise.
1434
1435 2003-03-28  Roland McGrath  <roland@redhat.com>
1436
1437         * elf/vismain.c (do_test): Print both addresses when they don't match.
1438
1439         * scripts/abilist.awk: If given -v filename_regexp and/or -v
1440         libname_regexp when parsing names, then produce output only
1441         for those matching the given regexps.  In combine mode, save all
1442         stanzas for a final sorting by stanza header at the end.
1443         Emit a blank line between stanzas.
1444
1445         * scripts/abilist.awk: When given -v combine=1, do parse_names and
1446         emit a single output stream with lib name in stanza header lines.
1447
1448         * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
1449
1450 2003-03-27  Roland McGrath  <roland@redhat.com>
1451
1452         * sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
1453         (__arch_atomic_decrement_if_positive_64): Fix bogus definition.
1454
1455 2003-03-28  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1456
1457         * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
1458         Return old value. Make asm output reg constraint earlyclobber.
1459         Renamed from...
1460         (__arch_compare_and_exchange_8_acq): ... this.
1461         (__arch_compare_and_exchange_val_16_acq):
1462         Return old value. Make asm output reg constraint earlyclobber.
1463         Renamed from...
1464         (__arch_compare_and_exchange_16_acq): ... this.
1465         (__arch_compare_and_exchange_val_32_acq):
1466         Return old value. Make asm output reg constraint earlyclobber.
1467         Renamed from...
1468         (__arch_compare_and_exchange_32_acq): ... this.
1469         (__arch_compare_and_exchange_val_64_acq):
1470         Renamed from...
1471         (__arch_compare_and_exchange_64_acq): ... this.
1472         (atomic_exchange_and_add): Use local variables and
1473         __arch_compare_and_exchange_val_64_acq.
1474         (atomic_add): Likewise.
1475         (atomic_add_negative, atomic_add_zero): Use local variables.
1476
1477 2003-03-28  Alexandre Oliva  <aoliva@redhat.com>
1478
1479         * sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
1480
1481 2003-03-27  Ulrich Drepper  <drepper@redhat.com>
1482
1483         * Makefile: Remove libmd5crypt goal.
1484
1485 2003-03-25  Jakub Jelinek  <jakub@redhat.com>
1486
1487         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore
1488         special handling of relocations against local symbols.
1489
1490 2003-03-27  Steven Munroe  <sjmunroe@us.ibm.com>
1491
1492         * sysdeps/powerpc/bits/atomic.h
1493         (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__].
1494         [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq):
1495         Define PPC64 specific version.
1496         [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq):
1497         Change (mem) constraint to "b".
1498         [__powerpc64__] (__arch_atomic_exchange_and add_64):
1499         Replace addi with add. Change (value) contraint to "r".
1500         Change (mem) constraint to "b".
1501         [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro.
1502         (__arch_atomic_exchange_32): Change (mem) constraint to "b".
1503         (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b".
1504         (__arch_atomic_decrement_if_positive_32): New macro.
1505         (atomic_decrement_if_positive): Use __arch* macros.
1506
1507 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
1508
1509         * sysdeps/ia64/fpu/libm-test-ulps: Update.
1510
1511 2003-03-27  Roland McGrath  <roland@redhat.com>
1512
1513         * scripts/rpm2dynsym.sh: New file.
1514         * Makefile (distribute): Add it.
1515
1516 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
1517
1518         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's
1519         ar.unat before returning.  Add missing .mem.offset directives
1520         to ensure file gets assembled without warnings.
1521         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
1522
1523 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
1524
1525         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>:
1526         Return -1 instead of 0 if clock_getres failed.
1527
1528 2003-03-27  Roland McGrath  <roland@redhat.com>
1529
1530         * scripts/abilist.awk: If variable `parse_names' is set, grok the file
1531         header lines and write out foo.symlist files for each foo.so.NN listed.
1532
1533         * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden.
1534         This symbol is exported, and we don't want to hide it.
1535         Add libc_hidden_proto instead.
1536         (_IO_file_jumps): Add libc_hidden_proto.
1537         * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def.
1538         Remove INTVARDEF.
1539         * libio/fileops.c (_IO_file_jumps): Likewise.
1540         * libio/stdfiles.c: Don't use INTUSE on them.
1541         * libio/iofdopen.c (_IO_new_fdopen): Likewise.
1542         * libio/iofopen.c (__fopen_internal): Likewise.
1543         * libio/freopen.c (freopen): Likewise.
1544         * libio/freopen64.c (freopen64): Likewise.
1545         * libio/iovdprintf.c (_IO_vdprintf): Likewise.
1546
1547         * Makerules (check-abi) [$(enable-check-abi) = warn]:
1548         Ignore exit status from diff.
1549         * configure.in (enable_check_abi): Document possible value "warn".
1550         Change default to no for now.
1551         * configure: Regenerated.
1552
1553         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
1554         macro calls and a #include <stub-tag.h> at the end.
1555         * Makerules ($(objpfx)stubs): Tweak sed commands.
1556
1557         * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
1558         caller column for *xattr syscalls, since they are in sysdeps/generic.
1559
1560         * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
1561         * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
1562
1563 2003-03-26  Roland McGrath  <roland@redhat.com>
1564
1565         * Makerules (check-abi-config): Use /thread instead of /tls when
1566         use-thread and not just use-tls is set.
1567
1568         * Makerules (update-abi): Put quotes around $(update-abi-config).
1569
1570         * elf/Makefile (check-abi): Depend on check-abi-ld.
1571         (update-abi): Depend on update-abi-ld.
1572
1573 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
1574
1575         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and
1576         do not check for errors (unless testing for 32bit variant).
1577         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
1578
1579 2003-03-27  Philip Blundell  <philb@gnu.org>
1580
1581         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
1582         unconditional mov.  Remove nop.
1583
1584         * sysdeps/unix/sysv/linux/kernel-features.h
1585         (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
1586         * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
1587         when __ASSUME_VFORK_SYSCALL is defined.
1588         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
1589         __ASSUME_MMAP2_SYSCALL.
1590         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
1591         __ASSUME_REALTIME_SIGNALS.
1592
1593 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
1594
1595         * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
1596         only if DL_NO_COPY_RELOCS is not defined.
1597         * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
1598
1599 2003-03-26  Roland McGrath  <roland@redhat.com>
1600
1601         * sysdeps/unix/make-syscalls.sh: When an undefined syscall has
1602         SOURCE=-, append its symbol names to make variable unix-stub-syscalls.
1603         * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls]
1604         (sysdep_routines): Add stub-syscalls.
1605         ($(objpfx)stub-syscalls.c): New target.
1606         (generated): Add stub-syscalls.c.
1607
1608         * tls.make.c: Also define use-tls according to USE_TLS macro.
1609
1610 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
1611
1612         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid
1613         no-op padding element.
1614         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
1615         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
1616         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
1617         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
1618
1619 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
1620
1621         * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error
1622         condition check for the return value of getgroups32.
1623
1624 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
1625
1626         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO):
1627         Fix a typo.
1628         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO,
1629         PSEUDO_END_NOERRNO): Define.
1630         * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo.
1631         Define to PSEUDO_END.
1632
1633 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
1634
1635         * abilist/librt.abilist: Add new timer interfaces for 64-bit archs.
1636
1637 2003-03-25  Jiro SEKIBA  <jir@yamato.ibm.com>
1638
1639         * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP.
1640         * iconvdata/bug-iconv4.c: New file.
1641         * iconvdata/Makefile (tests): Add bug-iconv4.
1642
1643 2003-03-25  H.J. Lu  <hjl@gnu.org>
1644
1645         * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected
1646         symbols twice.
1647         (_dl_lookup_versioned_symbol): Likewise.
1648
1649 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
1650
1651         * csu/tst-atomic.c (do_test): Add some new
1652         atomic_compare_and_exchange_val_acq, atomic_add_zero,
1653         atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
1654         * include/atomic.h (atomic_add_negative, atomic_add_zero):
1655         Prefix local variable so that it doesn't clash with the one
1656         in atomic_exchange_and_add.
1657         * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
1658         pointers.
1659         (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
1660         * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
1661         value into register.
1662         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
1663         Cast newval to long.
1664         * sysdeps/x86_64/bits/atomic.h
1665         (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
1666         long.
1667         (atomic_exchange): Cast newvalue to long if sizeof == 8.
1668         (atomic_exchange_and_add): Cast value to long if sizeof == 8.
1669         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
1670         (atomic_bit_set): Shift 1L up in all cases to shut up warnings.
1671
1672 2003-03-21  Martin Schwidefsky  <schwidefskyde.ibm.com>
1673
1674         * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order
1675         bit from backtrace addresses.
1676
1677 2003-03-21  Andreas Schwab  <schwab@suse.de>
1678
1679         * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned
1680         __chown symbols.
1681
1682 2003-03-25  Roland McGrath  <roland@redhat.com>
1683
1684         * config.make.in (enable-check-abi): New variable from configure.
1685         * configure.in (enable_check_abi): New substituted variable,
1686         controlled by --{enable,disable}-check-abi (default yes).
1687         * configure: Regenerated.
1688         * Makerules [$(enable-check-abi) = yes] (tests): Put this condition
1689         on check-abi dependency.
1690
1691 2003-03-26  Andreas Schwab  <schwab@suse.de>
1692
1693         * sysdeps/m68k/m68020/bits/atomic.h: Fix typos.
1694         * include/atomic.h: Likewise.
1695
1696         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO.
1697
1698 2003-03-25  Roland McGrath  <roland@redhat.com>
1699
1700         * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro.
1701         (__arch_atomic_exchange_64): New macro.
1702         (atomic_exchange): Use them.
1703         (__arch_atomic_exchange_and_add_32): New macro.
1704         (__arch_atomic_exchange_and_add_64): New macro.
1705         (atomic_exchange_and_add): Use them.
1706         Original patch from Steven Munroe <sjmunroe@us.ibm.com>.
1707
1708 2003-03-25  Alexandre Oliva  <aoliva@redhat.com>
1709
1710         * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
1711         Define.
1712         * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
1713         ISA tests.
1714         (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
1715         (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
1716         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
1717         to decide whether to add padding.
1718         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
1719         to decide whether to add padding.
1720         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
1721         old_kernel_sigaction): Likewise.
1722
1723 2003-03-25  Ulrich Drepper  <drepper@redhat.com>
1724
1725         * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
1726         atomic_add_zero were supposed to do.
1727         * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
1728         to x86 behavior.
1729
1730         * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
1731         This matches the new timer implementation.
1732         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE):
1733         Likewise.
1734         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE):
1735         Likewise.
1736         * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
1737         timer info for what the kernel provides these days.
1738         (struct sigevent): Add _tid field.
1739         Define SIGEV_THREAD_ID.
1740         Remove struct __pthread_attr_s forward declaration.
1741         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
1742         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
1743         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
1744         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
1745
1746         * Versions.def (librt): Add GLIBC_2.3.3.
1747
1748         * abilist/libpthread.abilist: Update for nptl.
1749
1750 2003-03-24  Jon Grimm  <jgrimm@us.ibm.com>
1751
1752         * inet/netinet/in.h: Add IPPROTO_SCTP.
1753
1754 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
1755
1756         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define.
1757
1758 2003-03-24  Philip Blundell  <philb@gnu.org>
1759
1760         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL):
1761         Remove a1 from clobber list.
1762
1763 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
1764
1765         * timezone/antarctica: Update from tzdata2003a.
1766         * timezone/asia: Likewise.
1767         * timezone/australasia: Likewise.
1768         * timezone/europe: Likewise.
1769         * timezone/iso3166.tab: Likewise.
1770         * timezone/northamerica: Likewise.
1771         * timezone/southamerica: Likewise.
1772         * timezone/zone.tab: Likewise.
1773
1774 2003-03-24  Steven Munroe  <sjmunroe@us.ibm.com>
1775
1776         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo.
1777
1778 2003-03-23  Ulrich Drepper  <drepper@redhat.com>
1779
1780         * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid
1781         unwanted expansion by definining to ret.  Patch by Ian Wienand.
1782
1783         * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of
1784         the parameter description to denote no error checking.  Generate
1785         appropriate pseudo asm code.
1786         * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'.
1787         * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid,
1788         getpgrp, and getppid with 'E'.
1789         * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO,
1790         PSEUDO_END_NOERRNO, and ret_NOERRNO.
1791         * sysdeps/powerpc/powerpc64/sysdep.h: Likewise.
1792         * sysdeps/unix/sysdep.h: Likewise.
1793         * sysdeps/unix/alpha/sysdep.h: Likewise.
1794         * sysdeps/unix/sparc/sysdep.h: Likewise.
1795         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
1796         * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise.
1797         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise.
1798         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
1799         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
1800         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
1801         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
1802         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
1803         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
1804         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
1805         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
1806
1807 2003-03-23  Roland McGrath  <roland@redhat.com>
1808
1809         * Makeconfig (+includes): Don't use $(last-includes).
1810
1811 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
1812
1813         * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns.
1814         * sysdeps/unix/sysv/linux/configure: Rebuilt.
1815
1816 2003-03-23  Jakub Jelinek  <jakub@redhat.com>
1817
1818         * sysdeps/alpha/fpu/libm-test-ulps: Update.
1819         * sysdeps/arm/libm-test-ulps: Update.
1820         * sysdeps/hppa/fpu/libm-test-ulps: Update.
1821         * sysdeps/ia64/fpu/libm-test-ulps: Update.
1822         * sysdeps/mips/fpu/libm-test-ulps: Update.
1823         * sysdeps/powerpc/nofpu/libm-test-ulps: Update.
1824         * sysdeps/powerpc/fpu/libm-test-ulps: Update.
1825         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
1826         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
1827         * sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
1828         * sysdeps/s390/fpu/libm-test-ulps: Update.
1829         * sysdeps/x86_64/fpu/libm-test-ulps: Update.
1830
1831 2003-03-22  Roland McGrath  <roland@redhat.com>
1832
1833         * include/atomic.h: Put parens around all macro arguments.
1834         (__atomic_val_bysize, __atomic_bool_bysize): New macros.
1835         (atomic_compare_and_exchange_val_acq): Use it.
1836         (atomic_compare_and_exchange_bool_acq): Likewise.
1837         (atomic_increment_and_test): Invert sense of test.
1838         (atomic_decrement_and_test): Likewise.
1839         * csu/tst-atomic.c: Update those tests to match.
1840
1841 2003-03-22  Jakub Jelinek  <jakub@redhat.com>
1842
1843         * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
1844         Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
1845         (atomic_compare_and_exchange_bool_acq): Add comment.  Don't use
1846         __oldval variable in the macro, since it might be macro argument.
1847         (atomic_decrement_if_positive): Initialize __memp, remove setting
1848         of non-existent variable.
1849         (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
1850         * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
1851         using atomic_compare_and_exchange_val_acq.
1852         (atomic_decrement_if_positive, atomic_bit_test_set): Define.
1853         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
1854         Renamed from...
1855         (__arch_compare_and_exchange_bool_8_acq): ... this.
1856         (__arch_compare_and_exchange_val_16_acq): Renamed from...
1857         (__arch_compare_and_exchange_bool_16_acq): ... this.
1858         (__arch_compare_and_exchange_val_32_acq): Return old value.  Renamed
1859         from...
1860         (__arch_compare_and_exchange_bool_32_acq): ... this.
1861         (__arch_compare_and_exchange_val_64_acq): Return old value.  Renamed
1862         from...
1863         (__arch_compare_and_exchange_bool_64_acq): ... this.
1864         (__arch_compare_and_exchange_val_32_acq): Use __typeof for local
1865         variables types instead of assuming int.
1866         Change prefix of local variables to __arch.
1867         * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
1868         Remove.
1869         (atomic_compare_and_exchange_val_acq,
1870         atomic_compare_and_exchange_bool_acq): Define.
1871
1872         * csu/tst-atomic.c: New test.
1873         * csu/tst-atomic-long.c: New test.
1874         * csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
1875
1876         * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
1877
1878         * sysdeps/s390/Versions: Add trailing newline.
1879
1880         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
1881         if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
1882
1883 2003-03-22  Andreas Schwab  <schwab@suse.de>
1884
1885         * sysdeps/m68k/fpu/libm-test-ulps: Update.
1886
1887         * sysdeps/m68k/m68020/bits/atomic.h: New file.
1888         * sysdeps/m68k/m68020/atomicity.h: Removed.
1889
1890 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
1891
1892         * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
1893         data structures and macros.  Protect from multiple inclusion.
1894
1895         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
1896         typo in #if test.
1897
1898 2003-03-21  Andreas Jaeger  <aj@suse.de>
1899
1900         * sysdeps/i386/fpu/libm-test-ulps: Update.
1901
1902         * math/libm-test.inc (tgamma_test): Recompute some constants with
1903         36 digits precision.
1904         (lgamma_test): Likewise.
1905         (ccos_test): Likewise.
1906         (ccosh_test): Likewise.
1907         (clog10_test): Likewise.
1908         (csin_test): Likewise.
1909         (csinh_test): Likewise.
1910         (ctan_test): Likewise.
1911         (ctanh_test): Likewise.
1912
1913 2003-03-19  Jakub Jelinek  <jakub@redhat.com>
1914
1915         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
1916
1917 2003-03-21  Roland McGrath  <roland@redhat.com>
1918
1919         * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
1920         constraint to permit non-constant BIT argument.
1921         (atomic_bit_test_set): Likewise.
1922         * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
1923         (atomic_bit_set): Likewise.  Use 1UL in case that BIT might be >= 32.
1924         For quadword case, use "i" constraint if __builtin_constant_p and < 32
1925         or "r" constraint otherwise.
1926
1927         * configure.in: Move AC_PROG_CC and other program-finding before all
1928         the version checks.
1929         * configure: Regenerated.
1930
1931 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
1932
1933         * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
1934         unaligned copying of 8-15 bytes.  From Chris Demetriou
1935         <cgd@broadcom.com>.  Fix label names.
1936         * sysdeps/mips/mips64/memset.S: Fix label names.  Make similar
1937         change as to memcpy.S.
1938         * sysdeps/mips/memcpy.S: Formatting changes.
1939         * sysdeps/mips/memset.S: Likewise.
1940
1941 2003-03-21  Roland McGrath  <roland@redhat.com>
1942
1943         * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
1944
1945 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
1946
1947         * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
1948         * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
1949
1950 2003-03-21  Roland McGrath  <roland@redhat.com>
1951
1952         * sysdeps/i386/i486/bits/atomic.h
1953         (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
1954         version of the macro to avoid compile-time warnings.
1955         [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
1956         (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
1957         (atomic_increment, atomic_decrement): Likewise.
1958
1959 2003-03-21  Ulrich Drepper  <drepper@redhat.com>
1960
1961         * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
1962         * sysdeps/i386/i486/bits/atomic.h: Likewise.
1963
1964 2003-03-21  Roland McGrath  <roland@redhat.com>
1965
1966         * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
1967
1968 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
1969
1970         * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
1971         atomic_compare_and_exchange_val_rel,
1972         atomic_compare_and_exchange_bool_acq, and
1973         atomic_compare_and_exchange_bool_rel instead of
1974         atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
1975         * sysdeps/i386/i486/bits/atomic.h: Define
1976         __arch_compare_and_exchange_val_*_acq instead of
1977         __arch_compare_and_exchange_*_acq.
1978         * sysdeps/x86_64/bits/atomic.h: Likewise.
1979         * sysdeps/ia64/bits/atomic.h: Define
1980         __arch_compare_and_exchange_bool_*_acq instead of
1981         __arch_compare_and_exchange_*_acq.
1982         * sysdeps/powerpc/bits/atomic.h: Likewise.
1983         * sysdeps/s390/bits/atomic.h: Likewise.
1984         * gmon/mcount.c: Adjust for new form of compare&exchange macros.
1985         * malloc/set-freeres.c: Likewise.
1986         * nscd/cache.c: Likewise.
1987         * stdlib/cxa_finalize.c: Likewise.
1988         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
1989
1990 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
1991
1992         * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
1993         * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
1994         * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
1995
1996         * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
1997         into high and low halves on n64.
1998         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1999         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
2000         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
2001
2002 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
2003
2004         * include/atomic.h (atomic_decrement_if_positive): Adjust for the
2005         correct atomic_compare_and_exchange_acq semantics.
2006
2007 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
2008
2009         * sysdeps/mips/ieee754.h: Remove excess #endif.
2010
2011 2003-03-20  Roland McGrath  <roland@redhat.com>
2012
2013         * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
2014         variable.  Remove superfluous memory clobber.
2015
2016         * include/atomic.h: Syntax braino fix.
2017
2018         * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
2019         in decimal.  Don't bail if niced at start.  Just check that nice call
2020         bumps the total at all.
2021
2022 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
2023
2024         * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
2025         including pc, gp, sp and fp, as long long.
2026         * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
2027         * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
2028         Add gp argument, and set gp in the jmpbuf to it.
2029         * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
2030
2031 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
2032
2033         * include/atomic.h: Define atomic_exchange and
2034         atomic_decrement_if_positive if not already defined.  Add some
2035         __builtin_expect.
2036         * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
2037         * sysdeps/x86_64/bits/atomic.h: Likewise.
2038         * sysdeps/ia64/bits/atomic.h: Pretty printing.  Define atomic_exchange.
2039         * sysdeps/powerpc/bits/atomic.h: Pretty printing.  Define
2040         atomic_exchange, atomic_exchange_and_add, and
2041         atomic_decrement_if_positive
2042
2043 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
2044
2045         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
2046         with a single instruction.
2047
2048         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
2049         properly for n64.
2050         (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
2051         type.
2052         (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
2053         Word before comparing with gotsym.  Take reloc_addr argument as
2054         void*.  Remove the code added for the compiler to drop any
2055         alignment assumptions.
2056
2057 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
2058
2059         * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
2060         * include/atomic.h: New file.
2061         * sysdeps/i386/i486/bits/atomic.h: New file.
2062         * sysdeps/x86_64/bits/atomic.h: New file.
2063         * sysdeps/s390/bits/atomic.h: New file.
2064         * sysdeps/sh/bits/atomic.h: New file.
2065         * sysdeps/ia64/bits/atomic.h: New file.
2066         * sysdeps/powerpc/bits/atomic.h: New file.
2067         * sysdeps/generic/bits/atomic.h: New file.
2068         * sysdeps/i386/i486/atomicity.h: Removed.
2069         * sysdeps/x86_64/atomicity.h: Removed.
2070         * sysdeps/s390/s390-32/atomicity.h: Removed.
2071         * sysdeps/s390/s390-64/atomicity.h: Removed.
2072         * sysdeps/ia64/atomicity.h: Removed.
2073         * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
2074         * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
2075         * elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
2076         use of macros from atomicity.h to new names and semantics.
2077         * gmon_mcount.c: Likewise.
2078         * malloc/set-freeres.c: Likewise.
2079         * nscd/cache.c: Likewise.
2080         * stdlib/cxa_finalize.c: Likewise.
2081         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
2082
2083 2003-03-19  Alexandre Oliva  <aoliva@redhat.com>
2084
2085         * sysdeps/mips/ieee754.h: New file, suitable to replace both
2086         ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
2087         mips-specific for now.
2088
2089 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
2090
2091         * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
2092         hexdigits correctly.  Reported by Fred Tydeman <tydeman@tybor.com>.
2093         * stdlib/tst-strtod.c: Add test for the bug.
2094
2095         * posix/tst-nice.c (do_test): Remove invalid of return value.
2096         Don't run test if initial level != 0.
2097
2098 2003-03-19  Amos Waterland  <apw@us.ibm.com>
2099
2100         * posix/tst-nice.c: New file.
2101         * posix/Makefile (tests): Add tst-nice.
2102
2103 2003-03-18  Roland McGrath  <roland@redhat.com>
2104
2105         * abilist: New directory of libfoo.abilist files maintained using
2106         scripts/merge-abilist.awk and "make update-abi" rules.
2107         * Makefile (distribute): Add abilist/*.abilist.
2108         * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
2109         Depend on check-abi.
2110
2111         * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
2112         * configure: Regenerated.
2113
2114         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
2115
2116 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
2117
2118         * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
2119         correctly.
2120
2121 2003-03-18  Steven Munroe  <sjmunroe@us.ibm.com>
2122
2123         * sysdeps/powerpc/powerpc64/memcpy.S: New file.
2124
2125 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
2126
2127         * Versions.def: Add GLIBC_2.3.3 for libpthread.
2128
2129 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
2130
2131         * sysdeps/generic/libc-start.c [!SHARED &&
2132         !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
2133
2134 2003-03-17  Roland McGrath  <roland@redhat.com>
2135
2136         * include/ctype.h: Revert last change.
2137
2138 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
2139
2140         * argp/tst-argp1.c: Use test-skeleton.c.
2141         * locale/tst-C-locale.c: Likewise.
2142
2143 2003-03-17  Alexandre Oliva  <aoliva@redhat.com>
2144
2145         * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
2146         * sysdeps/mips/mips64/n64/Implies: New file.
2147         * sysdeps/mips/mips64/n64/Makefile: New file.
2148         * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
2149         * sysdeps/mips/mips64/n32/Implies: New file.
2150         * sysdeps/mips/mips64/n32/Makefile: New file.
2151         * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
2152         * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
2153         * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
2154         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
2155         * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
2156         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
2157         * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
2158         * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
2159         * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
2160         * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
2161         * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
2162         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
2163         * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
2164         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
2165
2166         * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
2167         lib64 for mips64/n64 and lib32 for mips64/n32.
2168         (ldd_rewrite_script): Needed for all mips64 configurations.
2169         * sysdeps/unix/sysv/linux/configure: Rebuilt.
2170         * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
2171         * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
2172
2173         * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
2174         well.
2175
2176         * sysdeps/unix/sysv/linux/mips/configure.in: New.  Pre-process
2177         asm/unistd.h into asm-unistd.h.
2178         * sysdeps/unix/sysv/linux/mips/configure: Generated.
2179         * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
2180         of syscall list.
2181         * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
2182         * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
2183         asm/unistd.h.
2184
2185         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
2186         * sysdeps/unix/sysv/linux/mips/ptrace.c: New file.  Use long
2187         long type for registers on n32.
2188
2189         * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
2190         3 ABIs.
2191         * sysdeps/mips/mips64/gmp-mparam.h: New file.  Define
2192         BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
2193         * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
2194         (__sigsetjmp_aux): Use them.  Adjust for all 3 ABIs.
2195         * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
2196         * sysdeps/unix/mips/brk.S: Likewise.
2197         * sysdeps/unix/mips/sysdep.S: Likewise.
2198         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
2199         * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
2200         * sysdeps/mips/sys/ucontext.h: Likewise.
2201         * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
2202         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
2203         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
2204         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
2205         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
2206         * sysdeps/mips/mips64/setjmp.S: Likewise.
2207         * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
2208         * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
2209         64-bit types.
2210
2211 2003-03-16  Ulrich Drepper  <drepper@redhat.com>
2212
2213         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
2214         not at function level.
2215         * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
2216
2217 2003-03-15  Roland McGrath  <roland@redhat.com>
2218
2219         * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
2220         * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
2221         * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
2222         * nis/nis_table.c (__create_ib_request): Likewise.
2223
2224         * posix/fnmatch_loop.c: Add casts for signedness.
2225         * nss/nss_files/files-hosts.c: Likewise.
2226         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
2227         * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
2228         * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
2229
2230         * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
2231         get errors into the log file.
2232         (libc_cv_broken_visibility_attribute): Likewise.
2233         (libc_cv_broken_alias_attribute): Likewise.
2234         (libc_cv_asm_weak_directive): Likewise.
2235         (libc_cv_need_minus_P): Likewise.
2236         (libc_cv_dot_text): Likewise.
2237         (libc_cv_asm_global_directive): Likewise.
2238         (libc_cv_asm_type_prefix): Likewise.
2239         * configure: Regenerated.
2240
2241         * nscd/cache.c (cache_search): Give first arg type `request_type'.
2242         * nscd/nscd.h: Update decl.
2243
2244         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
2245         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
2246         * elf/dl-close.c (_dl_close): Likewise.
2247         * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
2248         * io/fts.c (fts_build): Likewise.
2249         * elf/cache.c (add_to_cache): Likewise.
2250         * locale/programs/locarchive.c (show_archive_content): Likewise.
2251
2252         * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
2253
2254         * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
2255         happy.
2256         (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
2257
2258 2003-03-15  Ulrich Drepper  <drepper@redhat.com>
2259
2260         * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
2261         code for most parts.
2262
2263 2003-03-15  Roland McGrath  <roland@redhat.com>
2264
2265         * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
2266         * sysdeps/unix/sysv/linux/system.c: ... here.
2267         (FORK): Don't #define if already #define'd.
2268         * sysdeps/unix/sysv/linux/s390/system.c: File removed.
2269         * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
2270         (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
2271
2272         * dlfcn/tst-dlinfo.c: New file.
2273         * dlfcn/Makefile (tests): Add tst-dlinfo.
2274         ($(objpfx)tst-dlinfo): New target.
2275
2276         * dlfcn/dlinfo.c: New file.
2277         * dlfcn/Makefile (libdl-routines): Add it.
2278         * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
2279         * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
2280         [__USE_GNU] (RTLD_DI_*): New enum constants.
2281         [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
2282         * elf/dl-load.c (cache_rpath): New inline function.
2283         (_dl_map_object): Use it.
2284         (_dl_rtld_di_serinfo): New function.
2285         * sysdeps/generic/ldsodefs.h: Declare it.
2286         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
2287
2288         * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
2289         (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
2290         (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
2291         (__libc_start_main): Just call the generic one for most of the work.
2292
2293         * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
2294         static function by that name instead of BP_SYM (__libc_start_main).
2295         [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
2296         [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
2297         [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
2298
2299         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
2300         Use this macro for extra AT_* cases.
2301         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
2302         New macro, guts from ...
2303         (__aux_init_cache): ... here, function removed.
2304         (DL_PLATFORM_INIT): Don't define this.
2305
2306         * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
2307         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
2308
2309         * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
2310
2311 2003-03-14  Roland McGrath  <roland@redhat.com>
2312
2313         * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
2314
2315 2003-03-14  Jakub Jelinek  <jakub@redhat.com>
2316
2317         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
2318
2319         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
2320         sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
2321
2322 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
2323
2324         * sysdeps/mips/fpu/bits/mathdef.h: New.
2325         (__NO_LONG_DOUBLE_MATH): Define for o32.
2326
2327         * sysdeps/mips/sys/asm.h: Formatting changes.
2328         (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
2329         (CPADD): Define for all of them.
2330         (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
2331         SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
2332         NARGSAVE): Define per ABI spec.
2333         (END): Don't redefine.
2334         (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
2335         LONG_SRAV): Remove duplicate definitions.
2336         (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
2337         PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
2338         PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
2339         (PTR_LA): Define for all 3 ABIs.
2340
2341         * sysdeps/mips/dl-machine.h: Include sys/asm.h.
2342         (elf_machine_matches_host): Prevent linking of o32 and n32
2343         together.
2344         (elf_machine_dynamic): Document assumption on $gp.
2345         (STRINGXP, STRINGXV, STRINGV_): New macros.
2346         (elf_machine_load_address): Use them to stringize PTR_LA and
2347         PTR_SUBU.
2348         (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
2349         ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
2350         (_dl_runtime_resolve): Adjust it for all 3 ABIs.
2351         (__dl_runtime_resolve): Cast the symtab initializer to the
2352         right type.
2353         (RTLD_START): Use it.  Adjust it for all 3 ABIs.
2354         (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
2355         Handle 64-bit R_MIPS_REL composite relocation and accept
2356         R_MIPS_64 relocations to shift addend size to 64 bits.
2357         Document assumption regarding local GOT entries.  Document
2358         backward-compatibility departing from the ABI behavior in
2359         applying relocations that reference section symbols, no longer
2360         used.  Support relocations to mis-aligned offsets.
2361         * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
2362
2363         * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
2364
2365         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
2366         (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
2367         * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
2368         restore_rt functions.  Use them.
2369
2370         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
2371         .set mips2 on new abis.
2372
2373 2003-03-13  Ulrich Drepper  <drepper@redhat.com>
2374
2375         * posix/getconf.c: Recognize POSIX2_SYMLINKS.
2376         * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
2377         * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
2378         * sysdeps/posix/pathconf.c: Likewise.
2379         * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
2380         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
2381         * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
2382
2383         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
2384         words.
2385
2386 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
2387
2388         * include/gmp.h: Include/gmp-mparam.h.
2389         * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
2390         gmp-impl.h.
2391
2392         * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
2393         ELF_MACHINE_NO_RELA is set.
2394         * elf/rtld.c (dl_main): No prelink support for REL-only.
2395
2396         * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
2397         FLAG_MIPS64_LIBN64): Define.
2398         * elf/cache.c (print_entry): Handle mips64 n32 and n64.
2399
2400         * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
2401         * sysdeps/mips/memset.S: Likewise.
2402         * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
2403         depending on the ABI.
2404
2405         * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
2406         Don't .set mips2 on new abi.
2407         (compare_and_swap): Likewise.  Support 64-bit longs on n64.
2408
2409         * stdlib/fpioconst.h: Include gmp.h with angle brackets.
2410
2411 2003-03-13  Roland McGrath  <roland@redhat.com>
2412
2413         * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
2414         found.  Reported by Alexandre Oliva <aoliva@redhat.com>.
2415
2416 2003-03-13  Alexandre Oliva  <aoliva@redhat.com>
2417
2418         * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
2419         literals long long.
2420         * stdlib/fpioconst.c: Likewise.
2421         * stdlib/strtod.c: Likewise.
2422
2423         * sysdeps/mips/add_n.S: Use L macro for local labels.
2424         * sysdeps/mips/addmul_1.S: Likewise.
2425         * sysdeps/mips/lshift.S: Likewise.
2426         * sysdeps/mips/memcpy.S: Likewise.
2427         * sysdeps/mips/memset.S: Likewise.
2428         * sysdeps/mips/mul_1.S: Likewise.
2429         * sysdeps/mips/rshift.S: Likewise.
2430         * sysdeps/mips/sub_n.S: Likewise.
2431         * sysdeps/mips/submul_1.S: Likewise.
2432         * sysdeps/mips/mips64/add_n.S: Likewise.
2433         * sysdeps/mips/mips64/addmul_1.S: Likewise.
2434         * sysdeps/mips/mips64/lshift.S: Likewise.
2435         * sysdeps/mips/mips64/mul_1.S: Likewise.
2436         * sysdeps/mips/mips64/rshift.S: Likewise.
2437         * sysdeps/mips/mips64/sub_n.S: Likewise.
2438         * sysdeps/mips/mips64/submul_1.S: Likewise.
2439         * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
2440         conventions.  Define END as in sys/asm.h.
2441         * sysdeps/unix/mips/sysdep.S: Likewise.
2442         * sysdeps/unix/mips/wait.S: Likewise.
2443         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
2444
2445         * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
2446         Cast shifted values that may be too narrow to mp_limb_t.
2447         * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
2448         Likewise.
2449         * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
2450         Likewise.
2451         * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
2452         (__mpn_extract_long_double): Likewise.
2453         * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
2454         (__mpn_construct_long_double): Likewise.
2455         * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
2456         (__mpn_extract_long_double): Likewise.
2457         * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
2458         (__mpn_construct_long_double): Likewise.
2459
2460 2003-03-13  Roland McGrath  <roland@redhat.com>
2461
2462         * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
2463         entries in the map file match too.
2464
2465 2003-03-13  Guido Guenther  <agx@sigxcpu.org>
2466
2467         * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
2468         label .Lthread_start since current binutils don't allow branches
2469         to globally visible symbols.
2470
2471 2003-03-13  Jakub Jelinek  <jakub@redhat.com>
2472
2473         * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
2474         ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
2475         ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
2476         (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it.  Make syscall arguments
2477         clobbered by the syscall.
2478         (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
2479         ASM_ARGS_6): Change constraints from r to index of corresponding
2480         output register.
2481         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
2482         ptid and ctid to match kernel.
2483         * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
2484
2485 2003-03-12  Steven Munroe  <sjmunroe@us.ibm.com>
2486
2487         * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
2488         AC_DEFINE(PI_STATIC_AND_HIDDEN).  Not supported for PowerPC64.
2489         * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
2490
2491 2003-03-11  Roland McGrath  <roland@redhat.com>
2492
2493         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
2494         Check SYM_MAP rather than SYM as definedness check.
2495         Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
2496         Don't handle R_PPC64_REL24 reloc.
2497         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
2498
2499         * sysdeps/powerpc/powerpc64/dl-machine.h
2500         [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
2501         block, so we cover all the TPREL16* flavors without 6 ||s.
2502         [USE_TLS] (elf_machine_tprel): New function.
2503         (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
2504         and handle TPREL16 relocs too.  Return rather than break for DTPREL64.
2505         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
2506
2507 2003-03-11  Ralf Baechle  <ralf@linux-mips.org>
2508
2509         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
2510         instead of jalr to invoke subroutine so restoring the $gp register
2511         will work properly.
2512
2513 2003-03-11  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2514
2515         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
2516         to __NR_pread if not defined.
2517         (__NR_pwrite64): Define to __NR_pwrite if not defined.
2518
2519 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
2520
2521         * sysdeps/unix/sysv/linux/ia64/system.c: New file.
2522         * sysdeps/unix/sysv/linux/kernel-features.h
2523         (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
2524         kernel >= 2.5.64.
2525
2526 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
2527
2528         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
2529         allocate space even for the trailing '/'.
2530         Reported by John Reiser <jreiser@BitWagon.com>.
2531
2532         * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
2533         ASM_CLOBBERS_6): Define.
2534         (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
2535         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
2536         to match IA-32 order.
2537         * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
2538
2539 2003-03-10  Steven Munroe  <sjmunroe@us.ibm.com>
2540
2541         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
2542         Copy extra params for NPTL to registers used in clone syscall.
2543
2544 2003-03-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2545
2546         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
2547         call names for pread and pwrite.
2548
2549 2003-03-10  Roland McGrath  <roland@redhat.com>
2550
2551         * dlfcn/Makefile (libdl-routines): Add dladdr1.
2552         * dlfcn/dladdr1.c: New file.
2553         * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
2554         [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
2555         * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
2556         a const ElfNN_Sym ** to fill in.
2557         * include/dlfcn.h: Update decl.  Include <link.h>.
2558         * dlfcn/dladdr.c (dladdr): Update caller.
2559         * malloc/mtrace.c (tr_where): Likewise.
2560         * sysdeps/generic/elf/backtracesyms.c: Likewise.
2561         * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
2562         * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
2563         * Versions.def (libdl): Define GLIBC_2.3.3 set.
2564
2565         * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
2566         assembler command.
2567         * sysdeps/unix/Makefile (compile-syscall): New variable.
2568         Pass -g0 to compiler for assembling syscall stubs from stdin.
2569
2570         * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
2571         (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
2572         Define these to do nothing.
2573
2574         * configure.in: New check for -g on .S files.
2575         * configure: Regenerated.
2576         * config.make.in (have-cpp-asm-debuginfo): New variable.
2577         * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
2578         * Makeconfig (ASFLAGS): New variable, if undefined and
2579         $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
2580         * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
2581
2582 2003-03-09  Roland McGrath  <roland@redhat.com>
2583
2584         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
2585         used by NPTL on new kernels.  From Paul Mackerras <paulus@samba.org>.
2586
2587 2003-03-09  Ulrich Drepper  <drepper@redhat.com>
2588
2589         * po/fi.po: Update from translation team.
2590         * po/ca.po: Likewise.
2591         * po/da.po: Likewise.
2592
2593 2003-03-08  Ulrich Drepper  <drepper@redhat.com>
2594
2595         * rt/tst-aio7.c (do_test): Change BYTES into a #define.
2596
2597 2003-03-07  Ulrich Drepper  <drepper@redhat.com>
2598
2599         * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
2600
2601         * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
2602
2603 2003-03-07  Roland McGrath  <roland@redhat.com>
2604
2605         * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
2606         * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
2607
2608 2003-03-04  Guido Guenther  <agx@sigxcpu.org>
2609
2610         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
2611         stubs, we have INLINE_SYSCALL.
2612         * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
2613         MAP_NONBLOCK.
2614
2615 2003-03-06  Roland McGrath  <roland@redhat.com>
2616
2617         * rt/tst-aio7.c (do_test): Revert last change.  Instead, give CB1
2618         permanent extent and add a comment about testing its implicit teardown.
2619
2620 2003-03-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2621
2622         * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
2623
2624 2003-03-05  Ulrich Drepper  <drepper@redhat.com>
2625
2626         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
2627         reversed __builtin_expect expectation.
2628
2629 2003-03-05  Roland McGrath  <roland@redhat.com>
2630
2631         * stdio-common/sscanf.c: Use prototype defn with ... syntax.
2632         * libio/swscanf.c: Likewise.
2633         * libio/swprintf.c: Likewise.
2634
2635 2003-03-04  Roland McGrath  <roland@redhat.com>
2636
2637         * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
2638         (elf_machine_rela): Always use RESOLVE_MAP, needed for
2639         R_PPC64_JMP_SLOT as well as TLS cases.
2640         (BIT_INSERT): Move parenthesis where it ought to have been.
2641         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
2642
2643         * posix/confstr.c (confstr): Correct STRING_LEN values for
2644         _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
2645         break.  Reported by Alexandre Julliard <julliard@winehq.com>.
2646
2647 2003-03-04  Jakub Jelinek  <jakub@redhat.com>
2648
2649         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
2650
2651 2003-03-04  Ulrich Drepper  <drepper@redhat.com>
2652
2653         * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
2654         clone parameters.
2655
2656         * po/sv.po: Update from translation team.
2657
2658 2003-03-04  Andreas Jaeger  <aj@suse.de>
2659             Ulrich Drepper  <drepper@redhat.com>
2660
2661         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
2662
2663 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
2664
2665         * sysdeps/generic/dl-sysdep.h: Add double include protection.
2666
2667         * po/tr.po: Update from translation team.
2668
2669         * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
2670         are holes between the segments.  Only call mprotect to set
2671         proection to PROT_NONE if there are some.
2672
2673         * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
2674         Update comment.
2675
2676         * include/sched.h (__clone2): Use ... instead of adding all the
2677         new parameters.
2678
2679 2003-03-03  Roland McGrath  <roland@redhat.com>
2680
2681         * elf/dl-load.c (struct filebuf): Fix typo in last change.
2682
2683         * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
2684         PI_STATIC_AND_HIDDEN.
2685
2686 2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>
2687
2688         * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
2689         flags.
2690         * include/sched.h: Update clone2 prototype.
2691
2692 2003-03-03  Andreas Jaeger  <aj@suse.de>
2693
2694         * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
2695         (llrint): Use it to correct return type.
2696         (lrint): Likewise.
2697         (lround): Likewise.
2698         (llround): Likewise.
2699
2700 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
2701
2702         * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
2703         byte filebuf size.
2704
2705         * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
2706         if ccs parameter isn't valid.  Reported by Andreas Schwab.
2707
2708 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2709
2710         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
2711         for system call numbers > 255.
2712         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
2713         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
2714         INTERNAL_SYSCALL): Likewise.
2715         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
2716         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
2717         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
2718         INTERNAL_SYSCALL): Likewise.
2719
2720 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2721
2722         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
2723         array if it is the initial dtv.
2724
2725 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
2726
2727         * po/es.po: Update from translation team.
2728         * po/fr.po: Likewise.
2729         * po/gl.po: Likewise.
2730         * po/sk.po: Likewise.
2731         * po/sv.po: Likewise.
2732
2733         * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
2734         * misc/sys/mman.h: Add prototype for remap_file_pages.
2735         * sysdeps/generic/remap_file_pages.c: New file.
2736         * misc/Makefile (routines): Add remap_file_pages.
2737         * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
2738
2739         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
2740         and MAP_NONBLOCK.
2741         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
2742         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
2743         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
2744         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
2745         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
2746         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
2747         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
2748         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
2749
2750 2003-03-03  Roland McGrath  <roland@redhat.com>
2751
2752         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
2753         * sysdeps/ia64/dl-machine.h: Likewise.
2754         * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
2755         argument type.
2756         * sysdeps/ia64/dl-lookupcfg.h: Update decl.
2757
2758         * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
2759         * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
2760         * locale/Versions (libc: GLIBC_2.3): Move those to ...
2761         * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
2762         * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
2763         * Versions.def (libc): Add GLIBC_2.3.3 set.
2764
2765         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
2766         * sysdeps/ia64/dl-machine.h: Update decl.
2767
2768 2003-03-03  Andreas Jaeger  <aj@suse.de>
2769
2770         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
2771
2772 2003-03-02  Roland McGrath  <roland@redhat.com>
2773
2774         * scripts/abilist.awk: Reject data items with apparent 0 size.
2775
2776         * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
2777         after foo.* as if it were a duplicate.
2778
2779         * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
2780
2781 2003-03-02  Ulrich Drepper  <drepper@redhat.com>
2782
2783         * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
2784
2785         * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
2786         * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
2787         if not already defined.  Use SYSDEP_GETRES to allow other files to
2788         provide alternative implementations.
2789         * sysdeps/unix/sysv/linux/clock_getres.c: New file
2790         * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
2791         if not already defined.  Use SYSDEP_GETTIME to allow other files to
2792         provide alternative implementations.
2793         * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
2794         * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
2795         if not already defined.  Use SYSDEP_GETTIME to allow other files to
2796         provide alternative implementations.
2797         * sysdeps/unix/sysv/linux/clock_settime.c: New file.
2798         * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
2799         other files to provide alternative implementations.  Rearrange
2800         tests for invalid parameters.
2801         * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
2802         * sysdeps/unix/sysv/linux/sysconf.c: New file.
2803         * sysdeps/unix/sysv/linux/kernel-features.h: Define
2804         __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
2805         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
2806         _POSIX_MONOTONIC_CLOCK.
2807
2808 2003-03-02  Roland McGrath  <roland@redhat.com>
2809
2810         * scripts/merge-abilist.awk: More checks for bogus input.
2811         Uniquify duplicate config names.
2812
2813         * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
2814
2815         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
2816         from dl_reloc_overflow, make global.
2817         (__process_machine_rela): Update callers.
2818         * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
2819         Add attribute_hidden to __process_machine_rela decl.
2820         (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
2821
2822         * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
2823         variable.
2824
2825         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
2826         Don't use weak_extern for dl_rtld_map.  Instead check only if [SHARED].
2827         (elf_machine_rela): Clean up.
2828
2829         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
2830
2831         PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
2832         * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
2833         * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
2834         * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
2835         (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
2836         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
2837         new relocs for TLS.
2838
2839         * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
2840         macros out of [SHARED].
2841         (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
2842
2843         * elf/elf.h: Define R_PPC_* relocs for TLS support.
2844         Clean up R_PPC64_* macro definition comments.
2845
2846         * configure.in: In "running configure fragment for" message,
2847         omit $srcdir from the name if we prepended it.
2848         * configure: Regenerated.
2849
2850         * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
2851         From Jakub Jelinek <jakub@redhat.com>.
2852
2853         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
2854         which duplicated the O_DIRECT defn.
2855
2856 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
2857
2858         * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
2859         random functions.
2860
2861 2003-03-01  Andreas Schwab  <schwab@suse.de>
2862
2863         * resolv/Makefile (tests): Don't depend on
2864         $(objpfx)mtrace-tst-leaks when cross compiling.
2865
2866         * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
2867         __libc_stack_end through GOT since it is a global symbol.
2868
2869 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
2870
2871         * argp/argp.h: Fix a typo.
2872         Reported by H.S.Teoh <hsteoh@quickfur.ath.cx>.
2873
2874         * manual/terminal.texi: Fix cfmakeraw() definition from int to void.
2875
2876 2003-02-27  Pat Rankin  <rankin@pactechdata.com>
2877
2878         * posix/regexec.c (proceed_next_node): Cast re_string_get_buffer to
2879         char *.
2880         (get_subexp): Likewise.
2881
2882 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
2883
2884         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DIRECT): Define.
2885
2886 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
2887
2888         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_DIRECT): Define.
2889
2890 2003-02-27  Roland McGrath  <roland@redhat.com>
2891
2892         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Remove
2893         special case for dl_rtld_map in R_PPC64_RELATIVE; it's harmless to
2894         repeat it and avoids the test for the common case.
2895         Clean up and fix calculations for TLS relocs.
2896
2897         * sysdeps/powerpc/powerpc64/dl-tls.h: Moved to ...
2898         * sysdeps/powerpc/dl-tls.h: ... here.
2899         (TLS_TP_OFFSET): New macro.
2900
2901         * sunrpc/svc_udp.c (svcudp_recv): Add a cast to last change.
2902
2903 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
2904
2905         * sysdeps/i386/fpu/libm-test-ulps: Increase ULPs for yn due to
2906         code generation changes in recent gcc.
2907
2908 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
2909
2910         * sysdeps/powerpc/fpu/fpu_control.h (_FPU_GETCW, _FPU_SETCW):
2911         Rename argument to avoid symbol conflict.
2912
2913         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
2914         [__USE_GNU] (O_DIRECT): New macro.
2915
2916 2003-02-24  David Mosberger  <davidm@hpl.hp.com>
2917
2918         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
2919         unwind info.
2920
2921 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
2922
2923         * resolv/res_libc.c [USE___THREAD] (_res): Don't need the
2924         initializer anymore now that res_thread_freeres is more careful.
2925
2926         * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
2927         except the PKTINFO.  Reset interface in PKTINFO.
2928         Patch by Neil Brown <neilb@cse.unsw.edu.au> [PR libc/4973].
2929
2930 2003-02-25  Steven Munroe  <sjmunroe@us.ibm.com>
2931
2932         * elf/elf.h: Add new R_PPC64_* relocs for TLS.
2933         * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
2934         Define.
2935         * sysdeps/powerpc/powerpc64/elf/configure.in: New file.
2936         * sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
2937         * sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
2938         * sysdeps/powerpc/powerpc64/dl-tls.h: New file.
2939
2940         * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
2941         Do DL_SYSDEP_OSCHECK here, matching 2002-12-01 change to generic file.
2942
2943 2003-02-25  Andreas Jaeger  <aj@suse.de>
2944
2945         * manual/memory.texi (Malloc Tunable Parameters): Clarify
2946         behaviour of M_MMAP_THRESHOLD.
2947
2948 2003-02-25  Roland McGrath  <roland@redhat.com>
2949
2950         * resolv/res_init.c (res_thread_freeres): Bail out if _res.nscount is
2951         zero, inidicating _res was not initialized yet.
2952
2953 2003-02-24  Ulrich Drepper  <drepper@redhat.com>
2954
2955         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remove EACCES
2956         test.
2957
2958 2003-02-24  Roland McGrath  <roland@redhat.com>
2959
2960         * sysdeps/posix/pause.c: Add LIBC_CANCEL_HANDLED.
2961
2962 2003-02-23  Roland McGrath  <roland@redhat.com>
2963
2964         * sysdeps/posix/pause.c: New file.
2965         * sysdeps/unix/common/pause.c: File removed.
2966
2967 2003-02-23  Ulrich Drepper  <drepper@redhat.com>
2968
2969         * sysdeps/generic/bits/confname.h: Remove #ifs.
2970
2971         * posix/Makefile (CFLAGS-regex.c): Remove RE_ENABLE_I18N definition.
2972         * posix/regex_internal.h (RE_ENABLE_I18N): Pretty printing.
2973
2974         * resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
2975         element to -1.
2976
2977 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
2978
2979         * sysdeps/generic/dl-sysdep.c: Avoid warning.
2980
2981 2003-02-22  Roland McGrath  <roland@redhat.com>
2982
2983         * resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
2984         * resolv/Makefile (tests): Add tst-leaks.
2985         ($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
2986         (tst-leaks-ENV): New variable.
2987         ($(objpfx)mtrace-tst-leaks): New target.
2988         (tests): Depend on it.
2989
2990         * include/libc-internal.h: Declare __libc_thread_freeres.
2991
2992         * Makerules: Fix last change to use $($(subdir)-version) when set.
2993
2994         * Makerules (install-lib-nosubdir): Depend on installed
2995         libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
2996         regardless of the libfoo.so target's dependencies.
2997
2998         * MakeTAGS (sub-make-vars): New variable, includes generating=t.
2999         Use that in $(MAKE) calls.
3000
3001 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
3002
3003         * catgets/gencat.c (read_input_file): Collision between
3004         auto-assigned numbers and user-defined nubmers is not fatal.
3005         Handle it.
3006         Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
3007         * catgets/Makefile: Add rules to run test2.msg test.
3008         * catgets/test2.msg: New file.
3009
3010         * catgets/gencat.c (main): Return 1 if messages have been printed.
3011
3012         * iconv/iconv_prog.c (main): Unify messages.
3013
3014         * stdlib/strtod.c (INTERNAL): Remove bogus clearing of second word
3015         when shifting retval.
3016         * stdlib/tst-strtod.c (main): Add strtold test case.
3017         Reported by Fred J. Tydeman <tydeman@tybor.com>.
3018
3019 2003-02-21  Roland McGrath  <roland@redhat.com>
3020
3021         * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
3022         * sunrpc/rpc_thread.c: Likewise for text_set_element use.
3023         (__rpc_thread_destroy): Add it to __libc_subfreeres too.
3024
3025         * include/resolv.h: Add libc_hidden_proto for __res_nclose.
3026         * resolv/res_init.c (__res_nclose): Add libc_hidden_def.
3027         (res_thread_freeres): New function, on __libc_thread_subfreeres and
3028         __libc_subfreeres.
3029
3030         * malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
3031         * malloc/thread-freeres.c: New file.
3032         * malloc/Makefile (aux): Add it.
3033         * sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
3034         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
3035         "__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.
3036
3037         * sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
3038         * sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.
3039
3040 2003-02-21  Roland McGrath  <roland@frob.com>
3041
3042         * sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.
3043
3044         * iconvdata/Makefile (tests): Add bug-iconv3 only if
3045         [$(have-thread-library) = yes].
3046
3047 2003-02-21  Ulrich Drepper  <drepper@redhat.com>
3048
3049         * sysdeps/unix/sysv/linux/bits/signum.h (__SIGRTMAX): Define as _NSIG.
3050
3051         * sysdeps/unix/sysv/linux/i386/getuid.c: Use INTERNAL_SYSCALL and do
3052         not chechk for errors (unless testing for 32bit variant).
3053         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
3054         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
3055         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
3056
3057 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
3058
3059         * sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
3060         Check for signed overflow, not unsigned.
3061
3062         * sysdeps/sparc/sparc64/elf/configure.in: New file.
3063         * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep-CFLAGS):
3064         Use -fcall-used-g6, not -fcall-used-g7.
3065
3066 2003-02-21  Andreas Jaeger  <aj@suse.de>
3067
3068         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
3069         mode.
3070
3071         * sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
3072         clear whole mxcsr but only exceptions.
3073
3074 2003-02-21  Roland McGrath  <roland@redhat.com>
3075
3076         * Makerules: Filter $(install-lib-ldscripts) out of list of targets
3077         for libfoo.so that need $(make-link) rules.
3078
3079 2003-02-21  Roland McGrath  <roland@frob.com>
3080
3081         * sysdeps/mach/hurd/bits/typesizes.h (__DEV_T_TYPE): Use __U32_TYPE
3082         to match existing struct stat layout in mig protocols.
3083
3084 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
3085
3086         * version.h (VERSION): Bump to 2.3.2.
3087
3088         * elf/Makefile (distribute): Add reldep9.c, tst-array1.exp,
3089         tst-array2.exp, tst-array4.exp, tst-array2dep.c, check-textrel.c,
3090         and dl-sysdep.h.
3091         * sysdeps/generic/Dist: Add sysdep-cancel.h.
3092         * sysdeps/powerpc/nofpu/Dist: Add soft-supp.h.
3093         * sysdeps/unix/Dist: Add s-proto-bp.S and s-proto-cancel.S.
3094         * sysdeps/unix/sysv/linux/Dist: Add pathconf.h.
3095         * sysdeps/unix/sysv/linux/i386/Dist: Add bp-thunk.h.
3096         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add fe_nomask.c and
3097         ucontext_i.h.
3098         * Makefile (distribute): Add include/stubs-prologue.h,
3099         include/gnu/stubs.h, scripts/merge-abilist.awk, and
3100         scripts/extract-abilist.awk.
3101
3102 2003-02-20  Roland McGrath  <roland@redhat.com>
3103
3104         * math/Makefile (distribute): Don't add generated files.
3105
3106 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
3107
3108         * math/Makefile: Rearrange variable definitions slightly to get
3109         definition in the right order.
3110
3111 2003-02-20  Roland McGrath  <roland@redhat.com>
3112
3113         * Makerules: Clean up conditional around include of tls.make.
3114         * Make-dist: Export generating=t to prevent using that.
3115         (+distinfo): Likewise for $(shell $(MAKE) ...) runs.
3116
3117 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
3118
3119         * inet/rcmd.c (rresvport_af): Avoid using invliad values.  Wrap
3120         around in search if port IPPORT_RESERVED/2 has been test.
3121
3122 2002-02-20  Paolo Bonzini  <bonzini@gnu.org>
3123
3124         * posix/regcomp.c: Remove inclusions.
3125         * posix/regexec.c: Likewise.
3126         * posix/regex_internal.c: Likewise.
3127         * posix/regex_internal.h: Add inclusions here.
3128         * posix/regex.c: Only include sys/types.h before regex.h.  Include
3129         regex_internal.h here.  Include regex_internal.c before regcomp.c
3130         and regexec.c (might expose more opportunities to the C compiler).
3131
3132         * posix/regcomp.c (parse_expression): Fix construct rejected by SGI CC.
3133
3134         * posix/regex_internal.h [!_LIBC] (__mempcpy): Fix typo.
3135         [!_LIBC] (__wcrtomb): New definition.
3136         [!_LIBC]: Conditionalize enabling of I18N on HAVE_WCSCOLL and
3137         HAVE_LOCALE_H as well.
3138
3139 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
3140
3141         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Remove obsolete
3142         patch to check for system call errors.
3143
3144 2002-07-24  Philip Blundell  <philb@gnu.org>
3145
3146         * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Yield ENODEV
3147         on unknown systems.
3148
3149 2003-02-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3150
3151         * sysdeps/powerpc/powerpc32/atomicity.h: Remove compiler workaround.
3152         * sysdeps/unix/sysv/linux/kernel-features.h
3153         (__ASSUME_NEW_PRCTL_SYSCALL): Defined for ppc32 too.
3154         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Use prctl
3155         if possible.
3156         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Avoid short
3157         interprocedure branches.
3158         * sysdeps/powerpc/soft-fp/Dist (sim-full.c, fenv_const.c): Move to...
3159         * sysdeps/powerpc/nofpu/Dist: ...here.
3160         * sysdeps/unix/sysv/linux/powerpc/Dist (fe_nomask.c): Move to...
3161         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: ...here.
3162         * sysdeps/unix/sysv/linux/s390/s390-64/Dist (kernel_stat.h): Delete.
3163         * sysdeps/unix/sysv/linux/sparc/Dist (bits/utmpx.h): Delete.
3164         * sysdeps/unix/sysv/linux/x86_64/Dist (bits/utmpx.h): Delete.
3165
3166 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
3167
3168         * sysdeps/powerpc/powerpc32/sysdep.h (HIDDEN_JUMPTARGET): Redefine.
3169
3170 2003-02-20  Philip Blundell  <philb@gnu.org>
3171
3172         * sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Add
3173         missing arguments to INTERNAL_SYSCALL_ERROR_P and
3174         INTERNAL_SYSCALL_ERRNO.
3175
3176 2003-02-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3177
3178         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__real_chown): Test
3179         for __ASSUME_32BITUIDS.
3180
3181 2003-02-20  Andreas Schwab  <schwab@suse.de>
3182
3183         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Add MADV_* and
3184         POSIX_MADV_* constants.
3185
3186 2003-02-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3187
3188         * sysdeps/unix/sysv/linux/sh/pread.c: New file.
3189         * sysdeps/unix/sysv/linux/sh/pread64.c: New file.
3190         * sysdeps/unix/sysv/linux/sh/pwrite.c: New file.
3191         * sysdeps/unix/sysv/linux/sh/pwrite64.c: New file.
3192
3193 2003-02-19  Jiro Sekiba  <jir@yamato.ibm.com>
3194
3195         * iconvdata/utf-16.c (gconv_end): Fix range of low surrogate.
3196
3197 2003-02-16  Roland McGrath  <roland@redhat.com>
3198
3199         * signal/signal.h: Include <sys/ucontext.h>, not <ucontext.h>.
3200
3201 2003-02-19  Ulrich Drepper  <drepper@redhat.com>
3202
3203         * stdlib/strtod.c (INTERNAL): Up the safety margin for cutting off
3204         decimal input digits.
3205         * stdlib/tst-strtod.c (main): Add test for strtof bug.
3206
3207 2003-02-18  Ulrich Drepper  <drepper@redhat.com>
3208
3209         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
3210         invalid file descriptors and missing access permissions.
3211
3212 2003-02-17  Ulrich Drepper  <drepper@redhat.com>
3213
3214         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return 0 if no entry has
3215         been found.
3216
3217         * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
3218         TTY_NAME_MAX and not the _POSIX_* minimal value macros.
3219         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
3220         and LOGIN_NAME_MAX.
3221
3222 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
3223             Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3224
3225         * sysdeps/powerpc/elf/libc-start.c: Handle NONTLS_INIT_TP.
3226         * sysdeps/powerpc/powerpc32/__longjmp.S: Remove R2 handling.
3227         * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
3228         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
3229         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
3230
3231 2003-02-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3232
3233         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Delete.
3234         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Delete.
3235         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Delete.
3236         * sysdeps/unix/sysv/linux/powerpc/pread.c: Delete.
3237         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Delete.
3238         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Delete.
3239
3240         * sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: Move file...
3241         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: ...here.
3242         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Move file...
3243         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
3244
3245         * sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
3246         * sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
3247         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
3248         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
3249
3250 2003-02-14  Thorsten Kukuk  <kukuk@suse.de>
3251
3252         * nss/getent.c (print_hosts): Print all IP addresses of one host.
3253
3254 2003-02-15  Roland McGrath  <roland@frob.com>
3255
3256         * sysdeps/mach/hurd/tls.h: New file.
3257         * sysdeps/mach/hurd/i386/tls.h: New file.
3258
3259         * mach/errsystems.awk: Include <errno.h> in generated output.
3260
3261         * sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
3262         use target mach-before-compile instead of generated.
3263         (mach-before-compile): New target.
3264         * Makerules: Disable use of tls.make if $(generating) is set.
3265         * mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
3266         * sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
3267         mach-shortcuts.h so mach/ generation happens before hurd/.
3268
3269 2003-02-14  Ulrich Drepper  <drepper@redhat.com>
3270
3271         * sysdeps/i386/fpu/s_nextafterl.c: Decrement high word of mantissa
3272         of demorm correctly if low word is zero.
3273         Reported by Fred J. Tydeman <tydeman@tybor.com>.
3274         * math/libm-test.inc (nextafter_test): New test, but disabled due
3275         to gcc bug.
3276
3277         * sysdeps/generic/libc-start.c [HAVE_PTR_NTHREADS]: Decrement thread
3278         counter and only call __exit_thread if this is not the last thread.
3279
3280 2003-02-13  Jakub Jelinek  <jakub@redhat.com>
3281
3282         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
3283         subtracting map->l_tls_offset.
3284
3285 2003-02-12  Ulrich Drepper  <drepper@redhat.com>
3286
3287         * sysdeps/generic/bits/confname.h: Define _CS_GNU_LIBC_VERSION and
3288         _CS_GNU_LIBPTHREAD_VERSION.
3289         * posix/conststr.c: Handle these new values.
3290         * posix/getconf.c: Likewise.
3291
3292         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix
3293         masking of version index.
3294         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
3295
3296 2003-02-11  Ulrich Drepper  <drepper@redhat.com>
3297
3298         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Compute alignment
3299         correctly.  Reported by Thorsten Kukuk.
3300
3301 2003-02-10  Ulrich Drepper  <drepper@redhat.com>
3302
3303         * elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
3304         _BSD_SOURCE to compiler.
3305         * elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
3306         Patches by Alan Modra.
3307
3308 2003-02-08  Ulrich Drepper  <drepper@redhat.com>
3309
3310         * io/ftwtest.c: Get current working directory before and after the
3311         nftw call and make sure they match.
3312
3313 2003-02-08  Jim Meyering  <jim@meyering.net>
3314
3315         * io/ftw.c (ftw_startup): When using FTW_CHDIR, always remember
3316         the current directory, not just when DIR contains a slash.
3317         Reported by Manoj Srivastava.
3318
3319 2003-02-07  Jim Meyering  <jim@meyering.net>
3320
3321         * io/ftw.c: Add autoconf-recommended block of alloca-related code.
3322         Include autoconf-recommended block of dirent/NAMELEN-related
3323         definitions and includes.  Use NAMELEN throughout, rather than
3324         _D_EXACT_NAMLEN.
3325         [_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
3326         [!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
3327         (stpcpy): Declare, if necessary.
3328         (mempcpy): Define, if necessary.
3329         [!_LIBC] (__stpcpy, __mempcpy): Define.
3330         [!_LIBC] (LXSTAT, XSTAT): Define.
3331         (lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
3332         (find_object): Don't use c99-style struct initializer.
3333         Tweak wording in a couple comments.
3334
3335 2003-02-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3336
3337         * elf/tls-macros.h: Add non-PIC TLS macros and fix clobber list
3338         for SH.
3339         * sysdeps/unix/sysv/linux/sh/brk.c: Add SYSCALL_INST_PAD
3340         after the trapa instruction.
3341         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Add additional
3342         parameters.
3343         * sysdeps/unix/sysv/linux/sh/sh4/sysdep.h: New file.
3344         (NEED_SYSCALL_INST_PAD): Define.
3345         * sysdeps/unix/sysv/linux/sh/sys/user.h (start_thread): Undef to
3346         avoid to use definition for the kernel.
3347         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
3348         Save and restore the frame pointer.
3349         (SYSCALL_INST_PAD): Define.
3350         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
3351         (INTERNAL_SYSCALL): Make use of ERR parameter. Add SYSCALL_INST_PAD
3352         after trapa instruction.
3353         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
3354         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
3355
3356 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
3357
3358         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
3359         so that it can have aliases.
3360         * inet/herrno.c (h_errno): Put it into .bss not .data section.
3361
3362 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
3363
3364         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
3365         (profile_fixup): Likewise.
3366         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
3367
3368 2002-11-24  Robert Love  <rml@tech9.net>
3369
3370         * posix/sched.h: Second parameter of sched_setaffinity and
3371         sched_getaffinity is `unsigned int', not `unsigned long'.
3372         * sysdeps/generic/sched_setaffinity.c: Likewise.
3373         * sysdeps/generic/sched_getaffinity.c: Likewise.
3374
3375 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
3376
3377         * debug/catchsegv.sh: Fix typo in error messsage.
3378         Reported by John Levon <levon@movementarian.org>.
3379
3380         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
3381         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
3382         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
3383         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
3384         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
3385         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
3386         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
3387
3388         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
3389         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
3390
3391 2003-02-05  Jim Meyering  <jim@meyering.net>
3392
3393         Fix a heap-corrupting bug.
3394         * io/ftw.c: Include <limits.h>.
3395         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
3396         (process_entry): Allocate enough space to hold the resulting
3397         file name.  Don't presume that 2*dirbufsize is enough.
3398         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
3399         it is guaranteed to be defined.
3400
3401 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
3402
3403         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
3404         * iconvdata/bug-iconv3.c: New file.
3405
3406 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3407
3408         * sysdeps/unix/sysv/linux/s390/system.c: New file.
3409
3410 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
3411
3412         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
3413         check.
3414         * config.h.in (BROKEN_SPARC_WDISP22): Add.
3415
3416 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
3417
3418         * sysdeps/i386/i686/memmove.S: New file.
3419
3420 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
3421
3422         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
3423         Include kernel-features.h
3424         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
3425         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
3426         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
3427         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
3428
3429 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
3430
3431         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
3432
3433 2003-01-25  Jim Meyering  <jim@meyering.net>
3434
3435         * io/ftw.c (object_compare): Compare inode numbers before device
3436         numbers, since the former are much more likely to differ.
3437
3438 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
3439
3440         * time/tzfile.c (__tzfile_compute): Change return value type to
3441         void.  Adjust return statements.
3442         * include/time.h (__tzfile_compute): Adjust prototype.
3443
3444 2003-02-01  Jim Meyering  <jim@meyering.net>
3445
3446         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
3447         always returns 1.
3448
3449 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
3450
3451         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
3452         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
3453
3454 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
3455
3456         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
3457         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
3458         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
3459         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
3460         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
3461         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
3462         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
3463         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
3464
3465 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
3466
3467         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
3468         back to 2.4.19 for powerpc64.
3469         * sysdeps/unix/sysv/linux/kernel-features.h
3470         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
3471         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
3472
3473 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
3474
3475         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
3476         platforms with strange alignment requirements on wchar_t.
3477
3478 2003-01-31  Andreas Schwab  <schwab@suse.de>
3479
3480         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
3481         aliases, already added by make-syscalls.sh.
3482         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
3483         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
3484         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
3485         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
3486         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
3487         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
3488         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
3489         * sysdeps/unix/inet/syscalls.list: Likewise.
3490         * sysdeps/unix/syscalls.list: Likewise.
3491
3492 2003-01-31  Andreas Schwab  <schwab@suse.de>
3493
3494         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
3495         any more.
3496
3497 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
3498
3499         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
3500         not l to load tls from stack.
3501
3502 2003-01-30  Roland McGrath  <roland@redhat.com>
3503
3504         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
3505         null argument before all else.
3506         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
3507
3508 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
3509
3510         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
3511         Move to RESOLVE protected part of the header.
3512         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
3513         Likewise.
3514
3515 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
3516
3517         * stdio-common/Makefile (tests): Add bug15.
3518         (bug15-ENV): Define.
3519         * stdio-common/bug15.c: New file.
3520
3521 2002-10-07  Wolfram Gloger  <wg@malloc.de>
3522
3523         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
3524         to foreign sbrk()'s if arena is contiguous.  Bug report from
3525         Bruno Haible <bruno@clisp.org>.
3526
3527 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
3528
3529         * sysdeps/s390/libc-tls.c: Include stdlib.h.
3530
3531 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
3532
3533         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
3534         ps.__count.
3535
3536 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
3537
3538         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
3539         restoring of %r6.
3540         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
3541         64-bit load.
3542         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
3543
3544 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
3545
3546         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
3547         (allocate_static_tls): ...here.  Add __attribute_noinline__.
3548         Don't return on failure.
3549         (_dl_reloc_bad_type): Add __attribute_noinline__.
3550         * elf/do-rel.h (elf_dynamic_do_rel): Add
3551         __attribute__((always_inline)).
3552         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
3553         elf_machine_rel_relative, elf_machine_rela_relative,
3554         elf_machine_lazy_rel): Add prototypes with
3555         __attribute__((always_inline)).
3556
3557 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
3558
3559         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
3560
3561 2003-01-29  Roland McGrath  <roland@redhat.com>
3562
3563         * configure.in: Barf if configured in $srcdir.
3564
3565 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
3566
3567         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
3568         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
3569
3570 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3571
3572         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
3573         clone parameters to match the order used on ia32.
3574         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
3575
3576 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3577
3578         * elf/elf.h: Add new s390 relocs.
3579         * elf/tls-macros.h: Add s390 versions.
3580         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
3581         * sysdeps/s390/dl-tls.h: New file.
3582         * sysdeps/s390/libc-tls.c: New file.
3583         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
3584         relocs for class PLT.
3585         (elf_machine_rela): Handle TLS relocs.
3586         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
3587         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
3588         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
3589         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
3590         CLONE_CHILD_*TID flags.
3591         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
3592         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
3593         bit offset.
3594         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
3595         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
3596         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
3597         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
3598         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
3599         Likewise.
3600         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
3601         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
3602         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
3603         variants.
3604         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
3605         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
3606         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
3607         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
3608         variants.
3609
3610 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
3611
3612         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
3613         from __libc_pause.  Implement using sigsuspend.
3614         (__libc_pause): Call do_pause to do the real work.
3615
3616         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
3617         sig_or_mask parameter is is_sig != 0.
3618
3619 2003-01-21  Philip Blundell  <philb@gnu.org>
3620
3621         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
3622
3623 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
3624
3625         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
3626
3627 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
3628
3629         * stdio-common/bug14.c: Use official name for the locale.
3630
3631         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
3632         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
3633         instead of __libc_cleanup_region_end.
3634
3635         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
3636         as first parameter to __libc_cleanup_region_start.
3637
3638         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
3639         (__fe_nomask_env): Use __prctl not prctl.
3640         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
3641         prctl syscall.
3642
3643         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
3644
3645         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
3646
3647         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
3648         wrap-around in test.
3649
3650 2003-01-26  Andreas Schwab  <schwab@suse.de>
3651
3652         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
3653         compatibility symbols.  Remove INTDEF for __divdi3.
3654         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
3655         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
3656         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
3657         define.
3658         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
3659
3660 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
3661
3662         * elf/tls-macros.h: Add SPARC 32-bit definitions.
3663         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
3664         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
3665         for the first half of the header.  Include tls.h.
3666         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
3667         relocs too.
3668         (elf_machine_rela): Handle TLS relocs.
3669         * sysdeps/sparc/dl-tls.h: New file.
3670
3671         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
3672         support.
3673
3674         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
3675         * sysdeps/sparc/sparc32/memchr.S: Likewise.
3676         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
3677         * sysdeps/sparc/sparc32/strcat.S: Likewise.
3678         * sysdeps/sparc/sparc32/strchr.S: Likewise.
3679         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
3680         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
3681         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
3682         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
3683         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
3684         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
3685         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
3686         * sysdeps/sparc/sparc64/strcat.S: Likewise.
3687         * sysdeps/sparc/sparc64/strchr.S: Likewise.
3688         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
3689         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
3690         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
3691         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
3692         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
3693         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
3694
3695 2003-01-24  Andreas Schwab  <schwab@suse.de>
3696
3697         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
3698         elements, and process them backwards.
3699         * elf/Makefile ($(objpfx)tst-array4): New target.
3700         ($(objpfx)tst-array4.out): Likewise.
3701         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
3702         * elf/tst-array4.c: New file.
3703         * elf/tst-array4.exp: Likewise.
3704
3705 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
3706
3707         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
3708
3709 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
3710
3711         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
3712         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
3713         cancellation handling and handle both __NR_pread64 and __NR_pread.
3714         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
3715         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
3716         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
3717         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
3718         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
3719         case, use register names consistently.
3720
3721 2003-01-27  Wolfram Gloger  <wg@malloc.de>
3722
3723         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
3724         pointer, not of the computed chunk.  Bug report from Carlos
3725         O'Donell <carlos@baldric.uwo.ca>.
3726
3727 2003-01-25  Andreas Schwab  <schwab@suse.de>
3728
3729         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
3730         addressing to save GOT entries.
3731
3732 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
3733
3734         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
3735         inline_syscall1, inline_syscall2, inline_syscall3,
3736         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
3737         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
3738         __attribute__((unused)) to ChEcK.
3739
3740 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3741
3742         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
3743         Fix inline assembler constraints.
3744         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
3745         Likewise.
3746
3747         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
3748         -fPIC.
3749
3750 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
3751
3752         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
3753         compute the cosine, not the sine, even if x > 0.8.
3754
3755 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
3756
3757         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
3758         _nss_nis_setspent.  Work around the different prototypes.
3759         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
3760         internal_nis_endrpcent.
3761         (internal_nis_endrpcent): Change return type to void.  Change callers.
3762         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
3763         _nss_nis_setpwent.  Work around the different prototypes.
3764         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
3765         of the function to...
3766         (internal_nis_endprotoent): ... here.  New function.
3767         (internal_nis_setprotoent): Use internal_nis_endprotoent.
3768         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
3769         _nss_nis_setnetent.  Work around the different prototypes.
3770         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
3771         of the function to...
3772         (internal_nis_endnetgrent): ... here.  New function.
3773         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
3774
3775 2003-01-19  Jim Meyering  <jim@meyering.net>
3776
3777         * time/strftime.c: (widen): Merge nearly-identical definitions.
3778         (nl_get_alt_digit) [! defined my_strftime]: Define.
3779         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
3780         _nl_get_alt_digit and _nl_get_walt_digit.
3781
3782 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
3783
3784         * time/strftime.c (my_strftime): Handle very large width
3785         specifications for numeric values correctly.  Improve checks for
3786         overflow.
3787         * time/Makefile (tests): Add tst-strftime.
3788         * time/tst-strftime.c: New file.
3789
3790 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
3791
3792         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
3793         _nss_nis_sethostent.  Work around the different prototypes.
3794         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
3795         _nss_nis_setgrent.  Work around the different prototypes.
3796         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
3797         function.  Split out from _nss_nis_endetherent.
3798         (internal_nis_setetherent): Use internal_nis_endetherent instead of
3799         duplicating the code.
3800         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
3801         of _nss_nis_setaliasent.
3802         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
3803         internal_nis_endservent code, don't duplicate it.
3804
3805         * inet/rexec.c (rexec_af): Protect socket operations with
3806         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
3807         * inet/rcmd.c (rcmd_af): Likewise.
3808
3809 2003-01-17  Roland McGrath  <roland@redhat.com>
3810
3811         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
3812         Add test of value 0.80190127184058835.
3813
3814         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
3815
3816 2003-01-17  Richard Henderson  <rth@redhat.com>
3817
3818         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
3819         relocs for class PLT.
3820         * sysdeps/alpha/libc-tls.c: New file.
3821         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
3822         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
3823
3824 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
3825
3826         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
3827         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
3828         on _dl_static_lock.
3829
3830 2003-01-17  Andreas Jaeger  <aj@suse.de>
3831
3832         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
3833
3834 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
3835
3836         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
3837         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
3838         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
3839         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
3840         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
3841         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
3842         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
3843         is 2.4.21.
3844
3845 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
3846
3847         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
3848         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
3849         buffers.
3850
3851         * sysdeps/generic/sysconf.c: Unconditionally implement
3852         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
3853         * sysdeps/posix/sysconf.c: Likewise.
3854
3855 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
3856
3857         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
3858         set *err to the returned error, not to REG_ESPACE unconditionally.
3859         (build_word_op): Likewise.
3860         * posix/Makefile (tests): Add bug-regex16.
3861         * posix/bug-regex16.c: New test.
3862
3863 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
3864
3865         * elf/dl-load.c (_dl_map_object_from_fd): Use
3866         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
3867         been already initialized.
3868
3869 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
3870
3871         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
3872
3873 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
3874
3875         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
3876         allocated too.  Reported by Al Viro <aviro@redhat.com>.
3877
3878 2003-01-16  Roland McGrath  <roland@redhat.com>
3879
3880         Tweak merged .abilist file format to merge duplicate symbols in
3881         different sets into multi-version stanzas with new "| SET regexp..."
3882         header continuation lines.
3883         * scripts/merge-abilist.awk: Rewritten for new format.
3884         * scripts/extract-abilist.awk: Likewise.
3885
3886 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
3887
3888         * nscd/connections.c (nscd_run): Remove bogus return which isn't
3889         necessary with gcc 3.2+.
3890         (nscd_init): Don't use error() to print message, use dbg_log.
3891
3892         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
3893         expected size into state.
3894         (UNPACK_BYTES): Do the reverse.
3895         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
3896         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
3897         Reported by Al Viro <aviro@redhat.com>.
3898
3899         * stdio-common/Makefile (tests): Add bug14.
3900         * stdio-common/bug14.c: New file.
3901
3902         * stdio-common/vfscanf.c: When recognizing multibyte characters in
3903         string reset the byte counter after mbrtowc reported it is not a
3904         partial character.  Reported by Al Viro <aviro@redhat.com>.
3905
3906 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
3907
3908         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
3909         sysdep-cancel.h, not sysdep.h.
3910
3911 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
3912
3913         * nscd/connections.c (nscd_run): Protect accept call with
3914         TEMP_FAILURE_RETRY.
3915
3916 2003-01-15  Andreas Schwab  <schwab@suse.de>
3917
3918         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
3919         (common-generated): Add s-proto-bp.d.
3920         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
3921         of bp thunks.
3922         * sysdeps/unix/s-proto-bp.S: New file.
3923         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
3924         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
3925         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
3926
3927 2003-01-15  Roland McGrath  <roland@redhat.com>
3928
3929         * Makerules: Use -include for tls.make, suppresses warning.
3930         Move gen-as-const-headers rules up so before-compile is set in time.
3931         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
3932
3933 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
3934
3935         * nscd/nscd.c (main): Make code to close all file descriptors
3936         faster and more robust.
3937
3938         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
3939         request with one writev call.  Protect all read calls with
3940         TEMP_FAILURE_RETRY.
3941         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
3942         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
3943
3944         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
3945         Protect writev calls with TEMP_FAILURE_RETRY.
3946         * nscd/grpcache.c: Likewise.
3947         * nscd/pwdcache.c: Likewise.
3948
3949         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
3950         IPv6 address in debug output.
3951
3952 2003-01-14  Roland McGrath  <roland@redhat.com>
3953
3954         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
3955         $(objpfx) directories, and get rid of vpath directives.  The previous
3956         arrangement resulted in files being written to the source directories
3957         when run in a clean build.  Find all .abilist files in $(..)abilist/.
3958         (update-abi-%): Likewise.
3959         (generated): Don't add .symlist files, they'll be intermediates.
3960
3961         * sysdeps/generic/init-first.c: Add a comment.
3962
3963         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
3964
3965         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
3966         #includes and expressions.
3967
3968         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
3969         config list when it already contains cpu-.*-os.* without / part.
3970
3971         * Makerules (sed-remove-dotdot): New variable.
3972         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
3973         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
3974         (check-abi-config): New variable, append /tls or /notls to the tuple.
3975         (check-abi-%): Use that for -v config value.
3976         Find .abilist files in abilist/libfoo.abilist, not in subdir.
3977         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
3978
3979 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
3980
3981         * manual/install.texi: Correct description of header preparation for
3982         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
3983
3984 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
3985
3986         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
3987         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
3988         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
3989
3990 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
3991
3992         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
3993         (INTERNAL_SYSCALL): Make use of ERR parameter.
3994         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
3995         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
3996         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
3997         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
3998
3999 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
4000
4001         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
4002         == IPPROTO_TCP.
4003         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
4004
4005         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
4006         Fix entry for bit 31.
4007
4008         * iconvdata/Makefile: Add rules to build IBM866NAV.
4009         * iconvdata/ibm866nav.c: New file.
4010         * iconvdata/tst-tables.sh: Add IBM866NAV.
4011         * iconvdata/gconv-modules: Add entries for IBM866NAV.
4012
4013 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
4014
4015         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
4016         to test void* parameters.
4017
4018         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
4019         source pointer before dereferencing.
4020         (__STRING_SMALLL_GET32): Likewise.
4021         (__memset_gc): Add missing parenthesis around macro arguments.
4022         Patch by Denis Zaitsev <zzz@cd-club.ru>.
4023
4024         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
4025         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
4026
4027 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
4028
4029         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
4030         defining.
4031
4032 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4033
4034         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
4035         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
4036         here.
4037         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
4038
4039 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4040
4041         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
4042         from here...
4043         (PSEUDO): ... to here.
4044         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
4045         from here...
4046         (PSEUDO): ... to here.
4047
4048 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
4049
4050         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
4051         dirent64 instead of struct dirent for dirent.  Call readdir64
4052         instead of readdir.
4053
4054         * locale/programs/locfile.c (siblings_uncached): Use struct
4055         dirent64 instead of struct dirent for other_dentry.  Call
4056         readdir64 instead of readdir.
4057
4058         * elf/ldconfig.c (direntry): Change type to struct dirent64.
4059         (search_dir): Use readdir64 instead of readdir.
4060         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
4061
4062 2003-01-12  Roland McGrath  <roland@redhat.com>
4063
4064         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
4065         not strtol.  The former is usable in ld.so, the latter not.
4066
4067         * include/fcntl.h: Declare __libc_creat.
4068
4069         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
4070         libhurduser-link.so-no-z-defs): New variables.
4071
4072         * malloc/malloc.c: Revert last change.
4073         * malloc/malloc.h (_int_*): Move these decls to ...
4074         * include/malloc.h: ... here.  Add attribute_hidden.
4075         (_int_valloc): Declare it too.
4076
4077 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
4078
4079         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
4080         search for removed searchlist.  Reported by Roland McGrath.
4081
4082         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
4083         given as start file.
4084
4085         * io/ftw.c (ftw_startup): Use correct name in check for symlink
4086         without existing target.  Patch by Jim Meyering.
4087
4088         * Makerules (build-shlib-helper): Don't use -z defs linker option
4089         if no-z-defs is defined either.
4090
4091 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4092
4093         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
4094         file.
4095
4096 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4097
4098         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
4099         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
4100
4101 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
4102
4103         * io/ftwtest-sh: Add test case for relative path with /. at the end.
4104
4105 2003-01-12  Jim Meyering  <jim@meyering.net>
4106
4107         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
4108         use the basename if we've already chdir'd into its parent directory.
4109
4110 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
4111
4112         * io/ftw.c (process_entry): Use relative path when using chdir()
4113         to change directory after call to ftw_dir.
4114         * io/ftwtest-sh: Add test for relative path argument to nftw()
4115         with FTW_CHDIR option.
4116
4117 2002-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
4118
4119         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
4120         Define for powerpc.
4121         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
4122         into account.
4123         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
4124         (INTERNAL_SYSCALL): Make use of ERR parameter.
4125         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
4126         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
4127         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
4128         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
4129
4130 2002-01-09  Richard Henderson  <rth@redhat.com>
4131
4132         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
4133         DTPREL64 and TPREL64 without loadbase applied.
4134
4135 2002-01-09  Richard Henderson  <rth@redhat.com>
4136
4137         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
4138         for NOT_IN_libc.
4139
4140         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
4141         * sysdeps/unix/alpha/sysdep.h: ... here.
4142         (PSEUDO_LOADGP): Remove.
4143         (PSEUDO_PROLOGUE): Load GP in non-pic case.
4144         (SYSCALL_ERROR_LABEL): New.
4145         (PSEUDO): Use it in error branch.
4146         (PSEUDO_END): Add $syscall_error label.
4147
4148 2003-01-12  Andreas Jaeger  <aj@suse.de>
4149
4150         * math/bits/mathcalls.h: Round is a const function.
4151
4152 2003-01-11  Jim Meyering  <jim@meyering.net>
4153
4154         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
4155         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
4156         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
4157         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
4158         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
4159         [!_LIBC] (internal_function, dirent64, MAX): Define.
4160         (__set_errno): Define if not already defined.
4161         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
4162         the basename, not the entire file name.
4163         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
4164         the basename, not the entire file name.
4165
4166 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
4167
4168         * string/tester.c (test_strcpy): Disable last added strcpy until
4169         it is fixed.
4170
4171 2003-01-11  Philip Blundell  <philb@gnu.org>
4172
4173         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
4174
4175 2003-01-11  Andreas Schwab  <schwab@suse.de>
4176
4177         * Makerules: Add vpath for %.dynsym and %.so so that the
4178         implicit rule chaining for check-abi works.
4179
4180 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4181
4182         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
4183         Add non-PIC case.
4184
4185 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
4186
4187         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
4188         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
4189         gp is used early.
4190         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
4191         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
4192         Ensure libc.so in DT_NEEDED.
4193         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
4194         CHECK_STATIC_TLS before l_tls_offset use.
4195         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
4196         Likewise.
4197         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
4198         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
4199         Allocate TLS_PRE_TCB_SIZE bytes below result.
4200         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
4201         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
4202         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
4203         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
4204         bytes below result and add tcb_offset to memsz.
4205         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
4206         * sysdeps/ia64/dl-machine.h: Include tls.h.
4207         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
4208         too.
4209         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
4210         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
4211         * sysdeps/ia64/libc-tls.c: New file.
4212
4213 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
4214
4215         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
4216         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
4217         Fix type.  Move definition out of #if.
4218         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
4219         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
4220         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
4221         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
4222         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
4223         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
4224         support.
4225         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
4226         ftruncate64, pread64, pwrite64, truncate64 entries.
4227         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
4228         (INLINE_SYSCALL): New version that supports function call like
4229         syscalls.  Add __builtin_expect.
4230         (LOADARGS_n): Add argument size safety checks.
4231         (INTERNAL_SYSCALL): New Macro.
4232         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
4233         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
4234         redefinition of elf_fpreg_t and elf_fpregset_t.
4235
4236 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
4237
4238         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
4239         simplify test for unloading.  If loader of a DSO is unloaded do not
4240         use its scope anymore.  Fall back to own scope and adjust opencounts.
4241         Fix several comments.
4242         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
4243         the l_searchlist, not only for l_initfini.
4244
4245         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
4246         dependencies if objects cannot be removed.  Remove object with the
4247         definition as not unloadable if necessary.
4248
4249         * elf/reldep6.c: Create relocation dependency before closing the first
4250         module.
4251
4252 2003-01-10  Guido Günther  <agx@sigxcpu.org>
4253
4254         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
4255         * sysdeps/unix/mips/brk.S: Likewise.
4256         * sysdeps/unix/mips/pipe.S: Likewise.
4257
4258 2003-01-10  Andreas Schwab  <schwab@suse.de>
4259
4260         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
4261
4262         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
4263         are known to have the vfork syscall.
4264
4265         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
4266
4267         * sysdeps/unix/sysv/linux/kernel-features.h
4268         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
4269         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
4270         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
4271
4272 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
4273
4274         * elf/Makefile: Add rules to build and run reldep9 test.
4275         * elf/reldep9.c: New file.
4276         * elf/reldep9mod1.c: New file.
4277         * elf/reldep9mod2.c: New file.
4278         * elf/reldep9mod3.c: New file.
4279
4280 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
4281
4282         * elf/Makefile: Add rules to build and run nodelete2 test.
4283         * elf/nodelete2.c: New file.
4284         * elf/nodel2mod1.c: New file.
4285         * elf/nodel2mod2.c: New file.
4286         * elf/nodel2mod3.c: New file.
4287
4288 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
4289
4290         * posix/test-vfork.c (noop): Add __attribute_noinline__.
4291         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
4292         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
4293         defining it.
4294         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
4295         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
4296         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
4297         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
4298         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
4299
4300 2003-01-09  Andreas Schwab  <schwab@suse.de>
4301
4302         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
4303
4304 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
4305
4306         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
4307         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
4308         argument.
4309         (INTERNAL_SYSCALL_DECL): Define.
4310
4311 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
4312
4313         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
4314         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
4315         argument.
4316         (INTERNAL_SYSCALL_DECL): Define.
4317         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
4318         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
4319         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
4320         (INLINE_SYSCALL): Adjust.
4321         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
4322         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
4323         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
4324         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
4325         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
4326         add err argument to INTERNAL_SYSCALL* macros.
4327         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
4328         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
4329         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
4330         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
4331         Likewise.
4332         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
4333         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
4334         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
4335
4336 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
4337
4338         Unify symbols in user namespace exported by libc.so and libc.a.
4339         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
4340         argp_fmtstream_free, and argp_fmtstream_printf.
4341         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
4342         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
4343         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
4344         argp_fmtstream_point.
4345         * gmon/gmon.c: Don't define write_profiling.
4346         * libio/genops.c: Don't define _cleanup.
4347
4348         * intl/explodename.c (_nl_find_language.c): Mark as static.
4349         * intl/loadinfo.h: Remove _nl_find_language prototype.
4350
4351         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
4352         * libio/libioP.h: Remove declaration.
4353
4354         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
4355         * libio/libioP.h: Remove declaration.
4356
4357         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
4358         * sysdeps/generic/framestate.c: Define STATIC before including
4359         unwind-dw2.c.
4360
4361         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
4362
4363 2003-01-06  Philip Blundell  <philb@gnu.org>
4364
4365         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
4366         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
4367
4368         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
4369         directive.
4370         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
4371         (SYSCALL_ERROR): New.
4372         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
4373         handling code.
4374         (INTERNAL_SYSCALL): Define.
4375         (INLINE_SYSCALL): Use it.
4376         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
4377         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
4378         SYSCALL_ERROR in place of __syscall_error.
4379
4380 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
4381
4382         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
4383         __bswap_32, __bswap_64): Put x into temporary variable
4384         to avoid warnings.
4385         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
4386         (inline) functions.
4387         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
4388         __bswap_32, __bswap_64): Put x into temporary variable
4389         to avoid warnings.
4390         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
4391         (inline) functions.
4392         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
4393         Likewise.
4394
4395 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
4396
4397         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
4398         alias.
4399
4400 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
4401
4402         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
4403         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
4404
4405 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
4406
4407         * math/libm-test.inc (significand_test): New function.
4408         (main): Call it.
4409
4410 2003-01-06  Roland McGrath  <roland@redhat.com>
4411
4412         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
4413         arguments.
4414         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
4415         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
4416         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
4417
4418         * string/tester.c (test_strcpy): Add test with `void *' arguments.
4419
4420 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
4421
4422         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
4423         return significand and not the exponent.
4424         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
4425
4426         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
4427         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
4428
4429         * malloc/malloc.c: Mark all _int_* functions as static.
4430
4431 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
4432
4433         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
4434         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
4435         handling.
4436         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
4437
4438 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
4439
4440         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
4441         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
4442         support.
4443         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
4444         ftruncate64, truncate64, pread64 and pwrite64 entries.
4445         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
4446         (INLINE_SYSCALL): Add __builtin_expect.
4447         (LOADARGS_n): Add argument size safety checks.
4448         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
4449         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
4450         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
4451         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
4452         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
4453         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
4454
4455 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
4456
4457         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
4458         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
4459         (LIBC_CANCEL_HANDLED): Add.
4460
4461         * sysdeps/unix/sysv/linux/alpha/sysdep.h
4462         (inline_syscall_r0_constraint): Rename to...
4463         (inline_syscall_r0_out_constraint): ... this.  Add =.
4464         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
4465
4466 2003-01-06  Andreas Schwab  <schwab@suse.de>
4467
4468         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
4469         sure this is always inlined.
4470         (elf_machine_rela): Likewise.
4471
4472         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
4473
4474 2003-01-04  Roland McGrath  <roland@redhat.com>
4475
4476         * Makeconfig (+mkdep): Add -MP flag.
4477         Suggested by Art Haas <ahaas@airmail.net>.
4478
4479 2003-01-05  Andreas Schwab  <schwab@suse.de>
4480
4481         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
4482
4483 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4484
4485         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
4486         SYSCALL_ERROR_HANDLER.
4487         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
4488         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
4489         Add support for cancellation handling.
4490         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
4491         SYSCALL_ERROR_HANDLER.
4492         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
4493         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
4494         Add support for cancellation handling.
4495         (SYSCALL_ERROR_HANDLER): Define PIC variants.
4496
4497 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
4498
4499         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
4500         __syscall_pread64 and __syscall_pwrite64 cancelable.
4501         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
4502         (INTERNAL_SYSCALL): New macro.
4503         (LOADARGS_0, LOADARGS_1): Fix.
4504
4505 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
4506
4507         * Makerules (build-shlip-helper): Unless told otherwise, add
4508         -Wl,-z,defs to linker command line.
4509         * rt/Makefile (librt.so): Link with ld.so.
4510         * dlfcn/Makefile (libdl.so): Likewise.
4511
4512 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
4513
4514         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
4515         cancellation handling.
4516         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
4517         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
4518
4519 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
4520
4521         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
4522         order of parameters passed to kill.
4523
4524 2003-01-04  Andreas Schwab  <schwab@suse.de>
4525
4526         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
4527
4528 2002-01-03  Paul Eggert  <eggert@twinsun.com>
4529
4530         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
4531         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
4532         when compiling Bison 1.875's `bitset bset = obstack_alloc
4533         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
4534
4535 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
4536
4537         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
4538         unnecessary code.
4539         Correct reference counter in case SIGQUIT handler installation failed.
4540
4541 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
4542
4543         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
4544         Define using _Pragma(weak ...).
4545
4546 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
4547
4548         * resolv/res_libc.c: Provide declaration for __res_init_weak and
4549         reorder declarations.
4550
4551 2003-01-03  Art Haas  <ahaas@airmail.net>
4552
4553         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
4554         initializer syntax to C99.
4555         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
4556         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
4557         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
4558         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
4559         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
4560         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
4561         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
4562         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
4563         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
4564         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
4565         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
4566         * localedata/tests-mbwc/dat_mblen.c: Likewise.
4567         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
4568         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
4569         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
4570         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
4571         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
4572         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
4573         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
4574         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
4575         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
4576         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
4577         * localedata/tests-mbwc/dat_towlower.c: Likewise.
4578         * localedata/tests-mbwc/dat_towupper.c: Likewise.
4579         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
4580         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
4581         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
4582         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
4583         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
4584         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
4585         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
4586         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
4587         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
4588         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
4589         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
4590         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
4591         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
4592         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
4593         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
4594         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
4595         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
4596         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
4597         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
4598         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
4599         * localedata/tests-mbwc/dat_wctob.c: Likewise.
4600         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
4601         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
4602         * localedata/tests-mbwc/dat_wctype.c: Likewise.
4603         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
4604
4605 2003-01-03  Richard Henderson  <rth@redhat.com>
4606
4607         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
4608         (inline_syscall_r0_constraint): New.
4609         (inline_syscall[0-6]): Use them.
4610
4611 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
4612
4613         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
4614         Add rtld_hidden_proto.
4615         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
4616         (_dl_allocate_tls): Likewise.  Remove INTDEF.
4617
4618 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4619
4620         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
4621         Morita <toshiyasu.morita@hsa.hitachi.com>.
4622         * sysdeps/sh/memcpy.S: Likewise.
4623
4624 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
4625
4626         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
4627         any, but unify the test.
4628
4629 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
4630
4631         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
4632         sigaction): Protect weak_alias and libc_hidden_weak with
4633         #ifndef LIBC_SIGACTION.
4634         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
4635         sigaction): Likewise.
4636         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
4637         sigaction): Likewise.
4638         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
4639         sigaction): Likewise.
4640         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
4641         sigaction): Likewise.
4642         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
4643         sigaction): Likewise.
4644         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
4645         sigaction): Likewise.
4646         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
4647         sigaction): Likewise.  Remove SIGCANCEL handling here.
4648         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
4649         Likewise.
4650
4651 2003-01-02  Art Haas  <ahaas@airmail.net>
4652
4653         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
4654
4655 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
4656
4657         * posix/getconf.c: Update copyright year.
4658         * nss/getent.c: Likewise.
4659         * nscd/nscd_nischeck.c: Likewise.
4660         * iconv/iconvconfig.c: Likewise.
4661         * iconv/iconv_prog.c: Likewise.
4662         * elf/ldconfig.c: Likewise.
4663         * catgets/gencat.c: Likewise.
4664         * csu/version.c: Likewise.
4665         * elf/ldd.bash.in: Likewise.
4666         * elf/sprof.c (print_version): Likewise.
4667         * locale/programs/locale.c: Likewise.
4668         * locale/programs/localedef.c: Likewise.
4669         * nscd/nscd.c (print_version): Likewise.
4670         * debug/xtrace.sh: Likewise.
4671         * malloc/memusage.sh: Likewise.
4672         * malloc/mtrace.pl: Likewise.
4673
4674 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
4675
4676         * io/sys/stat.h: Include time.h with __need_timespec even if
4677         __USE_MISC is defined but __USE_XOPEN is not.
4678
4679 2003-01-01  Andreas Jaeger  <aj@suse.de>
4680
4681         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
4682         type to avoid strict aliasing problem.
4683         (_nss_dns_gethostbyname2_r): Likewise.
4684         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
4685         (_nss_dns_getnetbyname_r): Likewise.
4686         * resolv/gethnamaddr.c (_gethtent): Likewise.
4687         (gethostbyname2): Likewise.
4688
4689 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
4690
4691         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
4692         to avoid using the exported symbols.  Define aliases with the
4693         original names separately.
4694
4695         * include/time.h: Add libc_hidden_proto for __strftime_l.
4696         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
4697         * time/strftime.c: Always use libc_hidden_def if _LIBC.
4698
4699         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
4700         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
4701
4702         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
4703         tr_break.
4704
4705         * csu/Makefile (routines): Add dso_handle.
4706         * csu/dso_handle.c: New file.
4707
4708 2002-12-31  Roland McGrath  <roland@redhat.com>
4709
4710         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
4711         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
4712         (S-CPPFLAGS): Add -DASSEMBLER here instead.
4713         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
4714
4715 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
4716
4717         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
4718         is available.
4719
4720 2002-12-31  Andreas Jaeger  <aj@suse.de>
4721
4722         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
4723         with Linux kernel.
4724         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
4725         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
4726         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
4727
4728         * sysdeps/unix/sysv/linux/kernel_stat.h
4729         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
4730
4731         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
4732         __unused[1-3] since they're needed by some platforms.  Handle
4733         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
4734
4735         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
4736         for structs stat and stat64.
4737         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
4738         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
4739         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
4740         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
4741
4742         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
4743
4744         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
4745         nsec resolution changes.
4746         (xstat64_conv): Likewise.
4747         (xstat32_conv): Likewise.
4748
4749         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
4750         struct kernel_stat.
4751
4752         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
4753         structs stat and stat64.
4754
4755         * time/time.h (__timespec_defined): Define for __USE_MISC.
4756
4757 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
4758
4759         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
4760         and __libc_current_sigrtmax.
4761
4762 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
4763
4764         * include/errno.h (__errno_location): Add prototype.
4765         Use libc_hidden_proto unconditionally.
4766         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
4767         unconditionally.
4768         * include/resolv.h (__res_state): Likewise.
4769
4770         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
4771         * include/sys/socket.h (accept): Add libc_hidden_proto.
4772         * include/errno.h (__errno_location): Likewise.
4773         * include/netdb.h (__h_errno_location): Likewise.
4774         * include/resolv.h (__res_state): Likewise.
4775         * include/unistd.h (__lseek): Likewise.
4776         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
4777         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
4778         * sysdeps/generic/res-state.c (__res_state): Likewise.
4779         * sysdeps/generic/accept.c (accept): Likewise.
4780         * sysdeps/generic/lseek.c (__lseek): Likewise.
4781         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
4782         __libc_current_sigrtmax): Likewise.
4783         * sysdeps/mach/hurd/accept.c (accept): Likewise.
4784         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
4785         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
4786         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
4787         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
4788         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
4789         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
4790         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
4791         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
4792         alias to llseek.
4793         (__GI_accept): New alias to accept.
4794         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
4795         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
4796         New alias to llseek.
4797         (__GI_accept): New alias to accept.
4798         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
4799         Likewise.
4800         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
4801         Likewise.
4802         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
4803
4804         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
4805         strong_alias (name, __GI_name).
4806         * sysdeps/arm/bsd-_setjmp.S : Likewise.
4807         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
4808         * sysdeps/i386/bsd-_setjmp.S : Likewise.
4809         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
4810         * sysdeps/mips/bsd-_setjmp.S : Likewise.
4811         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
4812         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
4813         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
4814         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
4815         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
4816         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
4817         * sysdeps/sh/bsd-_setjmp.S : Likewise.
4818         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
4819         * sysdeps/unix/arm/fork.S : Likewise.
4820         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
4821         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
4822         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
4823         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
4824         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
4825         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
4826         * sysdeps/unix/i386/fork.S : Likewise.
4827         * sysdeps/unix/mips/fork.S : Likewise.
4828         * sysdeps/unix/sparc/fork.S : Likewise.
4829         * sysdeps/unix/sparc/vfork.S : Likewise.
4830         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
4831         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
4832         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
4833         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
4834         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
4835         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
4836         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
4837         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
4838         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
4839         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
4840         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
4841         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
4842         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
4843         * sysdeps/unix/fork.S : Likewise.
4844         * sysdeps/vax/bsd-_setjmp.S : Likewise.
4845         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
4846
4847         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
4848         inclusion.
4849
4850 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
4851
4852         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
4853         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
4854         * sysdeps/mach/hurd/fork.c: Likewise.
4855         * sysdeps/unix/sysv/aix/fork.c: Likewise.
4856         * sysdeps/unix/fork.S: Add __GI___fork alias.
4857         * sysdeps/unix/arm/fork.S: Likewise.
4858         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
4859         * sysdeps/unix/i386/fork.S: Likewise.
4860         * sysdeps/unix/mips/fork.S: Likewise.
4861         * sysdeps/unix/sparc/fork.S: Likewise.
4862         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
4863         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
4864         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
4865         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
4866         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
4867         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
4868         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
4869         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
4870         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
4871         * sysdeps/unix/sparc/vfork.S: Likewise.
4872         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
4873         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
4874         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
4875         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
4876         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
4877         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
4878         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
4879         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
4880
4881         * include/time.h: Add libc_hidden_proto for __nanosleep.
4882         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
4883         * sysdeps/mach/nanosleep.c: Likewise.
4884         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
4885         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
4886
4887         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
4888         _IO_list_unlock, and _IO_list_resetlock.
4889         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
4890         _IO_list_unlock, and _IO_list_resetlock.
4891
4892         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
4893         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
4894         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
4895         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
4896
4897         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
4898         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
4899         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
4900         __GI___longjmp alias.
4901
4902         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
4903         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
4904         * sysdeps/arm/bsd-_setjmp.S: Likewise.
4905         * sysdeps/generic/bsd-_setjmp.c: Likewise.
4906         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
4907         * sysdeps/i386/bsd-_setjmp.S: Likewise.
4908         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
4909         * sysdeps/mips/bsd-_setjmp.S: Likewise.
4910         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
4911         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
4912         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
4913         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
4914         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
4915         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
4916         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
4917         * sysdeps/sh/bsd-_setjmp.S: Likewise.
4918         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
4919         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
4920         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
4921         * sysdeps/vax/bsd-_setjmp.S: Likewise.
4922         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
4923
4924 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
4925
4926         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
4927
4928 2002-12-30  Roland McGrath  <roland@redhat.com>
4929
4930         * Rules (generated): Target removed.
4931         * mach/Makefile (generated): Define it here instead.
4932
4933         * math/Makefile (generated): Add m_*l and m_*f variants too.
4934
4935 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
4936
4937         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
4938         the to-be-deleted objects right away instead of later separately.
4939         The latter fails because the scope data structures of the DSO
4940         might already be gone.
4941
4942         * elf/Makefile: Add rules to build and run reldep8 test.
4943         * elf/reldep8.c: New file.
4944         * elf/reldep8mod1.c: New file.
4945         * elf/reldep8mod2.c: New file.
4946         * elf/reldep8mod3.c: New file.
4947         Contributed by Jakub Jelinek.
4948
4949 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
4950
4951         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
4952         checking of return value ENOSYS from getdents64.
4953
4954 2002-12-28  Andreas Schwab  <schwab@suse.de>
4955
4956         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
4957         ($(common-objpfx)s-%.d): Generalized from
4958         $(common-objpfx)s-proto.d rule.
4959         (common-generated): Add s-proto-cancel.d.
4960         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
4961         cancellable syscalls.
4962         * sysdeps/unix/s-proto-cancel.S: New file.
4963
4964 2002-12-29  Roland McGrath  <roland@redhat.com>
4965
4966         * resolv/res_libc.c: Move _res defn magic after res_init defn
4967         so _res macro is in effect for that code.
4968
4969         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
4970         pattern for prepending $(..) so it doesn't affect $(foo).
4971
4972         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
4973
4974 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
4975
4976         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
4977         in hwcap.
4978
4979 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
4980
4981         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
4982
4983 2002-12-28  Andreas Jaeger  <aj@suse.de>
4984
4985         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
4986         avoid warning.
4987         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
4988
4989 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
4990
4991         * inet/herrno.c (__h_errno_location): Remove.
4992         * inet/Makefile (routines): Add herrno-loc.
4993         * resolv/res_libc.c (__res_state): Remove.
4994         * resolv/Makefile (routines): Add res-state.
4995         * sysdeps/generic/herrno-loc.c: New file.
4996         * sysdeps/generic/res-state.c: New file.
4997
4998 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
4999
5000         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
5001         Only define if USE_DL_SYSINFO is defined.
5002
5003 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
5004
5005         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
5006         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
5007         Define. Patch by Richard Henderson and Jes Sorensen.
5008         (PSEUDO): Remove unnecessary ;;.
5009         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
5010         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
5011         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
5012         if not initializing thread pointer.
5013         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
5014         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
5015         make it weak also if NONTLS_INIT_TP.
5016         * sysdeps/unix/common/pause.c: Handle cancellation.
5017         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
5018         (LOADSYSCALL): Remove.
5019         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
5020         (SYSCALL_ERROR_HANDLER): Use it.
5021         (PSEUDO): Don't jump around error handler.
5022         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
5023         jump around error handler.
5024         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
5025         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
5026         to __syscall_error_handler on failure.
5027         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
5028         (LOADSYSCALL): Remove.
5029         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
5030         (SYSCALL_ERROR_HANDLER): Use it.
5031         (PSEUDO): Don't jump around error handler.
5032         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
5033         jump around error handler.
5034         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
5035         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
5036         to __syscall_error_handler on failure.
5037
5038 2002-12-27  Roland McGrath  <roland@redhat.com>
5039
5040         * scripts/gen-as-const.awk: New file.
5041         * Makefile (distribute): Add it.
5042         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
5043         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
5044         to the list.
5045         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
5046
5047 2002-12-27  Andreas Schwab  <schwab@suse.de>
5048
5049         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
5050
5051 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
5052
5053         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
5054         _environ is NULL.
5055
5056 2002-12-27  Andreas Schwab  <schwab@suse.de>
5057
5058         * Makerules ($(common-objpfx)%.make): Filter through
5059         $(sed-remove-objpfx).
5060
5061 2002-12-23  Roland McGrath  <roland@redhat.com>
5062
5063         * scripts/abilist.awk: Produce a more compact format, divided into
5064         stanzas for each version set, the set name listed only once.
5065         * scripts/extract-abilist.awk: New file.
5066         * scripts/merge-abilist.awk: New file.
5067         * Makerules (check-abi-%, update-abi-%): New pattern rules.
5068         (update-abi, check-abi): New targets.
5069         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
5070
5071 2002-12-19  Roland McGrath  <roland@redhat.com>
5072
5073         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
5074
5075         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
5076         INTERNAL_SYSCALL.
5077
5078 2002-12-21  Andreas Schwab  <schwab@suse.de>
5079
5080         * elf/check-textrel.c (handle_file): Swap p_type.
5081
5082 2002-12-21  Andreas Schwab  <schwab@suse.de>
5083
5084         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
5085         (INLINE_SYSCALL): Use it.
5086         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
5087         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
5088
5089         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
5090         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
5091
5092 2002-12-20  Art Haas  <ahaas@airmail.net>
5093
5094         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
5095         syntax to C99.
5096
5097 2002-12-21  Philip Blundell  <philb@gnu.org>
5098
5099         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
5100         top as seventh arg to __libc_start_main.
5101         Reported by paulnash@wildseed.com.
5102
5103         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
5104
5105         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
5106         compatibility cruft when new enough kernel is assumed.
5107
5108 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
5109
5110         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
5111         instead of INLINE_SYSCALL.
5112
5113 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
5114
5115         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
5116         typo.
5117
5118         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
5119         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
5120         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
5121         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
5122         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
5123         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
5124         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
5125         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
5126         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
5127         Patch by William Lee Irwin <wli@holomorphy.com>.
5128
5129 2002-12-20  Andreas Schwab  <schwab@suse.de>
5130
5131         * locale/programs/ld-measurement.c (measurement_output): Fix
5132         index calculation.
5133
5134 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
5135
5136         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
5137         Redefine _IO_flockifle and _IO_funlockfile as inlines.
5138
5139         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
5140         builds add "tls" in the search path.
5141         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
5142         (path_hwcap): Recognize "tls".
5143
5144 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
5145
5146         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
5147         __waitpid instead of waitpid.
5148
5149         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
5150         int $0x80.
5151         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
5152         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
5153         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
5154
5155         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
5156         information for system calls.
5157
5158         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
5159         for ld.so.
5160
5161         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
5162
5163 2002-12-19  Roland McGrath  <roland@redhat.com>
5164
5165         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
5166         * iconvdata/ibm922.h: Likewise.
5167         * iconvdata/ibm930.h: Likewise.
5168         * iconvdata/ibm932.h: Likewise.
5169         * iconvdata/ibm933.h: Likewise.
5170         * iconvdata/ibm935.h: Likewise.
5171         * iconvdata/ibm937.h: Likewise.
5172         * iconvdata/ibm939.h: Likewise.
5173         * iconvdata/ibm943.h: Likewise.
5174         * iconvdata/isiri-3342.h: Likewise.
5175
5176 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
5177
5178         * test-skeleton.c (main): Make sure correct value is seen as
5179         argv[0] after adjustment of argv, and argc.
5180
5181         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
5182         RTLD_CORRECT_DYNAMIC_WEAK is defined.
5183
5184 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
5185
5186         * nscd/connections.c (nscd_run): Shut up warning.
5187         * tst-ungetc.c (assert): Undefined before redefining.
5188
5189 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
5190
5191         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
5192         is used.
5193
5194 2002-12-17  Art Haas  <ahaas@airmail.net>
5195
5196         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
5197         * iconvdata/cp775.h: Likewise.
5198         * iconvdata/ibm1046.h: Likewise.
5199         * iconvdata/ibm1124.h: Likewise.
5200         * iconvdata/ibm1129.h: Likewise.
5201         * iconvdata/ibm1132.h: Likewise.
5202         * iconvdata/ibm1133.h: Likewise.
5203         * iconvdata/ibm1160.h: Likewise.
5204         * iconvdata/ibm1161.h: Likewise.
5205         * iconvdata/ibm1162.h: Likewise.
5206         * iconvdata/ibm1163.h: Likewise.
5207         * iconvdata/ibm1164.h: Likewise.
5208
5209 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
5210
5211         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
5212         __ASSUME_CLONE_THREAD_FLAGS is defined.
5213         * sysdeps/unix/sysv/linux/kernel-features.h
5214         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
5215
5216 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
5217
5218         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
5219         of asm.
5220         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
5221
5222         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
5223         _dl_sysinfo.
5224         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
5225         code.
5226         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
5227         _rtld_global.
5228         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
5229         code.
5230         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
5231         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
5232         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
5233         Add _dl_sysinfo.
5234
5235 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
5236
5237         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
5238         __libc_writev to...
5239         [libc: GLIBC_PRIVATE]: ...here.
5240         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
5241         __libc_msgsnd to...
5242         [libc: GLIBC_PRIVATE]: ...here.
5243
5244 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
5245
5246         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
5247         Use it instead of directly int $0x80.
5248         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
5249         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
5250         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
5251         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
5252         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
5253         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
5254
5255 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
5256
5257         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
5258
5259         * elf/elf.h (AT_SYSINFO): New define.
5260         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
5261         AT_SYSINFO.
5262
5263 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
5264
5265         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
5266         Make cancelable.
5267         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
5268         Likewise.
5269         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
5270         Likewise.
5271         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
5272         Likewise.
5273         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
5274         Likewise.
5275         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
5276
5277         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
5278         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
5279         available, otherwise __libc_maybe_call.
5280         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
5281         cancellation handling.
5282         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
5283
5284 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
5285
5286         * posix/regcomp.c (free_workarea_compile): Free the new member
5287         ORG_INDICES.
5288         (analyze): Initialize ORG_INDICES.
5289         (duplicate_node_closure): Search for a existing node, which is
5290         duplicated from the node ORG_DEST and satisfies the constraint
5291         CONSTRAINT.  And use it to avoid inifimite loop.
5292         (search_duplicated_node): New function.
5293         (duplicate_node): Store the index of the original node.
5294         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
5295         if needed.
5296         * posix/regex_internal.h (re_dfa_t): Add new members.
5297
5298 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
5299
5300         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
5301
5302 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
5303
5304         * sysdeps/posix/system.c (do_system): Add support for installation
5305         of cancellation handlers.
5306         * sysdeps/unix/sysv/linux/i386/system.c: New file.
5307
5308         * stdlib/Makefile (tests): Add tst-system.
5309         * stdlib/tst-system.c: New file.
5310
5311         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
5312         CENABLE]: Don't lose content of %ebx.
5313
5314 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
5315
5316         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
5317         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
5318
5319 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
5320
5321         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
5322         fails to return a function pointer don't use it.
5323
5324 2002-12-16  Art Haas  <ahaas@airmail.net>
5325
5326         * io/ftw.c: Convert GCC extension initializer syntax to C99.
5327         * iconvdata/iso-ir-165.c: Likewise.
5328         * iconvdata/jis0208.c: Likewise.
5329         * iconvdata/jis0212.c: Likewise.
5330
5331 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
5332
5333         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
5334         epoll_ctl, and epoll_wait.
5335         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
5336         epoll_create, epoll_ctl, and epoll_wait.
5337         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
5338         Davide Libenzi <davidel@xmailserver.org>.
5339         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
5340         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
5341         Add sys/epoll.h.
5342
5343 2002-12-16  Art Haas  <ahaas@airmail.net>
5344
5345         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
5346         syntax to C99
5347         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
5348         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
5349         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
5350
5351 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
5352
5353         * stdio-common/Makefile (routines): Remove lockfile.  Add
5354         flockfile, ftrylockfile, and funlockfile.
5355         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
5356         * sysdeps/generic/flockfile.c: New file.
5357         * sysdeps/generic/ftrylockfile.c: New file.
5358         * sysdeps/generic/funlockfile.c: New file.
5359
5360 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
5361
5362         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
5363         macros instead of doing the calls directly.
5364         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
5365         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
5366         targets.
5367
5368 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
5369
5370         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
5371         * sysdeps/ieee754/bits/nan.h: Likewise.
5372
5373         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
5374         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
5375
5376 2002-12-16  Roland McGrath  <roland@redhat.com>
5377
5378         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
5379         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
5380         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
5381
5382         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
5383         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
5384         s_putpmsg.
5385         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
5386         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
5387         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
5388         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
5389         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
5390         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
5391         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
5392         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
5393
5394 2002-12-13  Paul Eggert  <eggert@twinsun.com>
5395
5396         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
5397         is now u_int, not int.
5398         (struct XDR.x_handy): Now u_int, not int.
5399         * sunrpc/xdr_mem.c: Include <limits.h>.
5400         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
5401         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
5402         x_handy is now unsigned, not signed.
5403         Do not decrement x_handy if no change is made.
5404         (xdrmem_setpos): Check for int overflow.
5405         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
5406         (xdr_sizeof): Remove cast that is now unnecessary, now that
5407         x_handy is unsigned.
5408
5409 2002-12-15  Art Haas  <ahaas@airmail.net>
5410
5411         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
5412         * iconvdata/gap.awk: Likewise.
5413         * iconvdata/gen-8bit-gap-1.sh: Likewise.
5414         * iconvdata/gen-8bit-gap.sh: Likewise.
5415         * locale/C-address.c: Likewise.
5416         * locale/C-collate.c: Likewise.
5417         * locale/C-ctype.c: Likewise.
5418         * locale/C-identification.c: Likewise.
5419         * locale/C-measurement.c: Likewise.
5420         * locale/C-messages.c: Likewise.
5421         * locale/C-monetary.c: Likewise.
5422         * locale/C-name.c: Likewise.
5423         * locale/C-numeric.c: Likewise.
5424         * locale/C-paper.c: Likewise.
5425         * locale/C-telephone.c: Likewise.
5426         * locale/C-time.c: Likewise.
5427         * nscd/connections.c: Likewise.
5428         * nscd/grpcache.c: Likewise.
5429         * nscd/hstcache.c: Likewise.
5430         * nscd/pwdcache.c: Likewise.
5431         * stdio-common/vfprintf.c: Likewise.
5432         * stdlib/random.c: Likewise.
5433         * sysdeps/generic/siglist.c: Likewise.
5434         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
5435         * sysdeps/ieee754/bits/nan.h: Likewise.
5436         * sysdeps/posix/sprofil.c: Likewise.
5437         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
5438         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
5439         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
5440
5441 2002-12-15  Roland McGrath  <roland@redhat.com>
5442
5443         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
5444
5445         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
5446         <tls.h> here, no need for it.
5447         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
5448
5449         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
5450         parameter, not varargs parameter.
5451
5452         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
5453         argument so it's not an unused variable.
5454
5455         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
5456         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
5457         for users.
5458
5459         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
5460
5461 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
5462
5463         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
5464         original __libc_fcntl code.  Just renamed.
5465
5466 2002-12-15  Andreas Schwab  <schwab@suse.de>
5467
5468         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
5469
5470 2002-12-14  Olaf Hering  <olh@suse.de>
5471
5472         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
5473         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
5474
5475 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
5476
5477         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
5478
5479         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
5480         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
5481
5482         * sysdeps/unix/sysv/linux/open64.c: New file.
5483
5484         * sysdeps/generic/pselect.c: Add support for cancellation handling.
5485         * sysdeps/posix/open64.c: Likewise.
5486         * sysdeps/posix/sigpause.c: Likewise.
5487         * sysdeps/posix/sigwait.c: Likewise.
5488         * sysdeps/posix/system.c: Likewise.
5489         * sysdeps/posix/waitid.c: Likewise.
5490         * sysdeps/unix/sysv/linux/accept.S: Likewise.
5491         * sysdeps/unix/sysv/linux/connect.S: Likewise.
5492         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
5493         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
5494         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
5495         * sysdeps/unix/sysv/linux/poll.c: Likewise.
5496         * sysdeps/unix/sysv/linux/pread.c: Likewise.
5497         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
5498         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
5499         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
5500         * sysdeps/unix/sysv/linux/readv.c: Likewise.
5501         * sysdeps/unix/sysv/linux/recv.S: Likewise.
5502         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
5503         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
5504         * sysdeps/unix/sysv/linux/send.S: Likewise.
5505         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
5506         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
5507         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
5508         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
5509         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
5510         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
5511         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
5512         * sysdeps/unix/sysv/linux/wait.c: Likewise.
5513         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
5514         * sysdeps/unix/sysv/linux/writev.c: Likewise.
5515         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
5516         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
5517
5518 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
5519
5520         * sysdeps/generic/sysdep-cancel.h: New file.
5521         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
5522         cancelable syscall.
5523         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
5524         recvmsg, send, sendmsg, sendto): Make cancelable.
5525         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
5526         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
5527         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
5528         sendto, osf_select): Likewise.
5529         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
5530         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
5531         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
5532         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
5533         sendto): Likewise.
5534         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
5535         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
5536         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
5537         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
5538         sendto): Likewise.
5539         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
5540         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
5541         sendto, select): Likewise.
5542         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
5543         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
5544         Likewise.
5545         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
5546         select, fcntl): Likewise.
5547         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
5548         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
5549         read, readv, select, sigsuspend, write, writev): Likewise.
5550
5551 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
5552
5553         * dirent/bug-readdir1.c: Include unistd.h.
5554
5555 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
5556
5557         * locale/programs/locale.c: Include locarchive.h.
5558         (ARCHIVE_NAME): Define.
5559         (write_archive_locales): New function.
5560         (write_locales): Use it.  Ensure the same locale is not printed
5561         multiple times in verbose mode.
5562         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
5563         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
5564         functions.
5565         (struct nameent): New type.
5566         (nameentcmp): New function.
5567
5568 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
5569
5570         * posix/regex_internal.c (re_string_context_at): Guard wide char
5571         code with #ifdef RE_ENABLE_I18N.
5572
5573 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
5574
5575         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
5576
5577 2002-12-13  Roland McGrath  <roland@redhat.com>
5578
5579         * posix/bug-regex15.c: New file.
5580         * posix/Makefile (tests): Add it.
5581
5582         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
5583         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
5584
5585 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
5586
5587         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
5588
5589         * misc/syslog.c (log_cleanup): Don't use parameter in
5590         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
5591         pass NULL instead of a pointer to syslog_lock.
5592
5593 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
5594
5595         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
5596         linker map for all iconv modules.
5597         (distribute): Add gconv.map.
5598         * iconvdata/gconv.map: New file.
5599
5600         * elf/Makefile: Also check all iconv modules for text relocations.
5601
5602         * stdlib/Makefile: Remove code to automatically import GMP.
5603
5604         * elf/Makefile (tests): Add rules to build and run check-textrel.
5605         * elf/check-textrel.c: New file.
5606
5607         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
5608         directive.
5609
5610 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
5611
5612         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
5613         not st.st[am]time.
5614
5615 2002-04-30  Bruno Haible  <bruno@clisp.org>
5616
5617         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
5618         the encoding if it already has slashes.
5619         Reported by Perry Rapp <prapp@erols.com>.
5620
5621 2002-12-11  Roland McGrath  <roland@redhat.com>
5622
5623         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
5624         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
5625         Turn off PIC for compiling this file.
5626
5627 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
5628
5629         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
5630         definitions.  Not needed.
5631         [_LIBC]: Use definitions from libc-lock.h instead of referencing
5632         pthread routines directly.
5633         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
5634         mutex_init calls.
5635         (arena_get2): Don't look at return value of mutex_lock.
5636
5637 2002-12-11  Roland McGrath  <roland@redhat.com>
5638
5639         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
5640         elf-init.o instead of compiling a PIC version.
5641
5642 2002-12-11  Bruno Haible  <bruno@clisp.org>
5643
5644         * intl/gettext.h: Renamed to ...
5645         * intl/gmo.h: ... here.
5646         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
5647         * intl/gettextP.h: Update.
5648         * intl/loadmsgcat.c: Update.
5649
5650         * intl/gettextP.h (PARAMS): Make more portable.
5651         (attribute_hidden): Define as empty macro if not already defined.
5652         * intl/hash-string.h (PARAMS): Make more portable.
5653         * intl/loadinfo.h (PARAMS): Likewise.
5654         * intl/plural-exp.h (PARAMS): Likewise.
5655         (attribute_hidden): Move definition near the definition of
5656         internal_function.
5657
5658         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
5659         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
5660
5661 2002-07-13  Bruno Haible  <bruno@clisp.org>
5662
5663         * intl/dcigettext.c (freea): New macro.
5664         (FREE_BLOCKS): Free also the registered blocks.
5665         (DCIGETTEXT): Free the 'search' variable.
5666         Reported by Andreas Fischer <a.fischer@asentics.de>.
5667
5668 2002-04-27  Bruno Haible  <bruno@clisp.org>
5669
5670         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
5671         * intl/dcigettext.c: Likewise.
5672         * intl/dcgettext.c: Likewise.
5673         * intl/dgettext.c: Likewise.
5674         * intl/gettext.c: Likewise.
5675         * intl/dcngettext.c: Likewise.
5676         * intl/dngettext.c: Likewise.
5677         * intl/ngettext.c: Likewise.
5678         * intl/textdomain.c: Likewise.
5679         * intl/bindtextdom.c: Likewise.
5680         * intl/plural-exp.h: Likewise.
5681
5682 2002-01-02  Bruno Haible  <bruno@clisp.org>
5683
5684         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
5685
5686 2001-04-30  Bruno Haible  <bruno@clisp.org>
5687
5688         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
5689         default macro definitions.  Needed for mingw32.
5690
5691 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
5692
5693         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
5694         __builtin_constant_p to macro parameter.
5695
5696         * sysdeps/generic/sigpause.c: Define all functions as weak.
5697         * sysdeps/posix/sigpause.c: Likewise.
5698
5699         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
5700         type size_t.
5701
5702 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
5703
5704         * elf/tst-array1.c (preinit_array, init_array, fini_array):
5705         Explicitly align the array to sizeof (void *).
5706         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
5707
5708         * include/libc-symbols.h: Fix a comment typo.
5709
5710         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
5711         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
5712         Likewise.
5713         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
5714         Likewise.
5715         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
5716         (__libc_sigsuspend): Likewise.
5717         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
5718         (__libc_sigsuspend): Likewise.
5719         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
5720         (creat): New weak alias.
5721
5722 2002-12-10  Roland McGrath  <roland@redhat.com>
5723
5724         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
5725         contributes a manual chapter.
5726         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
5727         around xref to it.
5728
5729         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
5730         and move contents to ...
5731         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
5732         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
5733         it instead of duplicating its contents.
5734         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
5735
5736 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
5737
5738         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
5739         defined.
5740         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
5741         function.
5742         (EXTRA_LD_ENVVARS): Use it.
5743         (DL_OSVERSION_INIT): Define.
5744         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
5745         dl-librecon.h.
5746         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
5747
5748 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
5749
5750         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
5751
5752         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
5753         call.  It is not allowed to destroy pthread mutexes which are
5754         still in use even though it is safe for our implementations.  If
5755         somebody still uses the descriptor it is a bug.
5756
5757 2002-12-09  Richard Henderson  <rth@redhat.com>
5758
5759         * csu/abi-note.S: Use .p2align, not .align.
5760
5761 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
5762
5763         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
5764         __libc_select aliases.
5765
5766         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
5767         alias.
5768
5769         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
5770
5771         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
5772
5773         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
5774
5775         * sysdeps/unix/syscalls.list: Define __libc_select alias.
5776
5777         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
5778
5779         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
5780         __libc___xpg_sigpause aliases.
5781
5782         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
5783
5784         * misc/error.c: Remove use of USE_IN_LIBIO.
5785
5786 2002-12-08  Roland McGrath  <roland@redhat.com>
5787
5788         * elf/Makefile (tests): Uncomment tst-array[123].
5789         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
5790         * csu/elf-init.c: New file.
5791         * csu/Makefile (routines, static-only-routines): Add elf-init.
5792         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
5793         and __libc_csu_fini in place of _fini.
5794         * sysdeps/arm/elf/start.S: Likewise.
5795         * sysdeps/cris/elf/start.S: Likewise.
5796         * sysdeps/hppa/elf/start.S: Likewise.
5797         * sysdeps/i386/elf/start.S: Likewise.
5798         * sysdeps/ia64/elf/start.S: Likewise.
5799         * sysdeps/m68k/elf/start.S: Likewise.
5800         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
5801         * sysdeps/mips/elf/start.S: Likewise.
5802         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
5803         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
5804         * sysdeps/s390/s390-32/elf/start.S: Likewise.
5805         * sysdeps/s390/s390-64/elf/start.S: Likewise.
5806         * sysdeps/sh/elf/start.S: Likewise.
5807         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
5808         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
5809         * sysdeps/x86_64/elf/start.S: Likewise.
5810
5811         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
5812         struct containing function ptr and value, free it.
5813         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
5814         It's not safe to let the new thread use the SIGEV pointer.
5815
5816 2001-10-20  Paul Eggert  <eggert@twinsun.com>
5817
5818         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
5819         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
5820         Use strerror_r that is only a macro, even if it is not a function.
5821         (strerror): Check for HAVE_DECL_STRERROR before declaring.
5822         (private_strerror): Use prototypes, not old-style function definition.
5823         (print_errno_message): New function.
5824         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
5825         char*-flavored one.
5826         (error_tail, error, error_at_line): Use it.
5827
5828 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
5829
5830         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
5831
5832 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
5833
5834         * scripts/output-format.sed: Fix bug in one of the s expressions
5835         which used / for one too many things.
5836
5837         * include/unistd.h: Declare __libc_close.
5838
5839 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
5840
5841         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
5842
5843 2002-12-07  Roland McGrath  <roland@redhat.com>
5844
5845         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
5846         from 2002-12-06, but remove unnecessary memset call without removing
5847         necessary copy of initialization image.
5848
5849         * Makerules ($(common-objpfx)format.lds): New target.
5850         (common-generated): Add it.
5851         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
5852         * scripts/output-format.sed: New file.
5853         * Makefile (distribute): Add it.
5854
5855 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
5856
5857         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
5858         Reported by Art Haas <ahaas@airmail.net>.
5859
5860 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
5861
5862         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
5863
5864 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
5865
5866         * string/test-strncpy.c (do_random_tests): Improve test coverage.
5867
5868 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
5869
5870         * test-skeleton.c (timeout_handler): Allow expected signal to be
5871         SIGALRM.
5872
5873         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
5874
5875         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
5876
5877 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
5878
5879         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
5880         (SYSCALL_ERROR_HANDLER): Fix a pasto.
5881         Reported by Jeff Bailey <jbailey@nisa.net>.
5882
5883 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
5884
5885         * sysdeps/generic/libc-tls.c: Undo last patch.
5886
5887         * include/wctype.h: Define iswalnum with libc_hidden_proto.
5888
5889         * include/signal.h: Define raise with libc_hidden_proto.
5890
5891         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
5892         __execve instead of snprintf and execve.
5893
5894         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
5895         again a bit.
5896
5897 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
5898
5899         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
5900         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
5901
5902 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
5903
5904         * misc/syslog.c (log_cleanup): New function.
5905         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
5906         (closelog): Likewise.
5907
5908         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
5909         * elf/dl-iteratephdr.c: Likewise.
5910         * elf/dl-lookup.c: Likewise.
5911         * elf/dl-misc.c: Likewise.
5912         * elf/dl-open.c: Likewise.
5913         * elf/dl-support.c: Likewise.
5914         * elf/rtld.c: Likewise.
5915         * sysdeps/generic/ldsodefs.h: Likewise.
5916         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
5917         * sysdeps/mach/bits/libc-lock.h: Likewise.
5918         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
5919
5920 2002-12-06  Roland McGrath  <roland@redhat.com>
5921
5922         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
5923
5924         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
5925         (malloc_starter, memalign_starter, free_starter): Don't define these.
5926         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
5927         Don't declare them either.
5928         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
5929         __pthread_initialize, so no need to set hooks to *_starter.
5930         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
5931         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
5932         (__libc_malloc_pthread_startup): New function.
5933         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
5934
5935         * malloc/hooks.c (memalign_starter): New function.
5936         * malloc/malloc.c: Declare it.
5937         * malloc/arena.c (save_memalign_hook): New variable.
5938         (ptmalloc_init): Set __memalign_hook to memalign_starter.
5939
5940         * elf/dl-minimal.c (free): Clear the memory.
5941         (calloc): Just call malloc, knowing all memory it returns is cleared.
5942
5943         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
5944         malloc and memset; calloc can avoid the zeroing when redundant.
5945         (_dl_tls_setup): Likewise.
5946         * elf/dl-load.c (decompose_rpath): Likewise.
5947         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
5948         call, since memory from sbrk at startup is already zero.
5949
5950         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
5951         error string for failure, null for success.  Update callers.
5952         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
5953         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
5954
5955 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
5956
5957         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
5958         args to i:iipi.
5959         (readahead): Change args to i:iii.
5960         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
5961         Change args to i:iii.
5962         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
5963         args to i:iiii.
5964
5965 2002-12-05  Roland McGrath  <roland@redhat.com>
5966
5967         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
5968         call all functions rather than none.
5969         Reported by Mark P. Mitchell <mark@codesourcery.com>.
5970
5971 2002-12-04  Roland McGrath  <roland@redhat.com>
5972
5973         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
5974         on _nl_current_LC_* variables.
5975
5976 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
5977
5978         * dirent/bug-readdir1.c (main): Don't call closedir, just close
5979         the file descriptor.  This is testing what the bug report was about.
5980
5981 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
5982
5983         * po/be.po: New file.
5984
5985         * argp/Makefile (tests): Add tst-argp1.
5986
5987         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
5988         Change type of _attribute to void*.
5989         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
5990         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
5991         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
5992         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
5993         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
5994
5995 2002-12-04  Roland McGrath  <roland@redhat.com>
5996
5997         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
5998         members to the end, so a libpthread compiled with !USE_TLS will still
5999         find other members properly.
6000
6001         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
6002         operand for DEST memory.  Fix dummy input operand to use SRC.
6003         Reported by Davin McCall <davmac@ozonline.com.au>.
6004
6005         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
6006         alignment when initializing the DTV entry.
6007
6008         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
6009         when TLS has not been set up, try to set it up if we can.
6010         * elf/tst-tls4.c: Revert last change.
6011         * elf/tst-tls5.c: Likewise.
6012         * elf/tst-tls6.c: Likewise.
6013         * elf/tst-tls7.c: Likewise.
6014         * elf/tst-tls8.c: Likewise.
6015         * elf/tst-tls9.c: Likewise.
6016
6017         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
6018         * sysdeps/generic/ldsodefs.h: Declare it.
6019         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
6020         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
6021         function, broken out of __libc_setup_tls.
6022         (init_static_tls): Likewise.
6023         (__libc_setup_tls): Call them.
6024         (_dl_tls_setup): New function, uses new subroutines.
6025
6026         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
6027         Clear the pointer when returning true.
6028         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
6029         first element of the slotinfo list too.
6030
6031         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
6032         [SHARED].
6033
6034         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
6035         (_dl_determine_tlsoffset): Likewise.
6036
6037         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
6038         startup_error_tsd, made global.
6039         (dl_main): Update initialization.
6040         * elf/dl-tsd.c: Likewise.
6041         * sysdeps/generic/ldsodefs.h: Declare it.
6042
6043 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
6044
6045         * manual/texinfo.tex: Update from latest upstream version.
6046
6047 2002-12-03  Roland McGrath  <roland@redhat.com>
6048
6049         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
6050         area surplus in calculation for sbrk call.
6051
6052         * iconvdata/cp1125.c: New file.
6053         * iconvdata/Makefile (distribute): Add it.
6054         (modules): Add CP1125.
6055         (gen-8bit-gap-modules): Add cp1125.
6056         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
6057         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
6058
6059 2002-12-03  Andreas Jaeger  <aj@suse.de>
6060
6061         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
6062
6063 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
6064
6065         * sysdeps/posix/system.c (do_system): Make signal handler
6066         installation thread safe.
6067
6068 2002-12-02  Roland McGrath  <roland@redhat.com>
6069
6070         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
6071         caller from EXTRA to -.
6072         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
6073         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
6074         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
6075
6076 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
6077
6078         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
6079         bits of RM are cleared.
6080
6081 2002-12-02  Roland McGrath  <roland@redhat.com>
6082
6083         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
6084         TLS setup is required.
6085         * elf/tst-tls5.c: Likewise.
6086         * elf/tst-tls6.c: Likewise.
6087         * elf/tst-tls7.c: Likewise.
6088         * elf/tst-tls8.c: Likewise.
6089         * elf/tst-tls9.c: Likewise.
6090
6091         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
6092         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
6093         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
6094         for being null before calling free_slotinfo.
6095         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
6096         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
6097
6098 2002-11-30  Bruno Haible  <bruno@clisp.org>
6099
6100         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
6101         (struct __gconv_step): New field __btowc_fct.
6102         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
6103         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
6104         __BUILTIN_TRANS.
6105         (__gconv_btwoc_ascii): New declaration.
6106         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
6107         (__gconv_btwoc_ascii): New function.
6108         * iconv/gconv_builtin.h: Add BtowcFct argument to all
6109         BUILTIN_TRANSFORMATION invocations.
6110         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
6111         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
6112         * iconv/gconv_builtin.c (map): New field btowc_fct.
6113         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
6114         btowc_fct field.
6115         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
6116         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
6117         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
6118         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
6119         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
6120         (gconv_init): Initialize __btowc_fct field.
6121         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
6122         * iconv/loop.c: Document ONEBYTE_BODY.
6123         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
6124         Undefine ONEBYTE_BODY at the end.
6125         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
6126         * iconvdata/8bit-gap.c (NONNUL): New macro.
6127         (BODY for FROM_LOOP): Use it.
6128         (ONEBYTE_BODY): New macro.
6129         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
6130         (NONNUL): New macro.
6131         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
6132         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
6133         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
6134         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
6135         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
6136         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
6137         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
6138         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
6139         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
6140         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
6141         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
6142         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
6143         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
6144         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
6145         * iconvdata/ibm932.c: Include <stdbool.h>.
6146         (TRUE, FALSE): Remove macros.
6147         (BODY for FROM_LOOP): Remove unused variable rp1.
6148         (ONEBYTE_BODY): New macro.
6149         (BODY for TO_LOOP): Use bool.
6150         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
6151         * iconvdata/ibm943.c: Include <stdbool.h>.
6152         (TRUE, FALSE): Remove macros.
6153         (BODY for FROM_LOOP): Remove unused variable rp1.
6154         (ONEBYTE_BODY): New macro.
6155         (BODY for TO_LOOP): Use bool.
6156         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
6157         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
6158         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
6159         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
6160         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
6161         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
6162         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
6163         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
6164         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
6165         * iconvdata/gbbig5.c: Tweak comment.
6166
6167 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
6168
6169         * po/fi.po: Update from translation team.
6170
6171 2002-12-01  Roland McGrath  <roland@redhat.com>
6172
6173         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
6174         testing getdents64 return value.
6175
6176         * scripts/versions.awk: Don't pass -n flag to sort command.
6177
6178         * posix/bug-regex13.c: Include <string.h>.
6179
6180         * sysdeps/generic/libc-start.c (__libc_start_main): Do
6181         DL_SYSDEP_OSCHECK here.
6182         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
6183         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
6184
6185         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
6186         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
6187
6188         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
6189         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
6190
6191         * include/link.h: Comment typo fix.
6192
6193 2002-12-01  Roland McGrath  <roland@frob.com>
6194
6195         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
6196         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
6197         _POSIX_MEMORY_PROTECTION): Likewise.
6198         (_POSIX_POLL, _POSIX_SELECT): Removed.
6199
6200 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
6201
6202         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
6203         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
6204
6205 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
6206
6207         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
6208         USE___THREAD.
6209         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
6210         "=v" constraints.
6211
6212 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
6213
6214         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
6215         branch prediction buffers by using unpaired call/ret.
6216
6217 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
6218
6219         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
6220         first parameters constraint string.
6221         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
6222
6223 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
6224
6225         * posix/regcomp.c (parse_expression): Set the bit since the back
6226         reference is used in the regular expression.
6227         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
6228         of malloc failure.
6229         (re_node_set_init_copy): Likewise.
6230         * posix/regex_internal.h (state_array_t): New structure.
6231         (re_sub_match_last_t): Likewise.
6232         (re_sub_match_top_t): Likewise.
6233         (re_match_context_t): Add new members.
6234         (re_dfa_t): Likewise.
6235         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
6236         to check the matching is really correct, and retry if failed.
6237         Move the routin pruning the impossible nodes from here, ...
6238         (prune_impossible_nodes): To this function.
6239         (check_matching): Invoke check_subexp_matching_top, and replace
6240         redundant checking with transit_state_bkref invocation.
6241         (proceed_next_node): Replace strncmp with memcmp.  Reported by
6242         Paolo Bonzini  <bonzini@gnu.org>.
6243         (update_cur_sifted_state): Remove search_subexp invocation.
6244         (search_subexp): Remove this function.
6245         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
6246         optimization.
6247         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
6248         Remove unused invocation of match_ctx_add_entry.
6249         (transit_state): Invoke check_subexp_matching_top.
6250         (check_subexp_matching_top): New function.
6251         (transit_state_bkref): Remove unused array.
6252         Merge transit_state_bkref_loop.
6253         (transit_state_bkref_loop): Use get_subexp instead of
6254         sift_states_backward.  Use search_cur_bkref_entry for optimization.
6255         Merge this function to transit_state_bkref.
6256         (get_subexp): New function.
6257         (get_subexp_sub): Likewise.
6258         (find_subexp_node): Likewise.
6259         (check_arrival): Likewise.
6260         (check_arrival_expand_ecl): Likewise.
6261         (check_arrival_expand_ecl_sub): Likewise.
6262         (expand_bkref_cache): Likewise.
6263         (match_ctx_init): Initialize new members.
6264         (match_ctx_clean): New function.
6265         (match_ctx_free): Release new members.
6266         (match_ctx_free_subtops): New function.
6267         (match_ctx_add_entry): Fix indent.
6268         (search_cur_bkref_entry): New function.
6269         (match_ctx_add_subtop): Likewise.
6270         (match_ctx_add_sublast): Likewise.
6271
6272 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
6273
6274         * iconv/Makefile (tests): Remove tst-iconv4.c
6275         * iconv/tst-iconv4.c: Moved to...
6276         * iconvdata/tst-iconv4.c: ...here.  New file.
6277         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
6278
6279 2002-11-25  Roland McGrath  <roland@redhat.com>
6280
6281         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
6282         Grok AF_LINK if defined.
6283         From Momchil Velikov <velco@fadata.bg>.
6284
6285         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
6286         brdaddr, or dstaddr, just set those pointers to null and don't fail.
6287         Reported by Momchil Velikov <velco@fadata.bg>.
6288
6289         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
6290         is > sizeof IFR->ifa_addr, advance past the whole longer length.
6291         (__ifreq): Count up NIFS that way too.
6292         Reported by Momchil Velikov <velco@fadata.bg>.
6293
6294         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
6295
6296         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
6297         and <fpu_control.h>.
6298
6299 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
6300
6301         * elf/elf.h (EM_ST19): Fix typo.
6302
6303 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
6304
6305         * include/errno.h (__set_errno): Define as errno = val
6306         unconditionally.
6307
6308 2002-11-24  Roland McGrath  <roland@redhat.com>
6309
6310         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
6311         * sysdeps/posix/writev.c: Likewise.
6312         From Momchil Velikov <velco@fadata.bg>.
6313
6314         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
6315         calling *GL(dl_error_catch_tsd) for a thread-local location.
6316         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
6317         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
6318         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
6319
6320         * libio/iofflush.c: Add libc_hidden_def.
6321         * libio/iofwrite.c: Likewise.
6322         * sysdeps/generic/sigtimedwait.c: Likewise.
6323         * sysdeps/generic/sigwaitinfo.c: Likewise.
6324         * sysdeps/posix/sigwait.c: Likewise.
6325         Reported by Momchil Velikov <velco@fadata.bg>.
6326
6327         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
6328         to match <arpa/inet.h> declaration.
6329         * inet/inet_netof.c (inet_netof): Likewise.
6330         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
6331         Reported by Momchil Velikov <velco@fadata.bg>.
6332
6333         * configure.in: Skip AUTOCONF check under --without-cvs.
6334         * configure: Regenerated.
6335
6336         * posix/Makefile (headers): Add bits/pthreadtypes.h.
6337         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
6338         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
6339
6340 2002-11-24  Andreas Schwab  <schwab@suse.de>
6341
6342         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
6343         with six arguments.
6344
6345 2002-11-19  Jim Meyering  <jim@meyering.net>
6346
6347         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
6348         as `static'.
6349         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
6350
6351 2002-11-23  Roland McGrath  <roland@redhat.com>
6352
6353         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
6354         Just produce hex output for datum sizes.
6355
6356         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
6357         Reported by Luca Barbieri <ldb@ldb.ods.org>.
6358
6359 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
6360
6361         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
6362         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
6363         and __unused3 fields.
6364         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
6365         [__WORDSIZE == 32]: Only PPC32 requires __unused1
6366         and __unused2 fields.
6367         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
6368         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
6369         __unused3, and __unused4 fields.
6370
6371         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
6372         obtain lowest address for profiling in __monstartup call.
6373
6374 2002-11-21  Roland McGrath  <roland@redhat.com>
6375
6376         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
6377         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
6378
6379         * locale/localeinfo.h (struct locale_data): Revert last change.
6380
6381         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
6382         From Ian Wienand <ianw@gelato.unsw.edu.au>.
6383
6384         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
6385         __NR_pread64 if not defined.
6386         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
6387         From Ian Wienand <ianw@gelato.unsw.edu.au>.
6388
6389 2002-11-21  Roland McGrath  <roland@frob.com>
6390
6391         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
6392         __libc_multiple_libcs here.  Call __setfpucw.
6393
6394 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
6395
6396         * elf/Makefile (tests): Don't run test-arrayX tests for now.
6397
6398         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
6399         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
6400         CLONE_CHILD_*TID flags.
6401
6402 2002-11-20  Andreas Jaeger  <aj@suse.de>
6403
6404         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
6405         We pass struct ucontext on x86-64.
6406         (GET_PC): Adjust.
6407         (GET_FRAME): Adjust.
6408         (GET_STACK): Adjust.
6409
6410 2002-11-20  Roland McGrath  <roland@redhat.com>
6411
6412         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
6413         conditionalize [! DO_VERSIONING] #error.
6414
6415         * scripts/abilist.awk: Grok function descriptor symbols.
6416
6417         * intl/tst-gettext.c (main): Check return values from setlocale.
6418         Add necessary unsetenv's to make LANG=existing-locale check work.
6419
6420         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
6421         so aborted prior runs don't confuse things.
6422
6423         * locale/localeinfo.h (struct locale_data: union locale_data_value):
6424         Use uintptr_t instead of unsigned int for `word' member.
6425         (_NL_CURRENT_WORD): Cast to uint32_t.
6426
6427         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
6428         value.
6429
6430 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
6431
6432         * elf/tls-macros.h: Add IA-64 definitions.
6433         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
6434
6435         * iconv/Makefile (tests): Add tst-iconv4.
6436         * iconv/tst-iconv4.c: New file.
6437
6438         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
6439         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
6440         __GCONV_INCOMPLETE_INPUT.
6441         (ucs4le_internal_loop): Likewise.
6442         (ucs4le_internal_loop_unaligned): Likewise.
6443         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
6444         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
6445         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
6446
6447         * iconv/loop.c (LOOPFCT): First test for empty input then for full
6448         output buffer.
6449
6450         * inet/getnameinfo.c: Use extend_alloca where appropriate.
6451         * sysdeps/posix/getaddrinfo.c: Likewise.
6452
6453         * include/alloca.h (extend_alloca): New define.  Based on stack
6454         direction it'll try to append to the previouls allocated buffer.
6455
6456 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
6457
6458         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
6459         use the same service for AF_INET and AF_INET6.
6460
6461 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
6462
6463         * intl/localealias.c (read_alias_file): Use only about 400 bytes
6464         of stack space instead of 16k.
6465
6466 2002-11-18  Wolfram Gloger  <wg@malloc.de>
6467
6468         * malloc/arena.c
6469         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
6470         nothing if not initialized.  Bug report from Marcus Brinkmann
6471         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
6472
6473 2002-11-19  Roland McGrath  <roland@redhat.com>
6474
6475         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
6476         sched_setaffinity.
6477
6478         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
6479         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
6480         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
6481         * configure: Regenerated.
6482
6483 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
6484
6485         * include/dlfcn.h: __libc_dlopen is now a macro calling
6486         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
6487         (__libc_dlopen_mode): New prototype.
6488         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
6489         new parameter.  Store new parameter in mode field of structure passed
6490         to do_dlopen.
6491         (struct do_dlopen_args): Add new field mode.
6492         (do_dlopen): Pass mode from parameter structure to _dl_open.
6493
6494 2002-11-11  Randolf Chung  <tausq@debian.org>
6495
6496         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
6497         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
6498         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
6499
6500         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
6501
6502         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
6503         Set -mdisable-fpregs for this file.
6504
6505 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
6506
6507         * sysdeps/unix/sysv/linux/configure.in:
6508         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
6509         from gcc-3.0 era for backwards compatibility.
6510         * sysdeps/unix/sysv/linux/configure: Regenerate.
6511
6512         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
6513         Define mcontext_t as a sigcontext.
6514
6515 2002-11-18  Roland McGrath  <roland@redhat.com>
6516
6517         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
6518         Free memory in `last_result' if it was used.
6519
6520         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
6521         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
6522         Do the parsing inline instead of copying strings and calling
6523         inet_network, and properly skip all alias names not matching the form.
6524
6525         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
6526
6527 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
6528
6529         * manual/pattern.texi (Wordexp Example): Fix sample code.
6530
6531         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
6532         childs stack which will be loaded into the %esi register.
6533
6534 2002-11-14  Paul Eggert  <eggert@twinsun.com>
6535
6536         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
6537         overflow when skipping the question part and when unpacking aliases.
6538
6539 2002-11-15  Roland McGrath  <roland@redhat.com>
6540
6541         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
6542         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
6543         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
6544
6545 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
6546
6547         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
6548         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
6549
6550 2002-11-15  Roland McGrath  <roland@redhat.com>
6551
6552         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
6553         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
6554         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
6555         (+make-include-of-dep): New canned sequence.
6556
6557         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
6558         From Dmitry V. Levin <ldv@altlinux.org>.
6559
6560 2002-11-14  Roland McGrath  <roland@redhat.com>
6561
6562         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
6563         * inet/herrno.c (__libc_h_errno): Likewise.
6564         * resolv/res_libc.c (__libc_res): Likewise.
6565         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
6566         (__res_state) [! USE___THREAD]: Don't define as weak.
6567         * csu/Versions: Revert last change.
6568         * resolv/Versions: Revert last change.
6569
6570         * Makerules ($(common-objpfx)%.make): New pattern rule.
6571         * tls.make.c: New file.
6572         * Makefile (distribute): Add it.
6573
6574         * sysdeps/generic/errno.c [! USE___THREAD]
6575         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
6576         with compat_symbol so they are not link-time visible.
6577         [! USE___THREAD] (__libc_errno): New alias for errno.
6578         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
6579         Add __libc_errno here.
6580         * inet/herrno.c [USE___THREAD]: Use this conditional
6581         in place of [USE_TLS && HAVE___THREAD].
6582         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
6583         (h_errno, _h_errno): Declare these with compat_symbol so they are not
6584         link-time visible.
6585         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
6586         * resolv/res_libc.c [! USE___THREAD]
6587         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
6588         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
6589         (__libc_res): Define as alias for _res.
6590         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
6591         Add __libc_h_errno and __libc_res here.
6592
6593 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
6594
6595         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
6596         * resolv/Versions (h_errno, _res): Likewise.
6597
6598 2002-11-14  Roland McGrath  <roland@redhat.com>
6599
6600         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
6601         (%.symlist): Likewise.
6602
6603 2002-11-13  Roland McGrath  <roland@redhat.com>
6604
6605         * scripts/abilist.awk: New file.
6606         * Makefile (distribute): Add it.
6607         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
6608         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
6609         [$(subdir) = elf] (tests): Depend on libc.symlist.
6610         (generated, common-generated): Add those files.
6611
6612         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
6613         * configure: Regenerated.
6614         * config.make.in (OBJDUMP): New variable, substituted by configure.
6615
6616         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
6617         (mallochook, reallochook): Set them up.
6618         (checkhdr): Check HDR->magic2 value.
6619         (freehook): Reset HDR->magic2.
6620         (memalignhook): New static function.
6621         (old_memalign_hook): New static variable.
6622         (mcheck, reallochook): Set __memalign_hook to memalignhook.
6623
6624         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
6625         for the new TCB.
6626
6627 2002-11-13  Andreas Jaeger  <aj@suse.de>
6628
6629         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
6630         attribute.
6631         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
6632
6633 2002-11-11  Paul Eggert  <eggert@twinsun.com>
6634
6635         * manual/crypt.texi (Cryptographic Functions): Mention that
6636         the MD5 one-way algorithm is compatible with BSD's.
6637
6638 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
6639
6640         * posix/regex_internal.c (re_string_skip_chars): Also return the last
6641         wide character.
6642         (re_string_reconstruct): Calculate the context by itself when the
6643         offset points out of the valid range.
6644         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
6645         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
6646         (IS_WIDE_WORD_CHAR): New macro.
6647         (IS_WIDE_NEWLINE): New macro.
6648
6649 2002-11-12  Andreas Jaeger  <aj@suse.de>
6650
6651         * sysdeps/x86_64/strchr.S: Don't use one register for two
6652         purposes, this fixes a bug noticed by test-strchr.c.
6653
6654         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
6655         correctly.
6656
6657 2002-11-12  Roland McGrath  <roland@redhat.com>
6658
6659         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
6660         (_G_IO_NO_BACKWARD_COMPAT): Define it.
6661
6662         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
6663         instead of <pt-machine.h>.
6664         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
6665         testandset.
6666         From Ian Wienand <ianw@gelato.unsw.edu.au>.
6667
6668 2002-11-10  Roland McGrath  <roland@redhat.com>
6669
6670         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
6671         Call fputs instead of fwprintf (simpler to follow in debugger).
6672
6673         * crypt/md5-crypt.c: Doc fix.
6674
6675         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
6676         the beginning of generated target commands.
6677
6678         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
6679         dependencies for these in case implicit rule search skipped the
6680         nonexistent source directory.
6681         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
6682         files with $(object-suffixes) as targets too.
6683         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
6684         and a target for it using $(make-target-directory).
6685
6686         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
6687
6688 2002-11-10  Roland McGrath  <roland@frob.com>
6689
6690         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
6691         * sysdeps/generic/bits/pthreadtypes.h: ... here.
6692
6693         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
6694         l_start == 0 and l_len == 1 as we do l_len == 0.
6695
6696 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
6697
6698         * po/da.po: Update from translation team.
6699
6700 2002-11-10  Roland McGrath  <roland@redhat.com>
6701
6702         * config.make.in (includedir): New variable, substituted by configure.
6703         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
6704         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
6705
6706 2002-11-10  Andreas Jaeger  <aj@suse.de>
6707
6708         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
6709         REG_OLDMASK and REG_CR2 to synch with kernel header.
6710         (NGREG): Increase.
6711
6712         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
6713         aliasing problem.
6714         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
6715         * nss/getnssent_r.c (__nss_getent_r): Likewise.
6716         (__nss_setent): Likewise.
6717         (__nss_getent_r): Likewise.
6718         * inet/getnetgrent_r.c (innetgr): Likewise.
6719         (__internal_setnetgrent_reuse): Likewise.
6720         (internal_getnetgrent_r): Likewise.
6721         * inet/ether_hton.c (ether_hostton): Likewise.
6722         * inet/ether_ntoh.c (ether_ntohost): Likewise.
6723         * sunrpc/netname.c (netname2user): Likewise.
6724         * sunrpc/publickey.c (getpublickey): Likewise.
6725         (getsecretkey): Likewise.
6726
6727 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
6728
6729         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
6730         error in range calculation.
6731
6732 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
6733
6734         * string/test-strspn.c (do_test): Ensure zero termination.
6735         * string/test-strpbrk.c (do_test): Likewise.
6736         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
6737         * string/test-strncpy.c (stupid_strncpy): Likewise.
6738         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
6739
6740 2002-10-08  Roland McGrath  <roland@redhat.com>
6741
6742         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
6743         nonzero characters.
6744
6745 2002-09-22  H.J. Lu  <hjl@gnu.org>
6746
6747         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
6748         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
6749         only if __NR_mmap2 is defined.
6750
6751         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
6752         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
6753         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
6754         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
6755
6756 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
6757
6758         * posix/bug-regex13.c (tests): Add new test.
6759
6760         * string/test-strchr.c (stupid_strchr): New function.
6761         (do_random_tests): Make sure the string is zero terminated.
6762         * string/test-strpbrk.c (stupid_strpbrk): New function.
6763         (do_random_tests): Make sure the string is zero terminated.
6764         * string/test-strcmp.c (stupid_strcmp): New function.
6765         (do_random_tests): Make sure the strings are zero terminated.
6766         * string/test-strspn.c (stupid_strspn): New function.
6767         (simple_strspn): Rename rej argument to acc.
6768         (do_random_tests): Make sure the string is zero terminated.
6769         * string/test-strcspn.c (stupid_strcspn): New function.
6770         * string/test-strncpy.c (stupid_strncpy): New function.
6771         * string/test-stpncpy.c (stupid_stpncpy): New function.
6772         * string/test-strncmp.c (stupid_strncmp): New function.
6773         (do_random_tests): Make sure the strings are zero terminated.
6774         * string/test-string.h (impl_t): Change test into long.
6775         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
6776
6777 2002-11-08  Roland McGrath  <roland@redhat.com>
6778
6779         * sysdeps/ia64/elf/configure.in: Add TLS check.
6780         From Ian Wienand <ianw@cse.unsw.edu.au>.
6781         * sysdeps/ia64/elf/configure: Regenerated.
6782
6783 2002-11-07  Roland McGrath  <roland@redhat.com>
6784
6785         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
6786         place of _IO_new_do_write.
6787         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
6788         #undef before versioned_symbol use.
6789
6790 2002-11-07  Richard Henderson  <rth@redhat.com>
6791
6792         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
6793         * configure: Regenerated.
6794         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
6795         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
6796         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
6797         _dl_fini via gp-relative relocations.
6798         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
6799
6800         * elf/tls-macros.h: Add alpha versions.
6801         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
6802         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
6803         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
6804         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
6805         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
6806         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
6807         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
6808         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
6809         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
6810         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
6811         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
6812         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
6813         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
6814         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
6815         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
6816         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
6817         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
6818         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
6819
6820         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
6821         Kill argument registers across the inline syscall.
6822
6823         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
6824
6825         * linuxthreads/sysdeps/alpha/tls.h: New file.
6826         * sysdeps/alpha/dl-tls.h: New file.
6827
6828 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
6829
6830         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
6831         (gmon_initializer): New function.
6832         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
6833         __gmon_start__ here.  Call it from gmon_initializer() instead.
6834
6835 2002-03-12  H.J. Lu  <hjl@gnu.org>
6836
6837         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
6838         tst-array2, and tst-array3.
6839         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
6840         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
6841         ($(objpfx)tst-array1.out): New target.
6842         ($(objpfx)tst-array2): Likewise.
6843         ($(objpfx)tst-array2.out): Likewise.
6844         ($(objpfx)tst-array3.out): Likewise.
6845         * elf/tst-array1.c: New file.
6846         * elf/tst-array1.exp: Likewise.
6847         * elf/tst-array2.c: Likewise.
6848         * elf/tst-array2dep.c: Likewise.
6849         * elf/tst-array2.exp: Likewise.
6850         * elf/tst-array3.c: Likewise.
6851
6852 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
6853
6854         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
6855         Don't add L->l_addr to array entry values.
6856
6857 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
6858
6859         * string/test-string.h: New file.
6860         * string/test-strlen.c: New file.
6861         * string/test-string.h: New file.
6862         * string/test-strcmp.c: New file.
6863         * string/test-strchr.c: New file.
6864         * string/test-strrchr.c: New file.
6865         * string/test-strcpy.c: New file.
6866         * string/test-stpcpy.c: New file.
6867         * string/test-strncpy.c: New file.
6868         * string/test-stpncpy.c: New file.
6869         * string/test-strpbrk.c: New file.
6870         * string/test-strcspn.c: New file.
6871         * string/test-strspn.c: New file.
6872         * string/test-strcat.c: New file.
6873         * string/test-strncmp.c: New file.
6874         * string/test-memchr.c: New file.
6875         * string/test-memcmp.c: New file.
6876         * string/test-memset.c: New file.
6877         * string/test-memcpy.c: New file.
6878         * string/test-mempcpy.c: New file.
6879         * string/test-memmove.c: New file.
6880         * string/Makefile (strop-tests): New variable.
6881         (tests): Add strop-tests.
6882         (distribute): Add test-string.h.
6883
6884 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
6885
6886         * posix/regcomp.c: Use tabs instead of spaces.
6887         * posix/regexec.c: Likewise.
6888         * posix/regex_internal.h: Likewise.
6889
6890         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
6891
6892 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
6893
6894         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
6895         here.
6896         (regcomp): Don't set can_be_null here.
6897         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
6898         (re_compile_internal): Clear can_be_null, set regs_allocated.
6899
6900         * posix/regcomp.c (re_set_fastmap): New function.
6901         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
6902         COMPLEX_BRACKET check.
6903         * posix/regexec.c (re_search_internal): Optimize searching with
6904         fastmap.  Call re_string_reconstruct even if match_first is
6905         smaller than raw_mbs_idx.
6906
6907 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
6908
6909         * posix/regcomp (free_dfa_content): Use free_state.
6910         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
6911         pointers in case that realloc failed.
6912         (re_node_set_merge): Likewise.
6913         (register_state): Likewise.
6914         (create_newstate_common): Invoke memory release functions in case of
6915         error conditions.
6916         (create_ci_newstate): Likewise.
6917         (create_cd_newstate): Likewise.
6918         (free_state): New function.
6919         * posix/regexec.c (re_search_internal): Invoke memory release
6920         functions in case of error conditions.
6921         (sift_states_backward): Likewise.
6922         (merge_state_array): Likewise.
6923         (add_epsilon_src_nodes): Likewise.
6924         (sub_epsilon_src_nodes): Likewise.
6925         (search_subexp): Likewise.
6926         (sift_states_bkref): Likewise.
6927         (transit_state_sb): Likewise.
6928         (transit_state_mb): Likewise.
6929         (transit_state_bkref_loop): Likewise.
6930         (group_nodes_into_DFAstates): Likewise.
6931         (push_fail_stack): Don't edit pointers in case that realloc failed.
6932         (extend_buffers): Likewise.
6933         (match_ctx_add_entry): Likewise.
6934
6935 2002-11-06  Roland McGrath  <roland@redhat.com>
6936
6937         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
6938         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
6939
6940         * configure.in: Add checks on as and ld for binutils 2.13 or later.
6941         * configure: Regenerated.
6942
6943 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
6944
6945         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
6946         If re_compile_internal failed free fastmap buffer.
6947         (free_dfa_content): Broken out of regfree function.  Frees all dfa
6948         related data.
6949         (regfree): Add free_dfa_content.
6950         (re_compile_internal): If any of the called functions fails free
6951         all dfa related memory.
6952
6953 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
6954
6955         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
6956         warnings from the kernel headers.
6957
6958 2002-11-05  Roland McGrath  <roland@redhat.com>
6959
6960         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
6961         From Johannes Stezenbach <js@convergence.de>.
6962
6963         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
6964         #errlist-compat magic comment to give 123 as size.
6965         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
6966         (libc: GLIBC_2.2): ... here.
6967         (libc: GLIBC_2.3): Likewise.
6968
6969 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
6970
6971         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
6972         which happens at the beginning so that we can unload modules in
6973         __libc_freeres.
6974
6975 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
6976
6977         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
6978         under [__USE_MISC || _ASM].
6979
6980         * elf/elf.h: Remove the obsolete SH TLS relocations.
6981
6982 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
6983
6984         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
6985
6986 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
6987
6988         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
6989         __NR_pread64 and __NR_pwrite64.
6990         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
6991         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
6992         and __NR_pwrite64.
6993         Revert change to use INLINE_SYSCALL.
6994         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
6995         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
6996         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
6997         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
6998         INLINE_SYSCALL.
6999         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
7000
7001         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
7002         Update clobber list and add a comment about the syscall ABI.
7003
7004         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
7005         s_pwrite64, s_ftruncate, s_truncate): Re-add.
7006
7007 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
7008
7009         * iconv/gconv_dl.c (free_mem): Clear loaded.
7010         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
7011         cleanup if any.
7012
7013 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
7014
7015         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
7016
7017         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
7018         as old code without locking.  _IO_seekoff calls this function after
7019         locking the stream.
7020         * libio/ioseekpos.c: Likewise for _IO_seekpos.
7021         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
7022         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
7023         prototypes.
7024         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
7025         of _IO_seekoff_internal.
7026         (_IO_rewind): Likewise.
7027         * libio/ioftell.c: Likewise.
7028         * libio/ftello.c: Likewise.
7029         * libio/ftello64.c: Likewise.
7030         * libio/iofgetpos.c: Likewise.
7031         * libio/iofgetpos64.c: Likewise.
7032         * libio/oldiofgetpos.c: Likewise.
7033         * libio/oldiofgetpos64.c: Likewise.
7034         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
7035         _IO_seekpos_internal.
7036         * libio/iofsetpos64.c: Likewise.
7037         * libio/oldiofsetpos.c: Likewise.
7038         * libio/oldiofsetpos64.c: Likewise.
7039
7040 2002-11-04  Roland McGrath  <roland@redhat.com>
7041
7042         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
7043         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
7044         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
7045         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
7046         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
7047         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
7048         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
7049         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
7050         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
7051         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
7052         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
7053         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
7054         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
7055         Remove these, no longer used.
7056
7057 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
7058
7059         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
7060         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
7061         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
7062         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
7063         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
7064         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
7065         syscall stubs.
7066
7067         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
7068         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
7069         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
7070         and __NR_pread.
7071         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
7072         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
7073         and __NR_pwrite.
7074         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
7075
7076 2002-11-03  Roland McGrath  <roland@redhat.com>
7077
7078         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
7079         `_dl_tls_static_used'.
7080         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
7081         (__libc_setup_tls): Initialize it.  Let the initial value of
7082         _dl_tls_static_size indicate some surplus space in the computed value.
7083         * elf/dl-open.c (_dl_tls_static_size): New variable.
7084         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
7085         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
7086         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
7087         (CHECK_STATIC_TLS): Use it.
7088         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
7089         closed objects occupied a trailing contiguous chunk of static TLS area.
7090
7091 2002-10-18  Bruno Haible  <bruno@clisp.org>
7092
7093         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
7094
7095 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
7096
7097         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
7098         _wide_data->_IO_read_end if adjustment can be made in the current
7099         buffer.
7100
7101         * sysdeps/unix/sysv/linux/fexecve.c: New file.
7102
7103         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
7104         wide oriented streams are used.
7105
7106         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
7107         service hasn't been used [PR libc/4744].
7108
7109         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
7110         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
7111
7112         * manual/examples/dir.c: Don't include <stddef.h>.
7113         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
7114         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
7115
7116 2002-11-02  H.J. Lu  <hjl@gnu.org>
7117
7118         * stdio-common/reg-printf.c: Include <stddef.h>.
7119
7120 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
7121
7122         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
7123
7124         * po/ca.po: Update from translation team.
7125         * po/es.po: Likewise.
7126
7127         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
7128         is defined write out memory map.
7129         * sysdeps/unix/sysv/linux/segfault.c: New file.
7130
7131 2002-11-02  Roland McGrath  <roland@redhat.com>
7132
7133         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
7134         pointers that can alias.
7135         Reported by Daniel Jacobowitz <drow@mvista.com>.
7136
7137         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
7138
7139 2002-11-02  Roland McGrath  <roland@redhat.com>
7140
7141         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
7142         description to be clearer and to say that *RESULT is set to ENTRY.
7143
7144 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
7145
7146         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
7147         dests_ch arrays together.  Alloca or malloc dest_states,
7148         dest_states_word and dest_states_nl arrays together.  Free memory on
7149         error exit.
7150
7151 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
7152
7153         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
7154         and current_saltbits.
7155
7156 2002-11-02  Roland McGrath  <roland@redhat.com>
7157
7158         * stdio-common/reg-printf.c: Include <stdlib.h>.
7159
7160 2002-11-02  H.J. Lu  <hjl@gnu.org>
7161
7162         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
7163         caller to EXTRA instead of execve.
7164
7165 2002-11-01  Roland McGrath  <roland@redhat.com>
7166
7167         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
7168         in place of [!(USE_TLS && HAVE___THREAD)].
7169         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
7170
7171 2002-10-31  Roger Sayle  <roger@eyesopen.com>
7172
7173         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
7174         New macros.
7175         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
7176
7177         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
7178         without defining FP_ROUNDMODE.
7179
7180 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
7181
7182         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
7183         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
7184         declare_symbol.
7185         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
7186         (OLD_SIGLIST_SIZE): Define.
7187         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
7188         (OLD_SIGLIST_SIZE): Define.
7189         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
7190
7191 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
7192
7193         * sysdeps/ia64/strncpy.S: Fix recovery code.
7194
7195 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
7196
7197         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
7198         New macros.
7199         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
7200         text_set_element.
7201         * elf/dl-libc.c (free_mem): Likewise.
7202         * iconv/gconv_conf.c (free_mem): Likewise.
7203         * iconv/gconv_db.c (free_mem): Likewise.
7204         * iconv/gconv_dl.c (free_mem): Likewise.
7205         * iconv/gconv_cache.c (free_mem): Likewise.
7206         * intl/finddomain.c (free_mem): Likewise.
7207         * intl/dcigettext.c (free_mem): Likewise.
7208         * locale/setlocale.c (free_mem): Likewise.
7209         * misc/fstab.c (fstab_free): Likewise.
7210         * nss/nsswitch.c (free_mem): Likewise.
7211         * posix/regcomp.c (free_mem): Likewise.
7212         * resolv/gai_misc.c (free_res): Likewise.
7213         * stdlib/fmtmsg.c (free_mem): Likewise.
7214         * sunrpc/clnt_perr.c (free_mem): Likewise.
7215         * sysdeps/generic/setenv.c (free_mem): Likewise.
7216         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
7217         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
7218         * time/tzset.c (free_mem): Likewise.
7219         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
7220         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
7221         * malloc/set-freeres.c (__libc_freeres): Likewise.
7222
7223         * login/getutent.c: Include stdlib.h instead of stddef.h.
7224         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
7225         (__getutent): Allocate buffer the first time it is run.
7226         * login/getutid.c: Include stdlib.h instead of stddef.h.
7227         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
7228         (__getutid): Allocate buffer the first time it is run.
7229         * login/getutline.c: Include stdlib.h instead of stddef.h.
7230         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
7231         (__getutline): Allocate buffer the first time it is run.
7232         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
7233         (mtrace): Allocate malloc_trace_buffer.
7234         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
7235         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
7236         * string/strerror.c: Include libintl.h and errno.h.
7237         (buf): New variable.
7238         (strerror): Only allocate buffer if actually needed (unknown error).
7239         * time/tzfile.c (transitions): Add libc_freeres_ptr.
7240         (freeres): Remove.
7241
7242 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
7243
7244         * include/libc-symbols.h (libc_freeres_ptr): New macro.
7245         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
7246         symbol_set_define.
7247         (__libc_freeres): Free all pointers in that section.
7248         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
7249         commands when creating .lds script.
7250         (LDSEDCMD-c.so): New variable.
7251         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
7252         (rcmd_af): Use strdup to allocate ahostbuf.
7253         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
7254         (rexec_af): Use strdup to allocate ahostbuf.
7255         * stdio-common/reg-printf.c (printf_funcs): Remove.
7256         (__printf_arginfo_table): Change into printf_arginfo_function **.
7257         Add libc_freeres_ptr.
7258         (__register_printf_function): Allocate __printf_arginfo_table
7259         and __printf_function_table the first time it is called.
7260         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
7261         printf_arginfo_function **.
7262         (parse_one_spec): Add __builtin_expect.
7263         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
7264         (free_mem): Remove.
7265         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
7266         (free_mem): Remove.
7267         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
7268         (string_space, map): Add libc_freeres_ptr.
7269         (free_mem): Remove.
7270         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
7271         (free_mem): Remove.
7272         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
7273         (free_mem): Remove.
7274         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
7275         (buffer): Add libc_freeres_ptr.
7276         (free_mem): Remove for _LIBC.
7277         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
7278         (free_mem): Remove.
7279         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
7280         (free_mem): Remove.
7281         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
7282         (free_mem): Remove.
7283         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
7284         (free_mem): Remove.
7285         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
7286         (free_mem): Remove.
7287         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
7288         (free_mem): Remove.
7289         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
7290         libc_freeres_ptr.
7291         (free_mem): Remove.
7292         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
7293         libc_freeres_ptr.
7294         (free_mem): Remove.
7295
7296 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
7297
7298         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
7299         instead of duplicating the whole function in libc.
7300
7301 2002-10-31  Roland McGrath  <roland@redhat.com>
7302
7303         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
7304         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
7305
7306 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
7307
7308         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
7309         32bit-predefine when creating .new32 list and -U for each
7310         32bit-predefine when creating .new64 list.
7311         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
7312
7313 2002-10-29  Andreas Schwab  <schwab@suse.de>
7314
7315         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
7316         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
7317
7318 2002-10-25  Roland McGrath  <roland@redhat.com>
7319
7320         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
7321         * sysdeps/unix/sysv/linux/configure: Regenerated.
7322
7323         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
7324         _dl_starting_up decl.
7325
7326 2002-10-20  H.J. Lu  <hjl@gnu.org>
7327
7328         * sysdeps/unix/sysv/linux/configure.in: Don't check
7329         /lib/modules/`uname -r`/build/include for kernel headers if
7330         cross compiling.
7331         * sysdeps/unix/sysv/linux/configure: Regenerated.
7332
7333 2002-10-25  Roland McGrath  <roland@redhat.com>
7334
7335         * math/math.h (M_LOG2El): Correct the value.
7336         From Stephen L Moshier <steve@moshier.net>.
7337
7338         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
7339         conditional from __libc_multiple_libcs access.  Remove kludge for weak
7340         symbol access with old compilers we no longer support.
7341         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
7342         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
7343
7344 2002-10-25  Roland McGrath  <roland@redhat.com>
7345
7346         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
7347         implement SV_RESETHAND by translating it to SA_RESETHAND.
7348
7349 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
7350
7351         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
7352         type on ELF64 platforms.
7353
7354 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
7355
7356         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
7357
7358         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
7359
7360 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
7361
7362         * elf/dl-misc.c: Include <sysdep.h>.
7363         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
7364
7365         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
7366         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
7367         (INLINE_SYSCALL): Use that.
7368         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
7369         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
7370         (INLINE_SYSCALL): Use that.
7371         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
7372         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
7373         (INLINE_SYSCALL): Use that.
7374         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
7375         dl-sysdep.h.
7376         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
7377         (__INTERNAL_SYSCALL_STRING): Define.
7378         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
7379         dl-sysdep.h.
7380         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
7381         (__INTERNAL_SYSCALL_STRING): Define.
7382         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
7383         __SYSCALL_STRING to inline_syscall*.
7384         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
7385         New macros.
7386         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
7387         inline_syscall4, inline_syscall5, inline_syscall6): Add string
7388         argument.
7389
7390 2002-10-24  Roland McGrath  <roland@redhat.com>
7391
7392         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
7393         * sysdeps/unix/sysv/linux/init-first.c: Not here.
7394         * sysdeps/powerpc/elf/libc-start.c: Or here.
7395         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
7396         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
7397         * sysdeps/unix/sysv/aix/init-first.c: Or here.
7398         * sysdeps/generic/libc-start.c: Or here.
7399         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
7400         access with [! SHARED].
7401         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
7402
7403         * libio/bug-wfflush.c: New file.
7404         * libio/Makefile (tests): Add bug-wfflush.
7405
7406 2002-10-23  Roland McGrath  <roland@redhat.com>
7407
7408         * stdio-common/tst-fphex.c: New file.
7409         * stdio-common/Makefile (tests): Add tst-fphex.
7410         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
7411         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
7412         chars always before the value digits.
7413         Reported by James Antill <james.antill@redhat.com>.
7414
7415 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
7416
7417         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
7418         (free_mem): New function.
7419         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
7420         if not cross compiling.
7421         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
7422         (bug-regex14-ENV): Set.
7423         (bug-regex14-mem): New target.
7424         * posix/bug-regex14.c: New file.
7425
7426 2002-10-23  Roland McGrath  <roland@redhat.com>
7427
7428         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
7429         target, so we don't touch it when the link fails.
7430
7431         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
7432         Check for the result overflowing off_t and fail with EOVERFLOW.
7433         * libio/ioftell.c (_IO_ftell): Likewise.
7434         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
7435
7436         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
7437         use a temporary timeval on the stack for gettimeofday and copy it.
7438         * login/logout.c (logout): Likewise.
7439         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
7440
7441         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
7442         Use __SWORD_TYPE instead of int for member types.
7443         (struct statfs64): Likewise.
7444         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
7445         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
7446         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
7447         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
7448         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
7449
7450         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
7451         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
7452         (ST_NODIRATIME): Restore fixed value of 2048.
7453         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
7454         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
7455
7456         Rearranged <bits/types.h> definitions to reduce duplication.
7457         * sysdeps/generic/bits/types.h: Rewritten, using macros from
7458         <bits/wordsize.h> and new header <bits/typesizes.h>.
7459         * posix/Makefile (headers): Add bits/typesizes.h here.
7460         * sysdeps/generic/bits/typesizes.h: New file.
7461         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
7462         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
7463         * sysdeps/mach/hurd/bits/typesizes.h: New file.
7464         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
7465         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
7466         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
7467         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
7468         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
7469         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
7470         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
7471         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
7472         <bits/pthreadtypes.h> here, not in <bits/types.h>.
7473         * signal/signal.h: Likewise.
7474
7475         * streams/stropts.h: Include <bits/xtitypes.h>.
7476         * streams/Makefile (headers): Add bits/xtitypes.h here.
7477         * sysdeps/generic/bits/xtitypes.h: New file.
7478         * sysdeps/s390/bits/xtitypes.h: New file.
7479         * sysdeps/ia64/bits/xtitypes.h: New file.
7480         * sysdeps/x86_64/bits/xtitypes.h: New file.
7481
7482         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
7483         * sysdeps/generic/bits/ipctypes.h: New file.
7484         * sysdeps/mips/bits/ipctypes.h: New file.
7485         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
7486         * sysdeps/gnu/bits/msq.h: Likewise.
7487         * sysvipc/sys/ipc.h: Likewise.
7488
7489 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
7490
7491         * elf/dl-load.c (struct filebuf): For buf element to have the
7492         alignment of ElfXX_Ehdr since this is what will be stored in it.
7493
7494 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
7495
7496         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
7497         into pointer to locrec_offset.
7498         (add_locale_to_archive): Adjust callers.  Free normalized_name right
7499         before returning, not immediately after add_locale, pass it to
7500         add_alias if not NULL instead of name.  Rename second normalized_name
7501         occurence to nnormalized_codeset_name.
7502
7503         * locale/programs/locarchive.c (enlarge_archive): Make sure
7504         string_size is always a multiple of 4.
7505         Reported by Andreas Schwab <schwab@suse.de>.
7506
7507 2002-10-21  Andreas Schwab  <schwab@suse.de>
7508
7509         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
7510         caller to EXTRA instead of execve, since the latter has a
7511         higher-priority implementation in linuxthreads.
7512
7513 2002-10-21  Roland McGrath  <roland@redhat.com>
7514
7515         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
7516         slotinfo list's len member to the proper size, not just 1.
7517         Initialize static_map.l_tls_initimage.
7518
7519         * elf/dl-open.c (dl_open_worker): Fix loop searching for
7520         dtv_slotinfo_list element containing new modules' l_tls_modid.
7521
7522         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
7523         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
7524         * elf/Makefile (tests): Add tst-tls9.
7525         (tests-static): Add tst-tls9-static.
7526         (tst-tls9-static-ENV): New variable.
7527         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
7528
7529         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
7530         modids used by partially loaded modules being closed can't be known.
7531
7532 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
7533
7534         * posix/Makefile: Add a test case for the bug reported by Aharon
7535         Robbins <arnold@skeeve.com>.
7536         * posix/bug-regex13.c: New file.
7537         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
7538
7539 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
7540
7541         * csu/gmon-start.c: Pretty printing.
7542
7543 2002-10-19  Art Haas  <ahaas@neosoft.com>
7544
7545         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
7546         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
7547         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
7548         * configure: Regenerated.
7549
7550 2002-10-19  Roland McGrath  <roland@redhat.com>
7551
7552         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
7553         and then set $subdirs directly, because the new Autoconf breaks
7554         compatibility in every way imaginable and insists on whining
7555         about usage that worked since the dawn of time.
7556         * configure: Regenerated.
7557
7558         * configure: Regenerated (using Autoconf 2.54).
7559         * sysdeps/alpha/elf/configure: Likewise.
7560         * sysdeps/generic/configure: Likewise.
7561         * sysdeps/i386/elf/configure: Likewise.
7562         * sysdeps/ia64/elf/configure: Likewise.
7563         * sysdeps/mach/hurd/configure: Likewise.
7564         * sysdeps/mach/configure: Likewise.
7565         * sysdeps/unix/configure: Likewise.
7566         * sysdeps/unix/common/configure: Likewise.
7567         * sysdeps/unix/sysv/aix/configure: Likewise.
7568         * sysdeps/unix/sysv/linux/configure: Likewise.
7569         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
7570         * sysdeps/x86_64/elf/configure: Likewise.
7571
7572         * config.make.in: Nix completely-soft nonsense.
7573         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
7574         of machine directories instead of fpu subdirectory.
7575         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
7576         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
7577         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
7578         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
7579         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
7580         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
7581         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
7582         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
7583         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
7584         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
7585         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
7586         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
7587         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
7588         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
7589         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
7590         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
7591         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
7592         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
7593         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
7594         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
7595         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
7596         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
7597         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
7598         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
7599         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
7600         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
7601         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
7602         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
7603         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
7604         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
7605         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
7606         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
7607         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
7608         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
7609         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
7610         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
7611         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
7612         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
7613         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
7614         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
7615
7616 2002-10-19  Bruno Haible  <bruno@clisp.org>
7617
7618         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
7619
7620 2002-10-18  Roland McGrath  <roland@redhat.com>
7621
7622         * io/Makefile (routines): Add lchmod.
7623         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
7624         * sysdeps/generic/lchmod.c: New file.
7625         * sysdeps/mach/hurd/lchmod.c: New file.
7626         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
7627
7628 2002-10-18  Art Haas  <ahaas@neosoft.com>
7629
7630         * configure.in: Remove remaining AC_FD_CC macros, and replace
7631         AC_FD_MSG with AS_MESSAGE_FD.
7632
7633 2002-10-18  Roland McGrath  <roland@redhat.com>
7634
7635         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
7636         typos: VALUE -> FINALADDR.
7637
7638         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
7639         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
7640         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
7641         (inline_syscall6): Move these macros ...
7642         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
7643
7644         * configure.in (libc_link_dests, libc_link_sources): Remove these
7645         variables and the AC_LINK_FILES call.
7646
7647         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
7648         change to put new symbols here instead of in GLIBC_2.2.
7649         * sysdeps/powerpc/Subdirs: Move this file ...
7650         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
7651
7652 2002-10-07  Roland McGrath  <roland@redhat.com>
7653
7654         * sysdeps/generic/bits/time.h: Replaced with contents of the
7655         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
7656         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
7657         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
7658         macros is ok even for architectures that don't now implement them.
7659         * sysdeps/mach/hurd/bits/time.h: File removed.
7660         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
7661         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
7662         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
7663         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
7664         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
7665
7666 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
7667
7668         * configure.in: Replace obsolete AC_OUTPUT syntax with
7669         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
7670
7671         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
7672         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
7673
7674         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
7675         * sysdeps/alpha/elf/configure.in: Likewise.
7676         * sysdeps/i386/elf/configure.in: Likewise.
7677         * sysdeps/mach/hurd/configure.in: Likewise.
7678         * sysdeps/x86_64/elf/configure.in: Likewise.
7679
7680         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
7681
7682         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
7683         * sysdeps/generic/configure.in: Likewise.
7684         * sysdeps/i386/elf/configure.in: Likewise.
7685         * sysdeps/ia64/elf/configure.in: Likewise.
7686         * sysdeps/mach/configure.in: Likewise.
7687         * sysdeps/mach/hurd/configure.in: Likewise.
7688         * sysdeps/unix/configure.in: Likewise.
7689         * sysdeps/unix/common/configure.in: Likewise.
7690         * sysdeps/unix/sysv/aix/configure.in: Likewise.
7691         * sysdeps/unix/sysv/linux/configure.in: Likewise.
7692         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
7693         * sysdeps/x86_64/elf/configure.in: Likewise.
7694
7695         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
7696         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
7697         that it's obvious when extra autoconf machinery is being dragged in.
7698
7699 2002-10-18  Roland McGrath  <roland@redhat.com>
7700
7701         * configure.in: Remove bogus echo included in
7702         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
7703         * configure: Regenerated.
7704
7705 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
7706
7707         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
7708         (statfs_filesize_max): New function.
7709         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
7710         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
7711         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
7712         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
7713         statfs_filesize_max.
7714         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
7715         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
7716         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
7717
7718 2002-10-17  Roland McGrath  <roland@redhat.com>
7719
7720         * configure.in (MIG): Just AC_SUBST it here.
7721         * configure: Regenerated.
7722         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
7723         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
7724         * sysdeps/mach/configure: Regenerated.
7725
7726         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
7727         and AC_PROVIDE([_AS_CR_PREPARE]).
7728
7729         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
7730         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
7731
7732         * elf/dl-support.c: Move _dl_tls_* variables to ...
7733         * sysdeps/generic/libc-tls.c: ... here.
7734
7735         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
7736         allow IDX to be one past the current last slotinfo entry.
7737         (_dl_close): Pass IMAP->l_init_called for that parameter.
7738
7739 2002-10-07  Andreas Schwab  <schwab@suse.de>
7740
7741         * aclocal.m4: Fix for autoconf 2.53.
7742         * configure.in: Likewise.  Require autoconf 2.53.
7743
7744 2002-10-08  Richard Henderson  <rth@redhat.com>
7745
7746         * soft-fp/op-4.h: Handle carry correctly in
7747         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
7748         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
7749         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
7750
7751 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
7752
7753         * configure.in: Compute completely-soft.
7754         * config.make.in: Make completely-soft available to sub-makes.
7755         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
7756         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
7757         fe_nomask to libm-support.
7758         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
7759         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
7760         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
7761         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
7762         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
7763         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
7764         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
7765         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
7766         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
7767         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
7768         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
7769         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
7770         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
7771         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
7772         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
7773         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
7774         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
7775         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
7776         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
7777         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
7778         __sim_round_mode.
7779         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
7780         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
7781         FP_HANDLE_EXCEPTIONS.
7782         Define FP_ROUNDMODE.
7783         Redefine FP_* macros to correspond to the FE_* bit positions.
7784         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
7785         Define externs for __sim_exceptions, __sim_disabled_exceptions,
7786         __sim_round_mode, __simulate_exceptions.
7787         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
7788         * sysdeps/powerpc/bits/fenv.h: ...to here.
7789
7790 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
7791
7792         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
7793         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
7794         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
7795         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
7796         __builtin_expect.
7797
7798 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
7799
7800         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
7801         __libc_res_nsend): New prototypes.
7802         * resolv/res_query.c (QUERYSIZE): Define.
7803         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
7804         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
7805         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
7806         res_nsend, pass answerp.
7807         (res_nquery): Changed into wrapper around __libc_res_nquery.
7808         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
7809         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
7810         instead of the non-__libc_ variants, pass them answerp.
7811         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
7812         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
7813         Added answerp argument.  Call __libc_res_nquery instead of
7814         res_nquery, pass answerp.
7815         (res_nquerydomain): Changed into wrapper around
7816         __libc_res_nquerydomain.
7817         * resolv/res_send.c: Include sys/ioctl.h.
7818         (MAXPACKET): Define.
7819         (send_vc): Change arguments.  Reallocate answer buffer if it is
7820         too small.
7821         (send_dg): Likewise.
7822         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
7823         Reallocate answer buffer if it is too small and hooks are in use.
7824         Adjust calls to send_vc and send_dg.
7825         (res_nsend): Changed into wrapper around __libc_res_nsend.
7826         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
7827         just 1K answer buffer on the stack, use __libc_res_nsearch instead
7828         of res_nsearch.
7829         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
7830         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
7831         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
7832         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
7833         (gethostbyaddr): Similarly with __libc_res_nquery.
7834         * resolv/Versions (libresolv): Export __libc_res_nquery and
7835         __libc_res_nsearch at GLIBC_PRIVATE.
7836
7837 2002-10-17  Roland McGrath  <roland@redhat.com>
7838
7839         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
7840         * configure: Regenerated.
7841
7842         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
7843         before performing the reloc, not after.
7844         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
7845
7846 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
7847
7848         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
7849         * locale/programs/linereader.c (lr_open): Likewise.
7850         * locale/programs/charmap-dir.c (charmap_open): Likewise.
7851         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
7852
7853 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
7854
7855         * posix/bug-regex11.c: Add a test case for the bug reported by
7856         Paolo Bonzini <bonzini@gnu.org>.
7857         * posix/regexec.c (sift_states_bkref): Use correct destination of
7858         the back reference.
7859
7860 2002-10-17  Roland McGrath  <roland@redhat.com>
7861
7862         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
7863         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
7864         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
7865         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
7866         Call it after performing TPOFF relocs.
7867         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
7868         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
7869         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
7870
7871         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
7872         when closing a partially-initialized object.
7873
7874         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
7875         instead of _dl_fatal_printf when we see PT_TLS.
7876
7877         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
7878         instead of $(libof-$<).
7879
7880 2002-10-16  Roland McGrath  <roland@redhat.com>
7881
7882         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
7883         instead of += to append, to be sure $(lib) gets expanded at defn time.
7884         (libof-$(cpp-src)): New variable, define this instead.
7885         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
7886         (lib): Don't use override.
7887         (CPPFLAGS-$(lib)): New variable, put -D's here.
7888         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
7889         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
7890         LIB found by $(libof-*) for basename, target, or source.
7891         * Makerules (CPPFLAGS-nonlib): New variable.
7892         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
7893         * locale/Makefile (lib): Likewise.
7894         * sunrpc/Makefile (lib): Likewise.
7895
7896         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
7897         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
7898         * sysdeps/unix/sysv/linux/pathconf.h: New file.
7899         (statfs_link_max): New function, guts from fpathconf.c.
7900         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
7901         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
7902         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
7903         to use the linux/pathconf.c code by #include rather than duplication.
7904         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
7905
7906 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
7907
7908         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
7909         Use __libc_errno only for libc itself.
7910
7911 2002-10-16  Andreas Jaeger  <aj@suse.de>
7912
7913         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
7914
7915 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
7916
7917         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
7918         Use __libc_errno only for libc itself.
7919
7920 2002-10-15  Roland McGrath  <roland@redhat.com>
7921             Jakub Jelinek  <jakub@redhat.com>
7922
7923         * sysdeps/unix/sysv/linux/Makefile
7924         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
7925         sparc/Makefile to produce a bi-arch file as needed.
7926         That's now parameterized by the variable $(64bit-predefine).
7927         Use LC_ALL=C for `comm' commands in that rule.
7928         No longer conditional on [$(no_syscall_list_h)].
7929         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
7930         (64bit-predefine): New variable.
7931         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
7932         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
7933         * sysdeps/unix/sysv/linux/powerpc/Makefile
7934         (64bit-predefine): New variable.
7935
7936 2002-10-15  Roland McGrath  <roland@redhat.com>
7937
7938         * sysdeps/unix/sysv/linux/Makefile
7939         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
7940
7941         * login/utmp-private.h: Declare __libc_utmp_lock.
7942         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
7943         and call __libc_utmp_jump_table functions directly, instead of using
7944         __setutent et al.
7945
7946         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
7947         * sysdeps/unix/sysv/linux/configure: Regenerated.
7948
7949         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
7950         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
7951         Use int32_t for ll_time.
7952         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
7953         Use int32_t instead of long int for ut_session.
7954         Use an anonymous struct with 32-bit fields for ut_tv.
7955         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
7956         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
7957         here as in utmp.h for `struct utmp'.
7958         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
7959         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
7960         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
7961         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
7962         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
7963         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
7964
7965         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
7966         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
7967         All the following files were identical or equivalent to it.
7968         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
7969         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
7970         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
7971         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
7972         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
7973         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
7974         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
7975         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
7976         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
7977         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
7978
7979         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
7980         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
7981         Other than the previously incorrect sign of msg_iovlen, this is a
7982         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
7983         match their layouts as well, so the following are now identical to it.
7984         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
7985         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
7986         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
7987         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
7988         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
7989
7990 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
7991
7992         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
7993         Define for 2.4+ kernels.
7994
7995         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
7996         are known to have the vfork syscall.  Don't confuse the CPUs
7997         branch prediction unit by jumping to the return address.
7998
7999         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
8000         support for reiserfs and xfs.
8001
8002         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
8003         XFS link count.
8004         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
8005         and XFS_LINK_MAX.
8006         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
8007
8008 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
8009
8010         * include/libc-symbols.h (attribute_tls_model_ie): Define.
8011         * include/errno.h (errno): Define to __libc_errno in libc.so.
8012         Add attribute_tls_model_ie.
8013         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
8014         Add attribute_tls_model_ie.
8015         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
8016         attribute_tls_model_ie.
8017         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
8018         (h_errno): Define.
8019         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
8020         (_res): Define.
8021         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
8022         attribute_tls_model_ie.
8023         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
8024         __thread.
8025         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
8026         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
8027         __libc_errno in USE___THREAD case.
8028         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
8029         Likewise.
8030         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
8031         __attribute__((tls_model (""))).
8032         * configure: Rebuilt.
8033         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
8034
8035 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
8036
8037         * timezone/asia: Update from tzdata2002d.
8038         * timezone/australasia: Likewise.
8039         * timezone/iso3166.tab: Likewise.
8040         * timezone/southamerica: Likewise.
8041         * timezone/zone-tab: Likewise.
8042
8043 2002-10-15  Roland McGrath  <roland@redhat.com>
8044
8045         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
8046         Adjust TCB pointer before calling free, so we get the whole block.
8047
8048 2002-10-14  Roland McGrath  <roland@redhat.com>
8049
8050         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
8051         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
8052         extern using attribute_hidden instead of static, avoids warning.
8053
8054 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
8055
8056         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
8057         * sysdeps/unix/sysv/linux/configure: Rebuilt.
8058
8059 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
8060
8061         * po/sv.po: Update from translation team.
8062
8063 2002-10-12  H.J. Lu  <hjl@gnu.org>
8064
8065         * sunrpc/thrsvc.c (PROCQUIT): New.
8066         (struct rpc_arg): New.
8067         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
8068         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
8069         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
8070         (main): Modified for struct rpc_arg *.
8071
8072 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
8073
8074         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
8075
8076 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
8077
8078         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
8079         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
8080         in ld.so even if __thread is supported.
8081
8082 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
8083
8084         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
8085         Add hack to prevent the compiler from clobbering the signal context.
8086         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
8087         Likewise.
8088         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
8089         Likewise.
8090
8091 2002-10-14  Andreas Jaeger  <aj@suse.de>
8092
8093         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
8094         Guido Guenther <agx@sigxcpu.org>.
8095
8096 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
8097
8098         * po/sk.po: Update from translation team.
8099
8100 2002-09-26  Roland McGrath  <roland@redhat.com>
8101
8102         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
8103         dynamic string tag.
8104         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
8105         DL_DST_LIB based on $(slibdir).
8106
8107 2002-10-13  Roland McGrath  <roland@frob.com>
8108
8109         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
8110
8111         * sysdeps/mach/hurd/getresuid.c: New file.
8112         * sysdeps/mach/hurd/getresgid.c: New file.
8113         * sysdeps/mach/hurd/setresuid.c: New file.
8114         * sysdeps/mach/hurd/setresgid.c: New file.
8115
8116         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
8117         setresgid): Declare them.
8118         * NEWS: Mention it.
8119         * include/unistd.h
8120         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
8121         add libc_hidden_proto.
8122         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
8123         getresuid, getresgid, setresuid, setresgid here.
8124         * Versions.def (libc): Define GLIBC_2.3.2 set.
8125         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
8126         Add libc_hidden_def.
8127         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
8128         * sysdeps/generic/setresgid.c: New file.
8129         * sysdeps/generic/setresuid.c: New file.
8130         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
8131         (sysdep_routines): Don't add getresuid and getresgid here.
8132         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
8133         (sysdep_routines): Don't add setresuid and setresgid here.
8134         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
8135         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
8136         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
8137         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
8138         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
8139         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
8140         * posix/Makefile (routines): Add them all here instead.
8141         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
8142         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
8143         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
8144         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
8145         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
8146         [! __NR_setresuid]: Include generic file.
8147         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
8148         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
8149         [! __NR_setresuid]: Include generic file.
8150         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
8151         Caller is - now, not EXTRA.
8152         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
8153         (setresuid, setresgid, getresuid, getresgid): Likewise.
8154         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
8155         Add these calls here.
8156         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
8157         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
8158         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
8159         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
8160         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
8161         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
8162         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
8163         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
8164         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
8165
8166         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
8167         (sysdep_routines): Add setfsuid and setfsgid here.
8168         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
8169         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
8170         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
8171         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
8172         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
8173         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
8174         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
8175         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
8176
8177         * hurd/errno.c: Renamed to ...
8178         * hurd/errno-loc.c: ... this.
8179         * hurd/Makefile (routines): errno -> errno-loc
8180
8181 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
8182
8183         * po/de.po: Update from translation team.
8184
8185         * MakeTAGS: Add -E flag to xgettext runs.
8186
8187 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
8188
8189         * po/fr.po: Update from translation team.
8190
8191         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
8192         Optimize a bit for use in glibc.
8193
8194 2002-10-12  Roland McGrath  <roland@redhat.com>
8195
8196         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
8197         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
8198
8199 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
8200
8201         * po/sv.po: Update from translation team.
8202
8203 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
8204
8205         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
8206         OP_CONTEXT_NODE.
8207         (regfree): Likewise.
8208         (create_initial_state): Likewise.
8209         (analyze): Remove the substitutions which became useless.
8210         (calc_first): Likewise.
8211         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
8212         epsilon destination.
8213         (duplicate_node_closure): New function.
8214         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
8215         (calc_inveclosure): Likewise.
8216         (calc_eclosure): Likewise.
8217         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
8218         direct invocation of duplicate_node.
8219         (parse): Don't use comma operator in the return to avoid compiler
8220         warning.
8221         (parse_reg_exp): Likewise.
8222         (parse_branch): Likewise.
8223         (parse_expression): Likewise.
8224         (parse_sub_exp): Likewise.
8225         (parse_dup_op): Likewise.
8226         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
8227         which became useless.
8228         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
8229         (create_cd_newstate): Likewise.
8230         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
8231         (re_token_t): Likewise.
8232         (re_dfa_t): Likewise.
8233         (re_node_set_remove): New macro.
8234         * posix/regexec.c (check_matching): Remove the handling
8235         OP_CONTEXT_NODE.
8236         (check_halt_node_context): Likewise.
8237         (proceed_next_node): Likewise.
8238         (pop_fail_stack): Fix the memory leak.
8239         (set_regs): Likewise.
8240         (free_fail_stack_return): New function.
8241         (sift_states_backward): Fix the memory leak.  Remove the handling
8242         OP_CONTEXT_NODE.
8243         (update_cur_sifted_state): Append some if clause to avoid redundant
8244         call.
8245         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
8246         back reference.
8247         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
8248         (check_subexp_limits): Likewise.
8249         (search_subexp): Likewise.
8250         (sift_states_bkref): Likewise.
8251         (transit_state_mb): Likewise.
8252         (transit_state_bkref_loop): Likewise.
8253         (transit_state_bkref_loop): Likewise.
8254         (group_nodes_into_DFAstates): Likewise.
8255         (check_node_accept): Likewise.
8256         (sift_ctx_init): Add initializing.
8257
8258 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
8259
8260         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
8261         __builtin_expect.
8262
8263 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
8264
8265         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
8266         duplicated variable c.
8267
8268         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
8269         if possible.
8270
8271         * sysdeps/unix/sysv/linux/i386/sysdep.h
8272         (INTERNAL_SYSCALL_ERROR_P): New define.
8273         (INTERNAL_SYSCALL_ERRNO): Likewise.
8274
8275         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
8276         Add hack to prevent the compiler from clobbering the signal context.
8277
8278 2002-10-11  Roland McGrath  <roland@redhat.com>
8279
8280         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
8281         Fix typos.
8282
8283         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
8284         * sysdeps/sh/dl-lookupcfg.h: File removed.
8285         * sysdeps/i386/dl-lookupcfg.h: File removed.
8286
8287         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
8288         missing labels and ; from last change.
8289
8290         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
8291         number literals, so they are doubles instead of ints.
8292
8293 2002-10-09  Roland McGrath  <roland@redhat.com>
8294
8295         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
8296         changed from [USE_TLS && HAVE___THREAD].
8297
8298         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
8299         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
8300         * sysdeps/x86_64/dl-machine.h
8301         (elf_machine_type_class, elf_machine_rela): Likewise.
8302         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
8303         Likewise.
8304
8305         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
8306         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
8307         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
8308
8309         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
8310         instead of ___tls_get_addr.
8311         (___tls_get_addr_internal): Add attribute_hidden to decl.
8312
8313         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
8314         _dl_error_catch_tsd.
8315         * elf/rtld.c (startup_error_tsd): New function.
8316         (dl_main): Point _dl_error_catch_tsd at that.
8317         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
8318         use new function pointer instead.
8319         * elf/dl-tsd.c: New file.
8320         * elf/Makefile (routines): Add it.
8321
8322 2002-10-07  Roland McGrath  <roland@redhat.com>
8323
8324         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
8325         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
8326         take _dl_load_lock around calling __writev.
8327
8328         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
8329         (INLINE_SYSCALL): Use that.
8330
8331         * sysdeps/generic/dl-sysdep.h: New file.
8332         * sysdeps/mach/hurd/dl-sysdep.h: New file.
8333         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
8334         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
8335         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
8336         access it directly.
8337         * elf/dl-minimal.c (__errno_location): Removed.
8338         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
8339         Use GOTOFF access for errno.
8340         * sysdeps/unix/sysv/linux/i386/sysdep.h
8341         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
8342
8343         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
8344         Use PC-relative access for errno.
8345         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
8346         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
8347
8348         * include/tls.h: New file.
8349         (USE___THREAD): New macro.
8350         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
8351         libc or libpthread.
8352         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
8353         changed from [USE_TLS && HAVE___THREAD].
8354         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
8355         * sysdeps/unix/i386/sysdep.S: Likewise.
8356         * sysdeps/unix/x86_64/sysdep.S: Likewise.
8357         * include/errno.h: Likewise.
8358         * include/netdb.h: Likewise.
8359         * include/resolv.h: Likewise.
8360
8361         * sysdeps/generic/errno.c: New file.
8362         * csu/Makefile (aux): New variable, list errno.
8363         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
8364         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
8365         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
8366         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
8367         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
8368         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
8369         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
8370         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
8371         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
8372         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
8373         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
8374         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
8375         * sysdeps/unix/alpha/sysdep.S: Likewise.
8376         * sysdeps/generic/start.c: Likewise.
8377         * sysdeps/unix/start.c: Likewise.
8378         * sysdeps/unix/arm/start.c: Likewise.
8379         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
8380         * sysdeps/unix/sparc/start.c: Likewise.
8381         * sysdeps/unix/sysv/irix4/start.c: Likewise.
8382         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
8383
8384         * manual/search.texi (Tree Search Function, Hash Search Function):
8385         Mention search.h clearly.
8386
8387 2002-10-05  Roland McGrath  <roland@redhat.com>
8388
8389         * elf/dl-fxstat64.c: File removed.
8390         * elf/dl-xstat64.c: File removed.
8391         * elf/Makefile (rtld-routines): Remove them.
8392         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
8393         Instead, use strong_alias instead of versioned_symbol in the
8394         !SHLIB_COMPAT case.
8395         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
8396         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
8397
8398         * include/shlib-compat.h
8399         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
8400         [! NOT_IN_libc] (IS_IN_libc): Define it.
8401         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
8402         * elf/Makefile (CPPFLAGS-.os): Likewise.
8403
8404         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
8405         Return the status instead of calling exit.
8406
8407         * Makeconfig (CFLAGS): Prepend -std=gnu99.
8408         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
8409         Remove superfluous rm command, whose @ plus make bugs hid
8410         all these commands from the make output.
8411
8412         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
8413         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
8414         Use that file's contents instead of literal echo's for the prologue.
8415         * include/features.h: Include <gnu/stubs.h> unconditionally.
8416         * include/gnu/stubs.h: New file.
8417
8418 2002-09-30  Roland McGrath  <roland@redhat.com>
8419
8420         * elf/rtld-Rules: New file.
8421         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
8422         $(objpfx)rtld-libc.a): New targets.
8423         (generated): Add them.
8424         (reloc-link): Remove -o $@ from the variable.
8425         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
8426         (distribute): Add rtld-Rules.
8427         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
8428         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
8429         (common-mostlyclean, common-clean): Clean up rtld-* files.
8430         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
8431
8432 2002-10-11  Roland McGrath  <roland@redhat.com>
8433
8434         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
8435         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
8436
8437         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
8438         proper set of no-op insn prefixes.
8439
8440         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
8441
8442 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
8443
8444         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
8445         __pthread_kill_other_threads_np.
8446
8447         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
8448
8449 2002-10-08  Roland McGrath  <roland@redhat.com>
8450
8451         * locale/newlocale.c (__newlocale): If setting all categories to "C",
8452         just return &_nl_C_locobj instead of copying it.
8453         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
8454         * locale/duplocale.c (__duplocale): Likewise.
8455
8456 2002-10-07  Roland McGrath  <roland@frob.com>
8457
8458         * config.h.in (HAVE_I386_SET_GDT): New #undef.
8459         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
8460         * sysdeps/mach/configure: Regenerated.
8461
8462 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
8463
8464         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
8465         Add all necessary register outputs for syscall-clobbered registers.
8466
8467 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
8468
8469         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
8470         Itanium 2 (and Itanium).
8471         Fix unwind directives and make it fit in 80 columns.
8472         * sysdeps/ia64/memset.S: Likewise.
8473         * sysdeps/ia64/memcpy.S: Likewise.
8474         Move jump table to .rodata section.
8475
8476 2002-10-03  Roland McGrath  <roland@frob.com>
8477
8478         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
8479         clobbers to asm.
8480
8481 2002-10-10  Andreas Jaeger  <aj@suse.de>
8482
8483         * sysdeps/x86_64/_mcount.S: Restore correct registers.
8484
8485 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
8486
8487         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
8488
8489 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
8490
8491         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
8492         _dl_allocate_tls_init.  Add rtld_hidden_proto.
8493         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
8494         rtld_hidden_def.
8495         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
8496
8497         * version.h (VERSION): Bump to 2.3.1.
8498
8499         * Make-dist: Add back one of the tar invocations removed before.
8500
8501         * stdlib/Makefile (distribute): Add allocalim.h.
8502
8503         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
8504         (__libc_tsd_address): Use correct variable name.
8505         Patch by Stefan Jones <stefan.jones@multigig.com>.
8506
8507         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
8508         Reported by edwardsg@sgi.com [PR libc/4678].
8509
8510         * Versions.def (libc): Add GLIBC_2.3.1.
8511         (libpthread): Add GLIBC_2.3.1.
8512
8513         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
8514         and __sigtimedwait.
8515         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
8516         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
8517         libc_hidden_def.
8518         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
8519         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
8520
8521         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
8522         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
8523         and make old name an alias.
8524         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
8525         and make old name an alias.
8526         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
8527         __libc_msgsnd.
8528
8529         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
8530         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
8531         __libc_writev.
8532         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
8533         old name an alias.
8534         * sysdeps/posix/readv.c: Likewise
8535         * sysdeps/unix/sysv/aix/readv.c: Likewise.
8536         * sysdeps/unix/sysv/linux/readv.c: Likewise.
8537         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
8538         old name an alias.
8539         * sysdeps/posix/writev.c: Likewise
8540         * sysdeps/unix/sysv/aix/writev.c: Likewise.
8541         * sysdeps/unix/sysv/linux/writev.c: Likewise.
8542
8543         * include/sys/wait.h: Declare __waitid.
8544         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
8545         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
8546         name an alias.
8547         * sysdeps/posix/waitid.c: Likewise.
8548         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
8549
8550         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
8551
8552 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
8553
8554         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
8555         prototypes.
8556         (__MAX_ALLOCA_CUTOFF): Define.
8557         Include allocalim.h.
8558         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
8559         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
8560         host_buffer depending on __libc_use_alloca.
8561         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
8562         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
8563         net_buffer depending on __libc_use_alloca.
8564         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
8565         buf depending on __libc_use_alloca.
8566         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
8567         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
8568         instead of hardcoded constants.
8569         Pass proper size argument to alloca and compute end for wide char
8570         version.
8571         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
8572         instead of hardcoded constants.
8573         * string/strcoll.c (strcoll): Likewise.
8574         * string/strxfrm.c (strxfrm): Likewise.
8575         * sysdeps/posix/readv.c (__readv): Likewise.
8576         * sysdeps/posix/writev.c (__writev): Likewise.
8577         * sysdeps/generic/allocalim.h: New file.
8578
8579 2002-10-08  Roland McGrath  <roland@redhat.com>
8580
8581         * configure.in (aux_missing warning): Change "too old" to
8582         "incompatible versions", since for autoconf it's "too new" right now.
8583         * configure: Regenerated.
8584
8585         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
8586         one found doesn't work on our configure.in.
8587         * configure: Regenerated.
8588         * config.make.in (AUTOCONF): New substituted variable.
8589         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
8590         (autoconf-it): ... here, use that instead of defining conditionally.
8591         Use $(AUTOCONF) instead of literal autoconf.
8592         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
8593         with this condition.
8594         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
8595
8596 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
8597
8598         * Make-dist (dist): Cleanup a bit.  We are not interested in the
8599         14 char filename limit anymore.  Remove intermediate files and
8600         symlinks.
8601
8602 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
8603
8604         * po/sk.po: Update from translation team.
8605         * po/tr.po: Likewise.
8606         * po/gl.po: Likewise.
8607
8608 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
8609
8610         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
8611
8612 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
8613
8614         * version.h (RELEASE): Change to stable.
8615
8616 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
8617
8618         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
8619         __syscall_exit_group): New prototypes.
8620
8621 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
8622
8623         * glibc 2.3 released.
8624
8625
8626 See ChangeLog.13 for earlier changes.