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