* nscd/hstcache.c (cache_addhst): Minimal optimization.
[platform/upstream/glibc.git] / ChangeLog
1 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
2
3         * nscd/hstcache.c (cache_addhst): Minimal optimization.
4
5         [BZ #4925]
6         * debug/pcprofiledump.c: Turn on internationalization by calling
7         setlocale.  Patch mostly by Benno Schulenberg.
8
9         [BZ #4936]
10         * iconv/gconv.c (__gconv): If flush was successful, clear rest of
11         the state.
12         * iconvdata/Makefile: Add rules to build and run bug-iconv5.
13         * iconvdata/bug-iconv5.c: New file.
14
15 2007-08-04  Carlos O'Donell  <carlos@systemhalted.org>
16
17         [BZ #4896]
18         * elf/elf.h: Define R_PARISC_PLABEL21L, R_PARISC_PLABEL14R,
19         R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT, R_PARISC_TLS_GD21L,
20         R_PARISC_TLS_GD14R, R_PARISC_TLS_GDCALL, R_PARISC_TLS_LDM21L,
21         R_PARISC_TLS_LDM14R, R_PARISC_TLS_LDMCALL, R_PARISC_TLS_LDO21L,
22         R_PARISC_TLS_LDO14R, R_PARISC_TLS_DTPMOD32, R_PARISC_TLS_DTPMOD64,
23         R_PARISC_TLS_DTPOFF32, R_PARISC_TLS_DTPOFF64, R_PARISC_TLS_LE21L,
24         R_PARISC_TLS_LE14R, R_PARISC_TLS_IE21L, R_PARISC_TLS_IE14R,
25         R_PARISC_TLS_TPREL32, R_PARISC_TLS_TPREL64.
26
27 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
28
29         [BZ #4937]
30         * elf/do-lookup.h (do_lookup_x): Minimal improvement in hash
31         lookup loop.  Suggested by John Reiser.
32
33 2007-08-21  Jakub Jelinek  <jakub@redhat.com>
34
35         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Include tls.h.
36
37 2007-08-20  Ulrich Drepper  <drepper@redhat.com>
38
39         * csu/libc-start.c: Don't handle VDSO_SETUP here.
40         * sysdeps/unix/sysv/linux/init-first.c: Handle it here instead.
41         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: Renamed to...
42         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...this.  New file.
43         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Move VDSO_SETUP code
44         to...
45         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...here.  New file.
46
47 2007-08-18  Ulrich Drepper  <drepper@redhat.com>
48
49         * po/nl.po: Update from translation team.
50
51 2007-08-16  Andreas Jaeger  <aj@suse.de>
52
53         * locale/localeinfo.h: Make _nl_category_name_idxs extern.
54         Reported by Peter Festner <peter.festner@ewetel.net>.
55
56 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
57
58         * login/tst-grantpt.c (test_einval): Add 3rd argument to open.
59
60 2007-08-16  Jakub Jelinek  <jakub@redhat.com>
61
62         * elf/Makefile ($(objpfx)ld.so): Use readelf -s and awk instead of nm -u
63         to check for undefined symbols.
64
65         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
66         If the syscall fails, set errno to the actual returned error number
67         rather than EINVAL.
68         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If
69         arguments are incorrect, set errno to EINVAL, if the syscall
70         fails, set errno to the actual returned error number.
71
72         * stdlib/bits/stdlib-ldbl.h (__strtold_internal): Remove.
73         * wcsmbs/bits/wchar-ldbl.h (__wcstold_internal): Remove.
74
75         * sysdeps/sparc/sparc32/sparcv9b/memcpy.S: Moved to...
76         * sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: ... here.  New
77         file.
78         (ASI_PNF, ASI_BLK_P): Don't define.
79         * sysdeps/sparc/sparc32/sparcv9v/memcpy.S: Moved to...
80         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: ... here.  New
81         file.
82         * sysdeps/sparc/sparc32/sparcv9v/memset.S: Moved to...
83         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: ... here.  New
84         file.
85
86 2007-08-15  Jakub Jelinek  <jakub@redhat.com>
87
88         * sysdeps/sparc/fpu/fraiseexcpt.c (__feraiseexcept): Fix raising
89         FE_UNDERFLOW on Niagara CPUs.
90
91         * sysdeps/sparc/fpu/feholdexcpt.c (feholdexcept): Clear all
92         exceptions.
93
94 2007-08-14  Jakub Jelinek  <jakub@redhat.com>
95
96         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): No
97         need to check GLRO(dl_hwcap) & HWCAP_SPARC_FLUSH on sparcv9.
98         (sparc_fixup_plt): Add do_flush argument instead of figuring whether
99         flush should be used or not inside of the function.
100         (elf_machine_fixup_plt, elf_machine_rela): Adjust caller.
101
102         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone,
103         __thread_start): Use HIDDEN_JUMPTARGET.
104         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone,
105         __thread_start): Likewise.
106         * sysdeps/unix/sysv/linux/sparc/sysdep.h (JUMPTARGET): Define.
107
108         * sysdeps/ieee754/ldbl-64-128/strtold_l.c (__STRTOF): Declare.
109         Add libc_hidden_proto.
110         (STRTOF): Add libc_hidden_proto.
111         (___new_strtold_l, ___new_wcstold_l): New weak aliases.
112         (strtold_l, wcstold_l): Use them as second argument for
113         long_double_symbol.
114
115 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
116
117         * elf/dl-misc.c: Undo last change.  The kernel won't allow it.
118
119 2007-08-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
120
121         * stdlib/strtold_l.c: Include wchar.h if needed.  Add libc_hidden_def.
122
123 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
124
125         * po/bg.po: New file.  From the translation team.
126
127 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
128
129         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PSELECT,
130         __ASSUME_PPOLL, __ASSUME_ATFCTS, __ASSUME_SET_ROBUST_LIST,
131         __ASSUME_UTIMENSAT, __ASSUME_FALLOCATE): Update per-arch conditions
132         when each feature was introduced.
133
134         * sysdeps/unix/sysv/linux/dl-vdso.c: Don't include dl-hash.h.
135         * sysdeps/unix/sysv/linux/dl-vdso.h: Don't include dl-hash.h if NDEBUG.
136         (CHECK_HASH): New macro.
137         (PREPARE_VERSION): Use it.
138
139         * sysdeps/unix/sysv/linux/pselect.c (__generic_pselect): Only provide
140         prototype if not __ASSUME_PSELECT.
141         * sysdeps/unix/sysv/linux/ppoll.c (__generic_ppoll): Only provide
142         prototype if not __ASSUME_PPOLL.
143
144         * sysdeps/unix/sysv/linux/dl-osinfo.h (ROUND): #undef after use.
145
146         * sysdeps/unix/clock_settime.c (freq, __pthread_clock_settime,
147         hp_timing_settime): Don't define or declare if HANDLED_CPUTIME
148         is defined.
149
150 2007-08-13  Ulrich Drepper  <drepper@redhat.com>
151
152         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
153         (_libc_vdso_platform_setup): If vDSO is not available point
154         __vdso_gettimeofday to the vsyscall.
155         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S [SHARED]: Use
156         __vdso_gettimeofday instead of vsyscall.
157
158 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
159
160         * nscd/servicescache.c: Include kernel-features.h.
161         * nscd/gai.c: Likewise.
162         * sysdeps/unix/sysv/linux/statfs64.c: Likewise.
163         * sysdeps/unix/sysv/linux/fstatfs64.c: Likewise.
164         * sysdeps/unix/sysv/linux/fxstatat.c: Likewise.
165         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S: Likewise.
166         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S: Likewise.
167         * sysdeps/unix/sysv/linux/xstatconv.c: Likewise.
168         * sysdeps/unix/sysv/linux/if_index.c: Likewise.
169         * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: Likewise.
170         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
171
172 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
173
174         * elf/dl-dst.h: No need for _dl_dst_count, _dl_dst_substitute,
175         and _dl_get_origin defines anymore.
176
177         * sysdeps/unix/sysv/linux/clock_gettime.c (maybe_syscall_gettime_cpu):
178         Build fix for systems which might lack POSIX timer support.
179
180         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
181         (_libc_vdso_platform_setup): Mangle function pointers before storing
182         them.
183         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INLINE_VSYSCALL):
184         Demangle vdso pointer before use.
185         (INTERNAL_VSYSCALL): Likewise.
186
187         * elf/cache.c (primes): Mark as const.
188         Noted by Roland McGrath.
189
190 2007-08-01  Andreas Jaeger  <aj@suse.de>
191             Jakub Jelinek  <jakub@redhat.com>
192
193         * elf/ldconfig.c (opt_ignore_aux_cache): Add new option.
194         (options): Add option.
195         (parse_opt): Handle option.
196         (manual_link): Adjust process_file caller.  Call implicit_soname.
197         (search_dir): Formatting.  Use and populate auxiliary cache.
198         (main): Load and save auxiliary cache.
199         * elf/readlib.c (process_file): Add stat_buf argument.  Pass struct
200         stat64 from fstat64 to caller.
201         (implicit_soname): New function.
202         * elf/readelflib.c (process_elf_file): If DT_SONAME is not present,
203         leave *soname as NULL.
204         * elf/cache.c: Include libgen.h.
205         (print_entry, print_cache, compare, save_cache, add_to_cache):
206         Formatting and cleanups.
207         (aux_cache_entry_id, aux_cache_entry, aux_cache_file_entry,
208         aux_cache_file): New structures.
209         (AUX_CACHEMAGIC): Define.
210         (primes): New array.
211         (aux_hash_size, aux_hash): New variables.
212         (aux_cache_entry_id_hash, nextprime, init_aux_cache,
213         search_aux_cache, insert_to_aux_cache, add_to_aux_cache,
214         load_aux_cache, save_aux_cache): New functions.
215         * sysdeps/generic/ldconfig.h (_PATH_LDCONFIG_AUX_CACHE): Define.
216         (init_aux_cache, search_aux_cache, add_to_aux_cache,
217         load_aux_cache, save_aux_cache, implicit_soname): New prototypes.
218         (process_file): Adjust prototype.
219
220 2007-08-12  Jakub Jelinek  <jakub@redhat.com>
221
222         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Include stddef.h
223         with __need_size_t.
224
225 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
226
227         * sysdeps/unix/sysv/linux/dl-vdso.c (_dl_vdso_vsym): Expect
228         r_found_version structure as second parameter.
229         * sysdeps/unix/sysv/linux/dl-vdso.h (PREPARE_VERSION): Define.
230         (_dl_vdso_vsym): Change type of second parameter accordingly.
231         * sysdeps/unix/sysv/linux/x86-64/libc-start.c
232         (_libc_vdso_platform_setup): Adjust.
233         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
234         (_libc_vdso_platform_setup): Likewise.
235
236         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.c: Move to...
237         * sysdeps/unix/sysv/linux/dl-vdso.c: ...here.
238         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.h: Move to...
239         * sysdeps/unix/sysv/linux/dl-vdso.h: ...here.
240         * csu/libc-start.c: Pretty printing.
241         Use VDSO_SETUP if defined.
242         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Define VDSO_SETUP
243         and let generic code call into _libc_vdso_platform_setup.
244         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: New file.
245         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: New file.
246         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Pretty printing.
247         Define INLINE_VSYSCALL and INTERNAL_VSYSCALL.
248         * sysdeps/unix/sysv/linux/x86_64/Versions: Export __vdso_clock_gettime
249         for GLIBC_PRIVATE.
250         * sysdeps/unix/sysv/linux/x86_64/Makefile [subdir=elf]
251         (sysdep_rountines): Add dl-vdso.
252
253         * sysdeps/unix/sysv/linux/powerpc/Makefile: Use sysdep_routines instead
254         of routines.
255
256         * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h: Add
257         attribute_hidden to __vdso_gettimeofday prototype.
258
259 2007-08-12  Roland McGrath  <roland@redhat.com>
260
261         * manual/stdio.texi (Variable Arguments Output): Fix xref to gcc manual.
262         From: Karl Berry <karl@freefriends.org>.
263
264 2007-08-11  Ulrich Drepper  <drepper@redhat.com>
265
266         * elf/dl-misc.c (_dl_sysdep_read_whole_file): We really don't need
267         an atime update for the files we read.
268
269 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
270
271         * shadow/lckpwdf.c (__lckpwdf): Use O_CLOEXEC if possible.
272
273         * nscd/connections.c: Use O_CLOEXEC if possible.  Use mkostemp
274         instead of mkstemp.
275
276         * misc/Makefile (routines): Add mkostemp and mkostemp64.
277         * misc/Versions: Export mkostemp and mkostemp64 for GLIBC_2.7.
278         * misc/mkostemp.c: New file.
279         * misc/mkostemp64.c: New file.
280         * stdlib/stdlib.h: Declare the new functions.
281         * sysdeps/posix/tempname.c: Add new parameter which is added to
282         the flags for open.  Remove __GT_BIGFILE handling.
283         * stdio-common/tempname.c: Likewise.
284         * include/stdio.h: Adjust __gen_tempname prototype.
285         Renumber __GT_* constants.
286         * libio/oldtmpfile.c: Adjust for __gen_tempname interface change.
287         * misc/mkdtemp.c: Likewise.
288         * misc/mkstemp.c: Likewise.
289         * misc/mkstemp64.c: Likewise.
290         * misc/mktemp.c: Likewise.
291         * stdio-common/tempnam.c: Likewise.
292         * stdio-common/tmpfile.c: Likewise.
293         * stdio-common/tmpfile64.c: Likewise.
294         * stdio-common/tmpnam.c: Likewise.
295         * stdio-common/tmpnam_r.c: Likewise.
296
297 2007-08-10  Roland McGrath  <roland@frob.com>
298
299         * sysdeps/mach/hurd/bits/ioctls.h (NLDLY, TABDLY, BSDLY, VTDLY):
300         New macros.
301         (NLDELAY, CRDELAY, TBDELAY, BSDELAY, VTDELAY): Define to those.
302         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
303
304 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
305
306         * nss/nss_files/files-XXX.c (internal_setent): Use O_CLOEXEC if
307         possible.
308         * nss/nss_files/files-alias.c (internal_setent): Likewise.
309         * nss/Makefile (libnss_files-routines): Add files-have_o_cloexec.
310         * nss/nss_files/files-have_o_cloexec.c: New file.
311
312         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Use O_CLOEXEC if
313         available.
314
315 2007-08-10  Jakub Jelinek  <jakub@redhat.com>
316
317         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c (___new_strtold_l,
318         ___new_wcstold_l): New weak aliases.
319         (strtold_l, wcstold_l): Use them as second argument for
320         long_double_symbol.
321
322 2007-08-09  Ulrich Drepper  <drepper@redhat.com>
323
324         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: Use correct
325         register in test for error.
326
327         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_CLOEXEC): Define.
328         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_CLOEXEC): Likewise.
329
330         * po/sv.po: Update from translation team.
331
332 2007-08-06  Roland McGrath  <roland@redhat.com>
333
334         * include/stdlib.h: Add libc_hidden_proto for strto*, __strto*_l.
335         Remove __strto*_l inlines.
336         * include/wchar.h: Add libc_hidden_proto for wcsto*, __wcsto*_l.
337         * stdlib/strtod.c: Add libc_hidden_def.
338         * stdlib/strtod_l.c: Likewise.
339         * stdlib/strtold.c [__LONG_DOUBLE_MATH_OPTIONAL]: Add libc_hidden_proto
340         for __new_strtold and __new_wcstold.
341         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Add libc_hidden_proto for
342         __STRTOF, STRTOF.
343         * stdlib/strtol.c: Add libc_hidden_def.
344         * stdlib/strtol_l.c: Likewise.
345         * sysdeps/wordsize-64/strtol.c: Add libc_hidden_ver for strtoll and
346         strtoq.
347
348         * scripts/data/localplt-powerpc-linux-gnu.data: New file.
349
350         * scripts/data/localplt-x86_64-linux-gnu.data: File renamed to ...
351         * scripts/data/localplt-generic.data: ... here.
352         * elf/Makefile (check-data): Get generic file if no other.
353         ($(objpfx)check-localplt.out): Make target unconditional.
354
355         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion):
356         Use ElfW(Nhdr).
357
358 2007-08-05  Ulrich Drepper  <drepper@redhat.com>
359
360         * po/zh_CN.po: Updated translation from translation team.
361
362 2007-08-05  Jakub Jelinek  <jakub@redhat.com>
363
364         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket):
365         Don't use CGOTSETUP and CGOTRESTORE macros.
366
367 2007-08-04  Roland McGrath  <roland@redhat.com>
368
369         * posix/Makefile ($(objpfx)getconf.speclist): Fix typo.
370
371 2007-08-04  Jakub Jelinek  <jakub@redhat.com>
372
373         * io/bits/fcntl2.h (open, open64, openat, openat64): Add
374         __extension__ around the whole statement expression.
375
376 2007-08-04  Ulrich Drepper  <drepper@redhat.com>
377
378         * sysdeps/unix/opendir.c (__alloc_dir): Correct order of DIR
379         elements during initialization.
380
381         * po/pl.po: Updated translation from translation team.
382         * po/tr.po: Likewise.
383         * po/nl.po: Likewise.
384
385 2007-08-03  Ulrich Drepper  <drepper@redhat.com>
386
387         * rt/aio.h: Add __nonnull attributes.
388
389 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
390
391         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Properly handle -0.
392         * stdlib/Makefile (tests): Add tst-strtod5.
393         (tst-strtod5-ENV): New.
394         * stdlib/tst-strtod5.c: New file.
395
396         * intl/dcigettext.c (_nl_find_msg): Free encoding if __gconv_open
397         failed.
398         * intl/finddomain.c (_nl_find_domain): Free normalized_codeset
399         on failure.
400
401         * elf/dl-load.c (decompose_rpath): Free copy if result couldn't be
402         allocated.
403
404 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
405
406         * rt/mqueue.h (mq_timedreceive, mq_timedsend): Fix nonnull argument
407         numbers.
408
409 2007-08-02  Ulrich Drepper  <drepper@redhat.com>
410
411         * io/Makefile (aux): Add have_o_cloexec.
412         * include/fcntl.h: Declare __have_o_cloexec.
413         * io/have_o_cloexec.c: New file.
414         * sysdeps/unix/opendir.c (__opendir): Use O_CLOEXEC is available.
415         (__alloc_dir): If O_CLOEXEC has been used, don't duplicate the
416         fcntl call if not necessary.
417         * login/utmp_file.c (setutent_file): Use __have_o_cloexec instead
418         of local variable.
419
420         * sysdeps/unix/opendir.c (__alloc_dir): Don't initialize ->data.
421         Avoid memset, add explicit initialization.
422         * sysdeps/unix/dirstream.h (struct __dirstream): Move data elemtn
423         to the end and change into zero-sized array.
424         Move lock member to fill a hole on 64-bit platforms.
425
426         * stdlib/stdlib.h: Remove __strto*_internal prototypes and strto*
427         inline functions.
428         * include/stdlib.h: Add __strto*_internal prototypes here.
429         * wcsmbs/wchar.h: Remove __wcsto*_internal prototypes and wcsto*
430         inline functions.
431         * include/wchar.h: Add __wcsto*_internal prototypes.
432         * sysdeps/generic/inttypes.h: No need to protect the declaration
433         of the __strto*_internal and __wcsto*_internal members here.
434
435         * rt/mqueue.h: Change const to __const and add nonnull attributes.
436
437 2007-08-02  Roland McGrath  <roland@redhat.com>
438
439         * posix/Makefile ($(inst_libexecdir)/getconf): Make hard links to
440         $(inst_bindir)/getconf if possible.
441
442         * posix/Makefile ($(objpfx)getconf.speclist): New target.
443         (generated): Add it.
444         ($(inst_libexecdir)/getconf): Use it.
445
446 2007-08-01  Ulrich Drepper  <drepper@redhat.com>
447
448         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Using
449         /proc is faster and sufficient.  /sys is still needed for
450         __get_nprocs_conf.
451
452 2007-08-01  Jakub Jelinek  <jakub@redhat.com>
453
454         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate): Add fallocate
455         syscall as __fallocate64.
456         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: New file.
457         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: New file.
458
459 2007-07-30  Jakub Jelinek  <jakub@redhat.com>
460
461         * stdlib/tst-strtod2.c (do_test): Use %tu in fmt string for ptrdiff_t
462         value.
463
464         * stdio-common/tst-fmemopen2.c (do_test): Avoid fmt string warning
465         if off_t is different rank from size_t.
466
467         * sysdeps/generic/unwind-dw2.c (extract_cie_info, execute_cfa_program,
468         uw_frame_state_for): Avoid type punning warnings.
469         * sysdeps/generic/unwind-dw2-fde-glibc.c
470         (_Unwind_IteratePhdrCallback): Likewise.
471         * sysdeps/generic/unwind-dw2-fde.c (_Unwind_Find_FDE): Likewise.
472         (binary_search_single_encoding_fdes, binary_search_mixed_encoding_fdes,
473         get_cie_encoding, linear_search_fdes): Don't mix char and unsigned char
474         pointers.
475
476 2007-07-31  Ulrich Drepper  <drepper@redhat.com>
477
478         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs_conf): Count
479         total processors using sysfs.
480         (__get_nprocs): Use sysfs to determine which processors are online.
481
482 2007-07-31  Jakub Jelinek  <jakub@redhat.com>
483
484         * sysdeps/unix/sysv/linux/posix_fallocate.c (posix_fallocate): Fix
485         syscall arguments count.
486
487         * stdio-common/tfformat.c (sprint_doubles): Add 12 new tests.
488
489 2007-07-30  Roland McGrath  <roland@redhat.com>
490
491         * manual/libc.texinfo: Update copyrights, formatting magic, and
492         @dircategory.  From Karl Berry <karl@freefriends.org>.
493
494 2007-07-29  Ulrich Drepper  <drepper@redhat.com>
495
496         [BZ #4860]
497         * io/Makefile (headers): Add bits/fcntl2.h.
498
499         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO_S): Optimize
500         using gcc builtin.
501         (__CPU_EQUAL_S): Likewise.
502
503         * posix/Makefile (routines): Add sched_cpualloc and sched_cpufree.
504         (tests): Add tst-cpuset.
505         * posix/sched_cpualloc.c: New file.
506         * posix/sched_cpufree.c: New file.
507         * posix/tst-cpuset.c: New file.
508         * posix/Versions: Export __sched_cpualloc and __sched_cpufree for
509         GLIBC_2.7.
510         * sysdeps/unix/sysv/linux/bits/sched.h: Define __CPU_*_S macros.
511         * posix/sched.h: Define old CPU_* macros in temers of __CPU_*_S
512         macros.  Define CPU_*_S macros.
513
514 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
515
516         * posix/getconf.c (vars): Add missing _SC_LEVEL4_CACHE_LINESIZE
517         entry.
518
519         [BZ #4858]
520         * stdio-common/printf_fp.c (___printf_fp): Fix special case of
521         #.0g and value rounded to 1.0.
522         * stdio-common/tfformat.c (sprint_doubles): Add two new tests.
523
524 2007-07-26  Jakub Jelinek  <jakub@redhat.com>
525
526         * locale/programs/ld-monetary.c (monetary_finish): Avoid range check
527         for int_frac_digits and frac_digits.
528
529         * login/logout.c (logout): Avoid aliasing violation.
530         * login/logwtmp.c (logwtmp): Likewise.
531
532         * libio/genops.c (_IO_un_link): Avoid aliasing violation.
533
534         * nscd/selinux.c (preserve_capabilities): Initialize new_caps
535         to avoid warning.
536         * iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid
537         warning.
538         * nis/nis_subr.c (nis_getnames): Initialize saveptr to avoid
539         warning.
540         * resolv/inet_ntop.c (inet_ntop6): Initialize best.len and cur.len
541         to avoid warnings.
542
543         * nss/nsswitch.c (__nss_lookup_function): Don't cast &ni->known to
544         void **.
545         * nss/nsswitch.h (service_user): Use void * type for KNOWN field.
546
547         * nss/nss_files/files-hosts.c (LINE_PARSER): Cast host_addr to
548         char * to avoid warning.
549         * nis/nss_nis/nis-hosts.c (LINE_PARSER): Likewise.
550
551         * timezone/Makefile (CFLAGS-zdump.c): Add -fwrapv.
552
553         * locale/programs/ld-ctype.c (ctype_finish, set_class_defaults,
554         allocate_arrays): Cast second argument to charmap_find_symbol
555         to char * to avoid warnings.
556
557         * locale/programs/repertoire.c (repertoire_new_char): Change
558         from_nr, to_nr and cnt to unsigned long, adjust printf format
559         string.
560
561         * locale/programs/ld-collate.c (insert_value, handle_ellipsis):
562         Cast second argument to new_element to char * to avoid warnings.
563
564         * locale/weightwc.h (findidx): Cast &extra[-i] to const int32_t *.
565
566         * intl/gettextP.h (struct loaded_domain): Change plural to const
567         struct expression *.
568         * intl/plural-eval.c (plural_eval): Change first argument to
569         const struct expression *.
570         * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Change first
571         argument to const struct expression **.
572         * intl/plural-exp.h (EXTRACT_PLURAL_EXPRESSION, plural_eval): Adjust
573         prototypes.
574         * intl/loadmsgcat (_nl_unload_domain): Cast away const
575         in call to __gettext_free_exp.
576
577         * posix/fnmatch.c (fnmatch): Rearrange code to avoid maybe
578         unitialized wstring/wpattern var warnings.
579
580         * posix/runtests.c (struct a_test): Make data field const char *.
581
582         * stdio-common/tst-sprintf2.c (main): Don't declere u, v and buf
583         vars if not LDBL_MANT_DIG >= 106.
584
585         * stdio-common/Makefile (CFLAGS-vfwprintf.c): Add -Wno-unitialized.
586
587         * stdio-common/vfprintf.c (vfprintf): Cast first arugment to
588         __find_specmb to avoid warning.
589
590         * rt/tst-mqueue1.c (do_one_test): Add casts to avoid warnings.
591
592         * debug/test-strcpy_chk.c (do_tests, do_random_tests): Add casts
593         to avoid warnings.
594
595         * sysdeps/ieee754/ldbl-96/s_roundl.c (huge): Add L suffix to
596         initializer.
597
598         * sysdeps/unix/clock_gettime.c (clock_gettime): Only define
599         tv var when it will be actually used.
600
601         * sunrpc/rpc_cmsg.c (xdr_callmsg): Cast IXDR_PUT_* to void
602         to avoid warnings.
603
604         * iconvdata/gbk.c (BODY): Make buf and cp char instead of unsigned
605         char array resp. pointer.
606         * iconvdata/iso-2022-kr.c (BODY): Make buf unsigned char instead of
607         char array.
608         * iconvdata/cns11643.h (cns11643_to_ucs4): Change first argument
609         to const unsigned char **.
610         (ucs4_to_cns11643): Change second argument to unsigned char *.
611         * iconvdata/euc-tw.c (BODY): Change endp type to
612         const unsigned char *.
613         * iconvdata/iso-ir-165.h (ucs4_to_isoir165): Change second argument
614         to unsigned char *.
615         * iconvdata/ibm1008_420.c (LOOP_NEED_FLAGS): Don't define.
616         * iconvdata/iso-2022-cn.c (BODY): Change buf to unsigned char array.
617         * iconvdata/iso-2022-cn-ext.c (BODY): Change buf, tmpbuf, tmp
618         types to unsigned char pointers/arrays instead of char.
619         * iconvdata/jis0201.h (ucs4_to_jisx0201): Change second argument
620         to unsigned char *.
621         * iconvdata/jis0208.h (ucs4_to_jisx0208): Likewise.
622         * iconvdata/jis0212.h: Include assert.h.
623         (ucs4_to_jisx0212): Change second argument to unsigned char *.
624         assert that if cp[0] is not '\0', cp[1] is not '\0' either instead
625         of trying to handle that.
626         * iconvdata/euc-kr.c (euckr_from_ucs4): Initialize also cp[1] to
627         shut up a warning.
628         * iconvdata/euc-jp-ms.c (from_ucs4_lat1, from_ucs4_greek,
629         from_ucs4_cjk, from_ucs4_cjkcpt, from_ucs4_extra): Change type to
630         two dimensional const unsigned char arrays.
631         (BODY): Cast "" to (const unsigned char *) for assignment to cp.
632         Initialize endp to inptr to shut up a warning.
633
634 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
635
636         [BZ #4772]
637         * time/strptime_l.c (__strptime_internal): Silently ignore
638         strftime modifiers and field width in recursive calls.
639
640         * include/time.h (enum ptime_locale_status): Remove.
641         (__strptime_internal): Remove decided and era_cnt arguments,
642         add statep argument.
643         * time/strptime_l.c (__strptime_internal): Remove decided
644         and era_cnt arguments, add statep argument.  Don't recompute
645         any fields in recursive calls, only update caller's tm
646         and state, if recursive call fails, don't change tm nor
647         any state.
648         (get_alt_number): Adjust.
649         (recursive): Adjust caller.
650         (strptime): Likewise.
651         * time/strptime.c (strptime): Likewise.
652
653 2007-07-19  Jakub Jelinek  <jakub@redhat.com>
654
655         * iconv/gconv_int.h (__GCONV_NULCONV): New internal only error code.
656         * iconv/gconv_cache.c (__gconv_lookup_cache): Return __GCONV_NULCONV
657         if from and to charsets are the same.
658         * iconv/gconv_db.c (__gconv_find_transform): Likewise.
659         * intl/dcigettext.c (_nl_find_msg): Return NULL even if __gconv_open
660         returns __GCONV_NOCONV, but not for __GCONV_NULCONV.
661
662 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
663
664         * wcsmbs/wchar.h: Only define wint_t if __need_wint_t.
665         Don't define wint_t when __need_mbstate_t unless it
666         is necessary.
667         (__mbstate_t): Use __WINT_TYPE__ rather than wint_t
668         in the typedef if possible.
669         * wctype/wctype.h (wint_t): Define by including
670         wchar.h with __need_wint_t instead of including stddef.h
671         with __need_wint_t and as fallback definining it ourselves.
672         * iconv/gconv.h (__need_wint_t): Define before including
673         wchar.h.
674         * sysdeps/gnu/_G_config.h: Don't include gconv.h if not _LIBC
675         or _GLIBCPP_USE_WCHAR_T.
676         (__need_wchar_t): Don't define
677         if not _LIBC or _GLIBCPP_USE_WCHAR_T.
678         (__need_wint_t): Don't define before including stddef.h,
679         define before including wchar.h only if _LIBC or
680         _GLIBCPP_USE_WCHAR_T.
681         (_G_iconv_t): Don't define if not _LIBC or _GLIBCPP_USE_WCHAR_T.
682         * sysdeps/mach/hurd/_G_config.h: Likewise.
683         * sysdeps/generic/_G_config.h: Likewise.
684         * libio/libio.h (__wunderflow, __wuflow, __woverflow): Only
685         prototype if _LIBC or _GLIBCPP_USE_WCHAR_T.
686         (_IO_getwc_unlocked, _IO_putwc_unlocked): Only define
687         if _LIBC or _GLIBCPP_USE_WCHAR_T.
688
689 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
690
691         * sysdeps/posix/posix_fallocate64.c: Undefine
692         __posix_fallocate64_l64 before alias handling.
693         * sysdeps/unix/sysv/linux/posix_fallocate.c: New file.
694         * sysdeps/unix/sysv/linux/posix_fallocate64.c: New file.
695         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c: New file.
696         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate64.c: New file.
697
698         * io/tst-posix_fallocate.c: Include <fcntl.h>.
699
700 2007-07-23  Jakub Jelinek  <jakub@redhat.com>
701
702         * locale/programs/ld-collate.c (atwc): New variable.
703         (add_to_tablewc): New toplevel function, moved from collate_output.
704         (collate_output): Remove add_to_tablewc nested function.
705
706         * iconv/iconvconfig.c (hash_table, hash_size): New toplevel vars.
707         (name_insert): New function.
708         (write_output): Remove hash_table and hash_size vars and name_insert
709         nested function.
710
711 2007-07-24  Roland McGrath  <roland@redhat.com>
712
713         * Makerules (install-others-programs-nosubdir): New target.
714         (install-no-libc.a-nosubdir): Depend on it.
715
716         * iconv/Makefile (install-others-programs): Set this instead of
717         install-others.
718         * login/Makefile (install-others-programs): Likewise.
719         * posix/Makefile (install-others-programs): Likewise.
720
721         * Makerules (install-no-libc.a-nosubdir): Clean up conditional
722         dependencies.
723
724 2007-07-23  Ulrich Drepper  <drepper@redhat.com>
725
726         * io/Makefile (tests): Add tst-posix_fallocate.
727         * io/tst-posix_fallocate.c: New file.
728
729         * sysdeps/unix/sysv/linux/kernel-features.h: Define
730         __ASSUME_FALLOCATE.
731
732 2007-07-22  Roland McGrath  <roland@frob.com>
733
734         * hurd/getdport.c: Add missing copyright year update.
735
736         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU] (O_CLOEXEC): New macro.
737         * hurd/port2fd.c (_hurd_port2fd): Implement O_CLOEXEC.
738
739 2007-07-22  Ulrich Drepper  <drepper@redhat.com>
740
741         * login/utmp_file.c (setutent_file): Use O_CLOEXEC if possible.
742
743         * libio/fileops.c (_IO_new_file_fopen): Recognize 'e' flag and set
744         O_CLOEXEC is needed.
745         * nis/nss_compat/compat-grp.c: Use 'e' flag when opening file.
746         Avoid additional fcntl to set O_CLOEXEC if not needed.
747         * nis/nss_compat/compat-initgroups.c: Likewise.
748         * nis/nss_compat/compat-pwd.c: Likewise.
749         * nis/nss_compat/compat-spwd.c: Likewise.
750
751 2007-07-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
752
753         [BZ #3665]
754         * manual/errno.texi: Change ECANCELED value to 119.
755
756         [BZ #4610]
757         * mach/lock-intern.h: Include <sys/cdefs.h>.
758
759         [BZ #4178]
760         * sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before
761         reading A.
762
763         [BZ #4126]
764         * sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Define alias
765         to __sigsuspend.
766
767         * sysdeps/mach/i386/sysdep.h: Include <dl-sysdep.h> and <tls.h>.
768
769 2006-06-13  Thomas Schwinge  <tschwinge@gnu.org>
770
771         * sysdeps/mach/hurd/tls.h: Change `ASSEMBLER' conditional to
772         `__ASSEMBLER__'.
773         * sysdeps/mach/hurd/i386/tls.h: Likewise.
774
775 2007-07-21  Ulrich Drepper  <drepper@redhat.com>
776
777         * nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC for
778         descriptor received from nscd.
779
780         * sysdeps/unix/sysv/linux/bits/socket.h: Define MSG_CMSG_CLOEXEC.
781
782         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_CLOEXEC.
783         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
784         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
785         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
786         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
787         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
788
789 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
790
791         [BZ #4816]
792         * manual/signal.texi (Non-atomic Example): Make memory var volatile.
793
794         [BZ #4813]
795         * login/forkpty.c (forkpty): Close master and slave fds on
796         fork failure.  Patch by
797         Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>.
798
799 2007-07-18  Jakub Jelinek  <jakub@redhat.com>
800
801         * include/features.h (__USE_ISOC95): New define.
802         * wcsmbs/wchar.h (fwprintf, fwscanf, wprintf, wscanf, swprintf,
803         swscanf, vfwprintf, vwprintf, vswprintf, fwide): Define even
804         for -std=iso9899:199409.
805         * CONFORMANCE: Remove comments about unsupported AMD1.
806
807 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
808
809         * sysdeps/ia64/sched_cpucount.c: New file.
810         * sysdeps/powerpc/sched_cpucount.c: New file.
811
812         * sysdeps/unix/sysv/linux/bits/sched.h (__sched_cpucount): Add
813         __BEGIN_DECLS/__END_DECLS around the prototype.
814         * bits/sched.h (__sched_cpucount): Likewise.  Make second argument
815         pointer to const cpu_set_t.
816
817         * bits/types.h: Don't include stddef.h, don't define __need_size_t.
818         * signal/signal.h <__USE_BSD || __USE_XOPEN_EXTENDED>: Define
819         __need_size_t and include stddef.h.
820         * sysvipc/sys/msg.h: Likewise.
821         * posix/sched.h: Likewise.
822         * hurd/hurd/signal.h (__need_size_t): Define.
823
824         * CONFORMANCE: ctype.h and wctype.h no longer define size_t,
825         neither does signal.h in pedantic ISO C namespaces.  stdio.h
826         no longer defines wint_t or wchar_t.
827
828         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): New function.
829         * debug/vfwprintf_chk.c (__vfwprintf_chk): Use
830         _IO_acquire_lock_clear_flags2 instead of _IO_acquire_lock.
831         * debug/vprintf_chk.c (__vprintf_chk): Likewise.
832         * debug/vwprintf_chk.c (__vwprintf_chk): Likewise.
833         * debug/vfprintf_chk.c (__vfprintf_chk): Likewise.
834         * debug/fwprintf_chk.c (__fwprintf_chk): Likewise.
835         * debug/printf_chk.c (__printf_chk): Likewise.
836         * debug/fprintf_chk.c (__fprintf_chk): Likewise.
837         * debug/wprintf_chk.c (__wprintf_chk): Likewise.
838
839         * sysdeps/pthread/bits/stdio-lock.h (_IO_acquire_lock_clear_flags2):
840         Define.
841
842         * bits/confname.h (_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS): Define.
843         * posix/getconf.c (vars): Add POSIX_V6_WIDTH_RESTRICTED_ENVS.
844
845 2007-07-16  Jakub Jelinek  <jakub@redhat.com>
846
847         [BZ #4792]
848         * stdlib/stdlib.h (realloc): Remove __attribute_malloc__.
849         * malloc/malloc.h (realloc): Likewise.
850
851         * libio/iopopen.c (_IO_new_proc_open): Don't close child_std_end
852         if one of proc_file_chain streams has that fileno.
853         * stdio-common/Makefile (tests): Add tst-popen2.
854         * stdio-common/tst-popen2.c: New test.
855
856 2007-07-14  Jakub Jelinek  <jakub@redhat.com>
857
858         * elf/ldconfig.c: Allow GPLv2 or any later version.
859         * elf/readlib.c: Likewise.
860         * elf/chroot_canon.c: Likewise.
861         * elf/cache.c: Likewise.
862         * nscd/mem.c: Likewise.
863         * nscd/getpwuid_r.c: Likewise.
864         * nscd/grpcache.c: Likewise.
865         * nscd/aicache.c: Likewise.
866         * nscd/getsrvbynm_r.c: Likewise.
867         * nscd/nscd.c: Likewise.
868         * nscd/servicescache.c: Likewise.
869         * nscd/getsrvbypt_r.c: Likewise.
870         * nscd/initgrcache.c: Likewise.
871         * nscd/gethstbyad_r.c: Likewise.
872         * nscd/gethstbynm2_r.c: Likewise.
873         * nscd/getgrnam_r.c: Likewise.
874         * nscd/nscd_setup_thread.c: Likewise.
875         * nscd/getpwnam_r.c: Likewise.
876         * nscd/gai.c: Likewise.
877         * nscd/connections.c: Likewise.
878         * nscd/dbg_log.c: Likewise.
879         * nscd/cache.c: Likewise.
880         * nscd/hstcache.c: Likewise.
881         * nscd/nscd_conf.c: Likewise.
882         * nscd/getgrgid_r.c: Likewise.
883         * nscd/pwdcache.c: Likewise.
884         * catgets/gencat.c: Likewise.
885         * locale/programs/linereader.h: Likewise.
886         * locale/programs/locarchive.c: Likewise.
887         * locale/programs/ld-paper.c: Likewise.
888         * locale/programs/locfile-kw.h: Likewise.
889         * locale/programs/ld-address.c: Likewise.
890         * locale/programs/xmalloc.c: Likewise.
891         * locale/programs/ld-time.c: Likewise.
892         * locale/programs/localedef.c: Likewise.
893         * locale/programs/simple-hash.c: Likewise.
894         * locale/programs/xstrdup.c: Likewise.
895         * locale/programs/ld-numeric.c: Likewise.
896         * locale/programs/locfile-kw.gperf: Likewise.
897         * locale/programs/ld-collate.c: Likewise.
898         * locale/programs/charmap-kw.gperf: Likewise.
899         * locale/programs/charmap.h: Likewise.
900         * locale/programs/charmap-kw.h: Likewise.
901         * locale/programs/config.h: Likewise.
902         * locale/programs/locfile.c: Likewise.
903         * locale/programs/ld-ctype.c: Likewise.
904         * locale/programs/charmap.c: Likewise.
905         * locale/programs/ld-messages.c: Likewise.
906         * locale/programs/repertoire.h: Likewise.
907         * locale/programs/locale.c: Likewise.
908         * locale/programs/ld-name.c: Likewise.
909         * locale/programs/linereader.c: Likewise.
910         * locale/programs/locfile.h: Likewise.
911         * locale/programs/3level.h: Likewise.
912         * locale/programs/ld-monetary.c: Likewise.
913         * locale/programs/ld-measurement.c: Likewise.
914         * locale/programs/charmap-dir.c: Likewise.
915         * locale/programs/ld-identification.c: Likewise.
916         * locale/programs/localedef.h: Likewise.
917         * locale/programs/charmap-dir.h: Likewise.
918         * locale/programs/repertoire.c: Likewise.
919         * locale/programs/simple-hash.h: Likewise.
920         * locale/programs/ld-telephone.c: Likewise.
921         * locale/programs/locale-spec.c: Likewise.
922         * locale/programs/locfile-token.h: Likewise.
923         * posix/getconf.c: Likewise.
924         * iconv/dummy-repertoire.c: Likewise.
925         * iconv/iconv_charmap.c: Likewise.
926         * iconv/iconvconfig.c: Likewise.
927         * iconv/iconv_prog.c: Likewise.
928         * malloc/memusagestat.c: Likewise.
929         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Likewise.
930
931 2007-07-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
932
933         * sysdeps/sh/bsd-setjmp.S (setjmp): Use correct argument registers.
934         * sysdeps/sh/bsd-_setjmp.S (_setjmp): Likewise.
935         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Do correct sanity
936         check for the first argument.
937
938 2007-07-12  Jakub Jelinek  <jakub@redhat.com>
939
940         [BZ #4775]
941         * math/tgmath.h (__tgmath_real_type_sub): Formatting.
942         (__tgmath_real_type): Fix if expr is const int or other const
943         qualified integral type.
944         (__TGMATH_UNARY_REAL_ONLY): Rewritten to avoid using statement
945         expressions and handle const qualified arguments.
946         (__TGMATH_BINARY_FIRST_REAL_ONLY, __TGMATH_UNARY_REAL_IMAG,
947         __TGMATH_UNARY_REAL_IMAG_RET_REAL): Likewise.
948         (__TGMATH_UNARY_REAL_RET_ONLY): Rewritten to avoid using
949         statement expressions.
950         (__TGMATH_BINARY_REAL_ONLY, __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY,
951         __TGMATH_TERNARY_REAL_ONLY, __TGMATH_BINARY_REAL_IMAG): Likewise.
952         (__TGMATH_UNARY_IMAG): Define.
953         (conj, cproj): Use __TGMATH_UNARY_IMAG macro.
954         * math/Makefile (tests): Add test-tgmath2.
955         (CFLAGS-test-tgmath2.c): Add.
956         * math/test-tgmath.c (fy, dy, ly, fz, dz, lz, count_cdouble,
957         count_cfloat, count_cldouble): New variables.
958         (NCCALLS): Define.
959         (main): Check number of complex calls as well.
960         (F(compile_test)): Add complex tests and tests with const qualified
961         arguments.
962         (y, z, ccount): Define.
963         (F(cacos), F(casin), F(catan), F(ccos), F(csin), F(ctan), F(cacosh),
964         F(casinh), F(catanh), F(ccosh), F(csinh), F(ctanh), F(cexp), F(clog),
965         F(csqrt), F(cpow), F(cabs), F(carg), F(creal), F(cimag), F(conj),
966         F(cproj)): New functions.
967         * math/test-tgmath2.c: New test.
968
969 2007-07-11  Jakub Jelinek  <jakub@redhat.com>
970
971         [BZ #4776]
972         * elf/dl-load.c (_dl_rtld_di_serinfo): Output / in LD_LIBRARY_PATH,
973         RPATH etc. as "/" rather than "", don't segfault on empty paths,
974         instead output ".".
975         * dlfcn/Makefile (distribute): Add glreflib3.c.
976         (module-names): Add glreflib3.
977         ($(objpfx)tst-dlinfo.out): Depend on glreflib3.so rather than
978         glreflib1.so.
979         (LDFLAGS_glreflib3.so): New.
980         * dlfcn/tst-dlinfo.c (do_test): Load glreflib3.so instead of
981         glreflib1.so.
982         * dlfcn/glreflib3.c: New file.
983
984         * intl/finddomain.c (_nl_find_domain): If _nl_explode_name
985         returned -1, return NULL.
986         * intl/explodename.c (_nl_explode_name): Return -1 if
987         _nl_normalize_codeset failed.
988
989 2007-07-07  Steven Munroe  <sjmunroe@us.ibm.com>
990
991         * sysdeps/powerpc/powerpc32/power6/memset.S: Update comments.
992         Specify .machine power6 to get ISA-V2.0 branch hints.  Unroll loops
993         and avoid branch misspredicts for > 31 bytes memset case.
994         * sysdeps/powerpc/powerpc64/power6/memset.S: Likewise.
995         Remove toc ref to __cache_line_size.
996
997         * sysdeps/powerpc/powerpc32/power4/memcmp.S: Specify .machine power4
998         to get ISA-V2.0 branch hints.
999         * sysdeps/powerpc/powerpc32/power4/memcpy.S: Likewise
1000         * sysdeps/powerpc/powerpc32/power4/memset.S: Likewise
1001         * sysdeps/powerpc/powerpc32/power6/memcpy.S: Likewise.
1002         * sysdeps/powerpc/powerpc64/power4/memcmp.S: Likewise.
1003         * sysdeps/powerpc/powerpc64/power4/memcpy.S: Likewise.
1004         * sysdeps/powerpc/powerpc64/power4/memset.S: Likewise.
1005         Remove toc ref to __cache_line_size.
1006
1007         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S:
1008         Include math_ldbl_opt.h.
1009
1010 2007-07-10  Ulrich Drepper  <drepper@redhat.com>
1011
1012         [BZ #4773]
1013         * time/strptime_l.c (__strptime_internal): Implement greedy
1014         matching of weekday and month names.
1015
1016 2007-07-09  Roland McGrath  <roland@redhat.com>
1017
1018         * elf/elf.h (NT_GNU_ABI_TAG): New macro.
1019         (ELF_NOTE_ABI): Use it.
1020         (NT_GNU_HWCAP, NT_GNU_BUILD_ID): New macros.
1021
1022 2007-07-09  Ulrich Drepper  <drepper@redhat.com>
1023
1024         * sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new entries.
1025         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
1026
1027 2007-07-07  Ulrich Drepper  <drepper@redhat.com>
1028
1029         [BZ #4745]
1030         * stdio-common/vfscanf.c (_IO_vfscanf): Add additional test for EOF
1031         in loop to look for conversion specifier to avoid testing of
1032         wrong errno value.
1033         * stdio-common/Makefile (tests): Add bug18, bug18a, bug19, bug19a.
1034         * stdio-common/bug18.c: New file.
1035         * stdio-common/bug18a.c: New file.
1036         * stdio-common/bug19.c: New file.
1037         * stdio-common/bug19a.c: New file.
1038
1039 2007-07-05  Mike Frysinger  <vapier@gentoo.org>
1040
1041         * Makeconfig ($(common-objpfx)gnu/lib-names.stmp): Use LC_ALL=C when
1042         running awk script.
1043
1044 2007-07-01  Jakub Jelinek  <jakub@redhat.com>
1045
1046         * elf/dl-sysdep.c (_dl_important_hwcaps): Add integer overflow check.
1047         * elf/dl-minimal.c (__libc_memalign): Likewise.  Handle malloc (0).
1048         Return NULL if mmap failed instead of asserting it does not.
1049         (calloc): Check for integer overflow.
1050
1051         * elf/dl-minimal.c (__strtoul_internal): Fix parsing of numbers bigger
1052         than LONG_MAX / 10.
1053
1054 2007-07-03  Jakub Jelinek  <jakub@redhat.com>
1055
1056         [BZ #4702]
1057         * nis/nss-default.c: Include errno.h.
1058         (init): Preserve errno.
1059
1060 2007-07-02  Ulrich Drepper  <drepper@redhat.com>
1061
1062         * sysdeps/unix/sysv/linux/bits/socket.h (PF_UNIX): Update comment.
1063
1064 2007-06-30  Ulrich Drepper  <drepper@redhat.com>
1065
1066         * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_RXRPC and AF_RXRPC.
1067
1068 2007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1069
1070         * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_IUCV and AF_IUCV.
1071
1072 2007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1073
1074         * sysdeps/s390/dl-procinfo.c: New file.
1075         * sysdeps/s390/dl-procinfo.h: New file.
1076         * sysdeps/unix/sysv/linux/s390/dl-procinfo.h: New file.
1077
1078 2007-06-29  Jakub Jelinek  <jakub@redhat.com>
1079
1080         * elf/dl-load.c (open_verify): Find .note.ABI-tag notes even
1081         in PT_NOTE segments with multiple notes.
1082         * elf/readelflib.c (process_elf_file): Likewise.
1083
1084 2007-06-22  Ulrich Drepper  <drepper@redhat.com>
1085
1086         * nis/nis_domain_of.c (__nis_domain_of): Make the code a bit more
1087         ISO C compliant.
1088
1089 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
1090
1091         * elf/dl-close.c (free_mem): Free _dl_scope_free_list.
1092
1093 2007-06-13  Jakub Jelinek  <jakub@redhat.com>
1094
1095         * include/link.h: Don't include rtld-lowlevel.h.
1096         (struct link_map): Remove l_scope_lock.
1097         * sysdeps/generic/ldsodefs.h: Don't include rtld-lowlevel.h.
1098         (_dl_scope_free_list): New field (variable) in _rtld_global.
1099         (DL_LOOKUP_SCOPE_LOCK): Remove.
1100         (_dl_scope_free): New prototype.
1101         * elf/dl-runtime.c (_dl_fixup): Don't use __rtld_mrlock_*lock.
1102         Don't pass DL_LOOKUP_SCOPE_LOCK to _dl_lookup_symbol_x.
1103         (_dl_profile_fixup): Likewise.
1104         * elf/dl-sym.c (do_sym): Likewise.  Use wrapped _dl_lookup_symbol_x
1105         whenever !RTLD_SINGLE_THREAD_P, use THREAD_GSCOPE_SET_FLAG and
1106         THREAD_GSCOPE_RESET_FLAG around it.
1107         * elf/dl-close.c (_dl_close_worker): Don't use
1108         __rtld_mrlock_{change,done}.  Call _dl_scope_free on the old
1109         scope.  Make sure THREAD_GSCOPE_WAIT () happens if any old
1110         scopes were queued or if l_scope_mem has been abandoned.
1111         * elf/dl-open.c (_dl_scope_free): New function.
1112         (dl_open_worker): Use it.  Don't use __rtld_mrlock_{change,done}.
1113         * elf/dl-support.c (_dl_scope_free_list): New variable.
1114         * elf/dl-lookup.c (add_dependency): Remove flags argument.
1115         Remove DL_LOOKUP_SCOPE_LOCK handling.
1116         (_dl_lookup_symbol_x): Adjust caller.  Remove DL_LOOKUP_SCOPE_LOCK
1117         handling.
1118         * elf/dl-object.c (_dl_new_object): Don't use
1119         __rtld_mrlock_initialize.
1120
1121 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
1122
1123         * sysdeps/generic/ldsodefs.h (rtld_global): Reorder some elements
1124         to fill in holes
1125         (rtld_global_ro): Likewise.
1126
1127 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
1128
1129         * elf/dl-addr.c (_dl_addr): Skip PT_LOAD checking if l_contiguous.
1130         Move PT_LOAD checking to...
1131         (_dl_addr_inside_object): ... here, new function.
1132         * elf/dl-sym.c (do_sym): If not l_contiguous,
1133         call _dl_addr_inside_object.
1134         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
1135         * dlfcn/dlinfo.c (dlinfo_doit): Likewise.
1136         * elf/dl-open.c (dl_open_worker): Likewise.
1137         (_dl_addr_inside_object): New function if IS_IN_rtld.
1138         * elf/dl-load.c (_dl_map_object_from_fd): Set l_contiguous if no
1139         holes are present or are PROT_NONE protected.
1140         * include/link.h (struct link_map): Add l_contiguous field.
1141         * sysdeps/generic/ldsodefs.h (_dl_addr_inside_object): New prototype.
1142
1143 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
1144             Tomas Janousek  <tjanouse@redhat.com>
1145             Ulrich Drepper  <drepper@redhat.com>
1146
1147         [BZ #4647]
1148         * resolv/res_send.c (send_dg): Remove socket_pf.  Use ipv6_unavail
1149         member in __res_state, only convaddr4to6 if nssocks[ns] is a PF_INET6
1150         socket.
1151         * resolv/resolv.h (__res_state): Add ipv6_unavail member.  Make
1152         unused member a bitmap.
1153         * resolv/res_init.c (__res_vinit): Reset ipv6_unavail if IPv6
1154         servers are configured.
1155
1156 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
1157
1158         * elf/rtld.c (dl_main): Don't call init_tls more than once.
1159
1160 2007-06-17  Andreas Schwab  <schwab@suse.de>
1161
1162         * sysdeps/generic/initfini.c: Tell gcc about the nonstandard sections.
1163
1164 2007-06-16  Andreas Jaeger  <aj@suse.de>
1165
1166         [BZ #4125]
1167         * sysdeps/unix/sysv/linux/sys/ptrace.h
1168         (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK,
1169         PTRACE_O_TRACEVFORK, PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC,
1170         PTRACE_O_TRACEVFORKDONE, PTRACE_O_TRACEEXIT, PTRACE_O_MASK,
1171         PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK, PTRACE_EVENT_CLONE,
1172         PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE, PTRACE_EVENT_EXIT):
1173         Define.
1174         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
1175         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise.
1176         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
1177         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
1178
1179 2007-06-16  Ulrich Drepper  <drepper@redhat.com>
1180
1181         [BZ #4599]
1182         * sysdeps/unix/sysv/linux/check_pf.c (make_request): When
1183         determining whether there are IPv4/IPv6 addresses, ignore loopback
1184         addresses.
1185
1186 2007-06-14 Uros Bizjak <ubizjak@gmail.com>
1187
1188         * soft-fp/soft-fp.h (CMPtype): Define to "int" if undefined.
1189         * soft-fp/eqdf2.c (__eqdf2): Use CMPtype instead of int
1190         as the return type.  Change type of "r" variable to CMPtype.
1191         * soft-fp/eqsf2.c (__eqsf2): Likewise.
1192         * soft-fp/eqtf2.c (__eqtf2): Likewise.
1193         * soft-fp/gedf2.c (__gedf2): Likewise.
1194         * soft-fp/gesf2.c (__gesf2): Likewise.
1195         * soft-fp/getf2.c (__getf2): Likewise.
1196         * soft-fp/ledf2.c (__ledf2): Likewise.
1197         * soft-fp/lesf2.c (__lesf2): Likewise.
1198         * soft-fp/letf2.c (__letf2): Likewise.
1199         * soft-fp/unorddf2 (__unorddf2): Likewise.
1200         * soft-fp/unordsf2 (__unordsf2): Likewise.
1201         * soft-fp/unordtf2 (__unordtf2): Likewise.
1202
1203 2007-06-09  Ulrich Drepper  <drepper@redhat.com>
1204
1205         * elf/do-lookup.h (do_lookup_x): Read r_nlist before r_list and
1206         make sure gcc doesn't mess around with this.
1207
1208 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
1209
1210         * elf/dl-lookup.c (_dl_lookup_symbol_x): Remove use of r_nlist.
1211
1212 2007-06-08  Jakub Jelinek  <jakub@redhat.com>
1213
1214         * elf/dl-close.c (_dl_close_worker): Remove all to be removed
1215         libraries from the global scope at once and call THREAD_GSCOPE_WAIT
1216         at most once per _dl_close_worker.
1217
1218 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
1219
1220         * sysdeps/unix/sysv/linux/bits/sched.h: Make second parameter of
1221         __sched_cpucount as const.
1222         * posix/sched_cpucount.c: Adjust.
1223
1224         * posix/sched_cpucount.c (__sched_cpucount): Allow using special
1225         instruction for counting bits.
1226         * sysdeps/x86_64/sched_cpucount.c: New file.
1227
1228 2007-06-07  Ulrich Drepper  <drepper@redhat.com>
1229
1230         * configure.in: Avoid variable named BASH.
1231         * config.make.in: Likewise.
1232         Patch in part by Mike Frysinger.
1233
1234 2007-06-06  Jakub Jelinek  <jakub@redhat.com>
1235
1236         [BZ #4586]
1237         * sysdeps/i386/ldbl2mpn.c (__mpn_extract_long_double): Treat
1238         pseudo-zeros as zero.
1239         * sysdeps/x86_64/ldbl2mpn.c: New file.
1240         * sysdeps/ia64/ldbl2mpn.c: New file.
1241
1242 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
1243
1244         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Remove
1245         unused ily variable.  Fix nextafterl on +-__LDBL_MAX__ and +-Inf.
1246         Remove unreachable code at the end.
1247
1248 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
1249
1250         * sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c: Correct description of
1251         ldbl-128ibm in comment.
1252         (fpclassifyl): Correct classification of denormals.
1253         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Correct
1254         return value for MIN denormal. Rewrite using long double math too
1255         correctly handle denormals and canonicalize the results.
1256
1257 2007-06-05  Jakub Jelinek  <jakub@redhat.com>
1258
1259         * sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
1260         (__mpn_construct_long_double): Fix conversion where result ought
1261         to be smaller than __LDBL_MIN__, or the low double should be
1262         denormal.  Fix decision where to negate low double - honor round
1263         to even rules.
1264         * stdio-common/tst-sprintf2.c: Include string.h.
1265         (COMPARE_LDBL): Define.
1266         (TEST): Also test whether a string hexadecimal float representation
1267         can be parsed back to the number.
1268         (main): Add a couple of further tests.
1269
1270 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
1271
1272         * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
1273         (PRINT_FPHEX_LONG_DOUBLE): Fix printing numbers where lower double
1274         is non-zero, but smaller than 2 * __DBL_MIN__.
1275         * stdio-common/tst-sprintf2.c: New test.
1276         * stdio-common/Makefile (tests): Add tst-sprintf2.
1277
1278         * math/test-misc.c (main): Don't run last batch of tests with
1279         IBM long double format.
1280
1281 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
1282
1283         * sysdeps/powerpc/powerpc32/970/fpu/Implies: New file.
1284         * sysdeps/powerpc/powerpc32/power5/fpu/Implies: New file.
1285         * sysdeps/powerpc/powerpc32/power5+/fpu/Implies: New file.
1286         * sysdeps/powerpc/powerpc32/power6/fpu/Implies: New file.
1287         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
1288         * sysdeps/powerpc/powerpc64/970/fpu/Implies: New file.
1289         * sysdeps/powerpc/powerpc64/power5/fpu/Implies: New file.
1290         * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: New file.
1291         * sysdeps/powerpc/powerpc64/power6/fpu/Implies: New file.
1292         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
1293         * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: New file.
1294         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies:
1295         New file.
1296         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies:
1297         New file.
1298         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies:
1299         New file.
1300         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies:
1301         New file.
1302         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies:
1303         New file.
1304         * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: New file.
1305         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies:
1306         New file.
1307         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies:
1308         New file.
1309         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies:
1310         New file.
1311         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies:
1312         New file.
1313         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies:
1314         New file.
1315
1316 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
1317
1318         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: Move.
1319         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: To here.
1320         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: Move.
1321         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: To here.
1322         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: Move.
1323         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: To here.
1324         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: Move.
1325         * sysdeps/powerpc/powerpc32/power4/fpu/s_llroundf.S: To here.
1326
1327 2007-05-22  Steven Munroe  <sjmunroe@us.ibm.com>
1328
1329         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S
1330         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
1331         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S
1332         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
1333         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S
1334         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
1335         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S
1336         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
1337
1338 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
1339
1340         * sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c: New file.
1341         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: New file.
1342         * sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c: New file.
1343         * sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c: New file.
1344
1345 2007-03-15  Steven Munroe  <sjmunroe@us.ibm.com>
1346
1347         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S
1348         [LONG_DOUBLE_COMPAT]: Add compat_symbol for llrintl@@GLIBC_2_1.
1349
1350 2006-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
1351
1352         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: New File
1353         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: New File
1354         * sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: New File
1355         * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: New File
1356
1357 2006-10-20  Steven Munroe  <sjmunroe@us.ibm.com>
1358
1359         * sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c: New file.
1360         * sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c: New file.
1361
1362 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
1363
1364         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: New file.
1365         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: New file.
1366
1367         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: Moved.
1368         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: Likewise.
1369         * sysdeps/powerpc/powerpc32/power4/fpu/Makefile: To here.
1370         * sysdeps/powerpc/powerpc32/power4/fpu/mpa.c: Likewise.
1371
1372 2006-09-29  Steven Munroe  <sjmunroe@us.ibm.com>
1373
1374         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S: New file.
1375         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S: New file.
1376         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: New file.
1377         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: New file.
1378
1379 2006-09-28  Steven Munroe  <sjmunroe@us.ibm.com>
1380
1381         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: New file.
1382         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: New file.
1383         * sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: New file.
1384         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
1385         * sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: New file.
1386         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
1387
1388 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
1389
1390         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: New file.
1391         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: New file.
1392         * sysdeps/powerpc/powerpc64/power4/fpu/Makefile: New file.
1393         * sysdeps/powerpc/powerpc64/power4/fpu/mpa.c: New file.
1394
1395 2006-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
1396
1397         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: New file.
1398         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S: New file.
1399         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: New file.
1400         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: New file.
1401         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S: New file.
1402         * sysdeps/powerpc/powerpc32/power5+/fpu/s_roundf.S: New file.
1403         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S: New file.
1404         * sysdeps/powerpc/powerpc32/power5+/fpu/s_truncf.S: New file.
1405         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: New file.
1406         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S: New file.
1407         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: New file.
1408         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: New file.
1409         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S: New file.
1410         * sysdeps/powerpc/powerpc64/power5+/fpu/s_roundf.S: New file.
1411         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S: New file.
1412         * sysdeps/powerpc/powerpc64/power5+/fpu/s_truncf.S: New file.
1413
1414 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
1415
1416         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: New file.
1417         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: New file.
1418
1419 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
1420
1421         * sysdeps/powerpc/powerpc32/power6/memset.S: New file.
1422         * sysdeps/powerpc/powerpc64/power6/memset.S: New file.
1423
1424 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
1425
1426         * sysdeps/powerpc/powerpc32/970/Implies: New file.
1427         * sysdeps/powerpc/powerpc32/power5/Implies: New file.
1428         * sysdeps/powerpc/powerpc32/power5+/Implies: New file.
1429         * sysdeps/powerpc/powerpc32/power6/Implies: New file.
1430         * sysdeps/powerpc/powerpc32/power6x/Implies: New file.
1431         * sysdeps/powerpc/powerpc64/970/Implies: New file.
1432         * sysdeps/powerpc/powerpc64/power5/Implies: New file.
1433         * sysdeps/powerpc/powerpc64/power5+/Implies: New file.
1434         * sysdeps/powerpc/powerpc64/power6/Implies: New file.
1435         * sysdeps/powerpc/powerpc64/power6x/Implies: New file.
1436
1437 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
1438
1439         * sysdeps/powerpc/powerpc32/power4/memset.S: New file
1440
1441 2007-03-13  Steven Munroe  <sjmunroe@us.ibm.com>
1442
1443         * sysdeps/powerpc/powerpc64/memcpy.S: Improve aligned loop to minimize
1444         branch miss-predicts. Ensure that cache line crossing does not impact
1445         dispatch grouping.
1446
1447 2006-12-13  Steven Munroe  <sjmunroe@us.ibm.com>
1448
1449         * sysdeps/powerpc/powerpc64/power4/memcopy.h: Replace with include
1450         "../../powerpc32/power4/memcopy.h".
1451         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: Replace with include
1452         "../../powerpc32/power4/wordcopy.c".
1453
1454 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
1455
1456         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: Moved.
1457         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: Likewise.
1458         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: Likewise.
1459         * sysdeps/powerpc/powerpc32/power4/Makefile: To here.
1460         * sysdeps/powerpc/powerpc32/power4/memcopy.h: Likewise.
1461         * sysdeps/powerpc/powerpc32/power4/wordcopy.c: Likewise.
1462
1463 2006-09-10  Steven Munroe  <sjmunroe@us.ibm.com>
1464
1465         * sysdeps/powerpc/powerpc32/power6/memcpy.S: New file.
1466
1467 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
1468
1469         * sysdeps/powerpc/powerpc32/power6/wordcopy.c: New file.
1470         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: New file.
1471         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: New file.
1472         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: New file.
1473         * sysdeps/powerpc/powerpc64/power4/Makefile: New file.
1474         * sysdeps/powerpc/powerpc64/power4/memcopy.h: New file.
1475         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: New file.
1476         * sysdeps/powerpc/powerpc64/power6/wordcopy.c: New file.
1477
1478 2006-07-06  Steven Munroe  <sjmunroe@us.ibm.com>
1479
1480         * sysdeps/powerpc/powerpc64/power6/memcpy.S: New file.
1481
1482 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
1483
1484         * sysdeps/powerpc/powerpc32/power4/memcmp.S: New file.
1485         * sysdeps/powerpc/powerpc32/power4/memcpy.S: New file.
1486         * sysdeps/powerpc/powerpc32/power4/memset.S: New file.
1487         * sysdeps/powerpc/powerpc32/power4/strncmp.S: New file.
1488         * sysdeps/powerpc/powerpc64/power4/memcmp.S: New file.
1489         * sysdeps/powerpc/powerpc64/power4/memcpy.S: New file.
1490         * sysdeps/powerpc/powerpc64/power4/strncmp.S: New file.
1491
1492 2007-05-29  Roland McGrath  <roland@redhat.com>
1493
1494         * po/Makefile (po-sed-cmd): New variable.
1495         (libc.pot.files): Move sed command text in there, avoid \ inside ''.
1496
1497 2007-05-29  Ulrich Drepper  <drepper@redhat.com>
1498
1499         * crypt/md5-crypt.c: Fix comment.
1500
1501         * nscd/nscd_helper.c (get_mapping): Handle short replies instead
1502         of crashing.  When this is the case or if the reply is malformed,
1503         don't try to close the new file descriptor since it does not
1504         exist.
1505         Patch in part by Guillaume Chazarain <guichaz@yahoo.fr>.
1506
1507 2007-05-28  Jakub Jelinek  <jakub@redhat.com>
1508
1509         * sysdeps/unix/sysv/linux/futimes.c (miss_utimensat): Don't define
1510         if __NR_utimensat is not defined.
1511
1512 2007-05-26  Ulrich Drepper  <drepper@redhat.com>
1513
1514         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Include <sysdep.h>.
1515
1516 2007-05-25  Jakub Jelinek  <jakub@redhat.com>
1517
1518         * io/bits/fcntl2.h (__open_2): Add nonnull attribute.
1519         (open): Fix comment typos.  Don't call __open_2 if flags
1520         is a compile time constant without O_CREAT.
1521         (__open64_2): Add nonnull attribute.
1522         (open64): Fix comment typos.  Don't call __open64_2 if flags
1523         is a compile time constant without O_CREAT.
1524         (__openat_2): Add nonnull attribute, fix nonnull attribute
1525         on redirect.
1526         (openat): Fix comment typos.  Don't call __openat_2 if flags
1527         is a compile time constant without O_CREAT.
1528         (__openat64_2): Add nonnull attribute, fix nonnull attribute
1529         on redirect.
1530         (openat64): Fix comment typos.  Don't call __openat64_2 if flags
1531         is a compile time constant without O_CREAT.
1532
1533 2007-05-24  Ulrich Drepper  <drepper@redhat.com>
1534
1535         * Makerules (sysd-rules): Define PTW for ptw-* files.
1536         * Versions: Define GLIBC_2.7 for libc.
1537         * include/stdio.h: Declare __fortify_fail.
1538         * debug/fortify_fail.c: New file.
1539         * debug/Makefile (routines): Add fortify_fail.
1540         * debug/chk_fail.c: Use __fortify_fail.
1541         * debug/stack_chk_fail.c: Likewise.
1542         * io/Versions: Export __open_2, __open64_2, __openat_2, and
1543         __openat64_2 for GLIBC_2.7.
1544         * io/fcntl.h: When compiling with fortification, include bits/fcntl2.h.
1545         * io/open.c: Define *_2 variant of function which checks for O_CREAT
1546         and fails if necessary.
1547         * io/open64.c: Likewise.
1548         * io/openat.c: Likewise.
1549         * io/openat64.c: Likewise.
1550         * sysdeps/unix/sysv/linux/open64.c: Likewise.
1551         * sysdeps/unix/sysv/linux/openat.c: Likewise.
1552         * sysdeps/unix/sysv/linux/openat64.c: Likewise.
1553         * io/bits/fcntl2.h: New file.
1554         * include/fcntl.h: Declare __open_2, __open64_2, __openat_2, and
1555         __openat64_2.
1556         * include/bits/fcntl2.h: New file.
1557         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
1558         Add open_2.
1559         * sysdeps/unix/sysv/linux/open_2.c: New file.
1560
1561 2007-05-21  Ulrich Drepper  <drepper@redhat.com>
1562
1563         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Pass correct value
1564         as second parameter to handle_intel.
1565
1566         * nscd/aicache.c (addhstaiX): If reported TTL is zero don't cache
1567         the entry.
1568
1569         * sysdeps/unix/sysv/linux/x86_64/sysconf.c: Move cache information
1570         handling to ...
1571         * sysdeps/x86_64/cacheinfo.c: ... here.  New file.
1572         * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
1573         cacheinfo.
1574         * sysdeps/x86_64/memcpy.S: Complete rewrite.
1575         * sysdeps/x86_64/mempcpy.S: Adjust appropriately.
1576         Patch by Evandro Menezes <evandro.menezes@amd.com>.
1577
1578         * sysdeps/unix/sysv/linux/i386/epoll_pwait.S: New file.
1579
1580 2007-05-21  Jakub Jelinek  <jakub@redhat.com>
1581
1582         [BZ #4525]
1583         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add epoll_pwait.
1584         * sysdeps/unix/sysv/linux/epoll_pwait.c: New file.
1585         * sysdeps/unix/sysv/linux/syscalls.list (epoll_pwait): Remove.
1586
1587         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (epoll_pwait): Declare.
1588
1589         [BZ #4514]
1590         * stdio-common/vfprintf.c (vfprintf): Don't shadow workstart variable,
1591         reinitialize workend at the start of each do_positional format spec
1592         loop, free workstart before do_positional loops.
1593         (printf_unknown): Fix size of work_buffer.
1594         * stdio-common/tst-sprintf.c (main): Add 3 new testcases.
1595
1596         * malloc/hooks.c (MALLOC_STATE_VERSION): Bump.
1597         (public_sET_STATe): If ms->version < 3, put all chunks into
1598         unsorted chunks and clear {fd,bk}_nextsize fields of largebin
1599         chunks.
1600
1601         * malloc/malloc.c [MALLOC_DEBUG]: Revert 2007-05-13 changes.
1602         * malloc/hooks.c: Likewise.
1603         * malloc/arena.c: Likewise.
1604         * malloc/malloc.c (do_check_malloc_state): Don't assert
1605         n_mmaps is not greater than n_mmaps_max.  This removes the need
1606         for the previous change.
1607
1608         * malloc/Makefile (CFLAGS-malloc.c): Revert accidental
1609         2007-05-07 commit.
1610
1611 2007-05-19  Ulrich Drepper  <drepper@redhat.com>
1612
1613         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PRIVATE_FUTEX):
1614         Define for kernel >= 2.6.22.
1615
1616 2007-05-18  Ulrich Drepper  <drepper@redhat.com>
1617
1618         * elf/dl-close.c (_dl_close_worker): When removing object from
1619         global scope, wait for all lookups to finish afterwards.
1620         * elf/dl-open.c (add_to_global): When global scope array must
1621         grow, allocate a new one and free old array only after all
1622         lookups finish.
1623         * elf/dl-runtime.c (_dl_fixup): Protect using global scope.
1624         (_dl_lookup_symbol_x): Likewise.
1625         * elf/dl-support.c: Define _dl_wait_lookup_done.
1626         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add
1627         _dl_wait_lookup_done.
1628
1629         * malloc/malloc.c (do_check_chunk): Correct check for mmaped block
1630         not overlapping with arena.
1631
1632         * malloc/mcheck.c (reallochook): If size==0, free the block.
1633
1634         * rt/tst-shm.c: Use fstat64 instead of fstat.
1635
1636         * sysdeps/unix/sysv/linux/i386/sync_file_range.S: Fix case where
1637         __NR_sync_file_range is not defined.
1638
1639 2007-05-17  Ulrich Drepper  <drepper@redhat.com>
1640
1641         Dummy files to prevent stub versions from being used.
1642         * sysdeps/x86_64/fpu/k_cosl.c: New file.
1643         * sysdeps/x86_64/fpu/k_rem_pio2l.c: New file.
1644         * sysdeps/x86_64/fpu/k_sinl.c: New file.
1645         * sysdeps/x86_64/fpu/k_tanl.c: New file.
1646
1647         * version.h (VERSION): Set to 2.6.90.
1648
1649 2007-05-14  Ulrich Drepper  <drepper@redhat.com>
1650
1651         * version.h (VERSION): Define to 2.6.
1652         * include/features.h (__GLIBC_MINOR__): Define to 6.
1653
1654         * malloc/malloc.c: Use all small bin slots on 64-bit archs.
1655
1656         * malloc/malloc.c (largebin_index): Really have 32 buckets with 64
1657         sizes.
1658
1659 2007-05-13  Ulrich Drepper  <drepper@redhat.com>
1660
1661         * malloc/malloc.c [MALLOC_DEBUG]: Keep track of current maximum
1662         number of mmaps.  n_mmaps_max is the target.
1663         * malloc/hooks.c: Likewise.
1664         * malloc/arena.c: Likewise.
1665
1666 2007-05-12  Andreas Jaeger  <aj@suse.de>
1667
1668         * sysdeps/unix/sysv/linux/tst-getcpu.c: Include <unistd.h> for
1669         getpid.
1670
1671 2007-05-11  Ulrich Drepper  <drepper@redhat.com>
1672
1673         * elf/dl-close.c (_dl_close_worker): Help gcc to optimize by
1674         adding new variables.
1675
1676         * elf/dl-open.c (add_to_global): Introduce variable ns to help gcc
1677         optimize.  Completely extend global scope array before making the
1678         new entries visible.
1679
1680 2007-05-10  Ulrich Drepper  <drepper@redhat.com>
1681
1682         * sysdeps/unix/sysv/linux/tst-getcpu.c: New file.
1683         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (tests): Add
1684         tst-getcpu.
1685
1686         * include/link.h: Move l_version and l_nversion members around to
1687         fill gaps.
1688
1689         * scripts/check-c++-types.sh: Don't use -fnu89-inline option.
1690
1691         * sysdeps/unix/sysv/linux/sched_setaffinity.c
1692         (__sched_setaffinity_new): If syscall was successful and
1693         RESET_VGETCPU_CACHE is defined, use it before returning.
1694         * sysdeps/unix/sysv/linux/x86_64/sched_setaffinity.c: New file.
1695
1696         * io/sys/stat.h: Make sure struct timespec is defined for
1697         __USE_ATFILE.
1698
1699         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Define UTIME_NOW and
1700         UTIME_OMIT.
1701         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
1702         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
1703         * sysdeps/unix/sysv/linux/alpha/bits/stat.h: Likewise.
1704         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
1705         * sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
1706         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
1707         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_UTIMENSAT.
1708         * io/sys/stat.h: Declare utimensat, futimens.
1709         * io/utimensat.c: New file.
1710         * io/futimens.c: New file.
1711         * sysdeps/unix/sysv/linux/utimensat.c: New file.
1712         * sysdeps/unix/sysv/linux/futimens.c: New file.
1713         * io/Makefile (routines): Add utimensat, futimens.
1714         * io/Versions: Add utimensat, futimens to GLIBC_2.6.
1715         * sysdeps/unix/sysv/linux/lutimes.c: New file.
1716         * sysdeps/unix/sysv/linux/futimes.c: Use utimensat syscall if
1717         available.
1718
1719         * include/sys/cdefs.h: Redefine __nonnull so that test for
1720         incorrect parameters in the libc code itself are not omitted.
1721
1722 2007-05-09  Jakub Jelinek  <jakub@redhat.com>
1723
1724         * sysdeps/ia64/fpu/fraiseexcpt.c (feraiseexcept): Don't raise overflow
1725         exception in addition to inexact when asked to raise only FE_INEXACT.
1726
1727         [BZ #3427]
1728         * sysdeps/s390/fpu/feholdexcpt.c (feholdexcept): Don't clear exceptions
1729         in *envp.
1730
1731 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
1732
1733         [BZ #4403]
1734         * string/strfry.c (strfry): Make result more random.
1735
1736 2007-05-07  Richard Henderson  <rth@redhat.com>
1737
1738         * sysdeps/alpha/fpu/bits/mathinline.h (__isnanl): Don't define
1739         if __NO_LONG_DOUBLE_MATH.
1740         * sysdeps/unix/sysv/linux/alpha/ioperm.c: If BWX insns not
1741         available in the compiler, add .arch directive to the assembly.
1742
1743 2007-05-07  Jakub Jelinek  <jakub@redhat.com>
1744
1745         * sysdeps/alpha/fpu/s_nearbyint.c (nearbyintl): Fix version on
1746         compat_symbol to GLIBC_2_1.
1747         * sysdeps/alpha/fpu/s_fmin.S (fminl): Likewise.
1748         * sysdeps/alpha/fpu/s_trunc.c (truncl): Likewise.
1749         * sysdeps/alpha/fpu/s_fmax.S (fmaxl): Likewise.
1750         * sysdeps/alpha/fpu/s_lrint.c (lrintl, llrintl): Likewise.
1751         * sysdeps/alpha/fpu/s_lround.c (lroundl, llroundl): Likewise.
1752         * sysdeps/alpha/fpu/s_round.c (roundl): Likewise.
1753         * sysdeps/alpha/fpu/s_isnan.c (isnanl): Provide compat_symbol in
1754         libc, not libm.
1755         (__isnanl): New compat_symbol.
1756
1757 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
1758             Jakub Jelinek  <jakub@redhat.com>
1759
1760         * malloc/arena.c (heap_info): Add mprotect_size field, adjust pad.
1761         (new_heap): Initialize mprotect_size.
1762         (grow_heap): When growing, only mprotect from mprotect_size till
1763         new_size if mprotect_size is smaller.  When shrinking, use PROT_NONE
1764         MMAP for __libc_enable_secure only, otherwise use MADV_DONTNEED.
1765
1766 2007-04-30  Steven Munroe  <sjmunroe@us.ibm.com>
1767             Peter Bergner  <bergner@us.ibm.com>
1768
1769         * sysdeps/powerpc/bits/fenv.h: Declare __fe_mask_env extern.
1770         Define FE_NOMASK_ENV as FE_EANBLED_ENV.  Define FE_MASK_ENV.
1771         * sysdeps/powerpc/fpu/Makefile: Add fe_mask to libm-support.
1772         * sysdeps/powerpc/fpu/fe_mask.c: New file.
1773         * sysdeps/powerpc/fpu/fe_nomask.c: Correct comment.
1774         * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept):
1775         Call __fe_mask_env() if all FP exceptions disabled.
1776         * sysdeps/powerpc/fpu/feholdexcpt.c (feholdexcept): Copy high 32-bits
1777         from old FPSCR to new fenv to propagate DFP rounding modes.
1778         Call __fe_mask_env() if FP exceptions previously enabled.
1779         * sysdeps/powerpc/fpu/fesetenv.c (fesetenv): Change mask to merge
1780         exceptions from env.  Use __fe_nomask_env() or __fe_mask_env() when
1781         transitioning from all exceptions disabled to any exception enabled
1782         or visa versa.
1783         * sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Change mask to
1784         merge exceptions from env.  Call __fe_nomask_env or __fe_mask_env
1785         when transitioning from all exceptions disabled to any exception
1786         enabled or visa versa.
1787         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Moved to...
1788         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: ...here.
1789         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: Moved to...
1790         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: ...here.
1791         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_mask.c: New file.
1792         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c: New file.
1793
1794 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
1795
1796         [BZ #4465]
1797         * posix/unistd.h: Remove __THROW from fdatasync.
1798
1799 2007-05-06  Mike Frysinger  <vapier@gentoo.org>
1800
1801         [BZ #4465]
1802         * sysdeps/unix/sysv/linux/syscalls.list (fdatasync): Add "C" to args.
1803
1804 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
1805
1806         * stdio-common/vfprintf.c (process_string_arg): Optimize
1807         ridiculous precision in wide char code printing multi-byte string.
1808         Reported by Jim Meyering <jim@meyering.net>.
1809
1810         [BZ #4131]
1811         * elf/dl-addr.c (_dl_addr): Compare address with actual segment
1812         boundaries to work around systems with overlapping binary loading.
1813         Based on a patch by Suzuki <suzuki@in.ibm.com>.
1814
1815 2007-05-04  Ulrich Drepper  <drepper@redhat.com>
1816
1817         * stdio-common/vfprintf.c (process_string_arg): Adjust call to
1818         __mbsnrtowcs after last change.
1819
1820         * locale/programs/linereader.c (get_symname): Fix adding final NUL.
1821         (get_ident): Likewise.
1822
1823 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
1824
1825         * soft-fp/op-common.h (FP_TRUNC): Replace raising of FP_EX_INEXACT
1826         with setting the sticky bit.
1827         * math/test-misc.c (main): Add more truncation tests.
1828
1829 2007-04-14  Uros Bizjak  <ubizjak@gmail.com>
1830
1831         * soft-fp/floatunsidf.c (__floatunsidf): Use DFtype instead of
1832         double in the function declaration.
1833         * soft-fp/floatundidf.c (__floatundidf): Use DFtype instead of
1834         double in the function declaration.
1835         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
1836         float in the function declaration.
1837         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
1838         float in the function declaration.
1839
1840         * soft-fp/extended.h (FP_UNPACK_RAW_E): Do not increase X##_e for
1841         denormal operands.  Do not generate FP_EX_DENORM exception.
1842         (FP_UNPACK_RAW_EP): Ditto.
1843         (FP_UNPACK_SEMIRAW_E): Use FP_UNPACK_RAW_E instead of
1844         undefined _FP_UNPACK_RAW_E.
1845         (FP_UNPACK_SEMIRAW_EP): Use FP_UNPACK_RAW_EP instead of
1846         undefined _FP_UNPACK_RAW_EP.
1847         (FP_PACK_SEMIRAW_E): Use FP_PACK_RAW_E instead of
1848         undefined _FP_PACK_RAW_E.
1849         (FP_PACK_SEMIRAW_EP): Use FP_PACK_RAW_EP instead of
1850         undefined _FP_PACK_RAW_EP.
1851
1852         * soft-fp/op-2.h (_FP_FRAC_COPY_2_2): Define as alias to
1853         _FP_FRAC_COPY_2.
1854         * soft-fp/op-4.h (_FP_FRAC_COPY_2_2): Define as alias to
1855         _FP_FRAC_COPY_4.
1856
1857 2007-04-16  Uros Bizjak  <ubizjak@gmail.com>
1858             Jakub Jelinek  <jakub@redhat.com>
1859
1860         * soft-fp/op-common.h (FP_EXTEND): Do not abort when
1861         _FP_EXPBIAS_##dfs == _FP_EXPBIAS_##sfs.  Handle denormals for
1862         this case.
1863         * soft-fp/op-common.h (FP_TRUNC): Ditto.
1864
1865 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
1866
1867         * math/test-misc.c (main): Add tests for rounding long double
1868         values close to smallest double denormalized value to double.
1869
1870 2007-04-30  Joseph Myers  <joseph@codesourcery.com>
1871
1872         * soft-fp/op-common.h (FP_TRUNC): Correct off-by-one error in
1873         condition for truncating to 0.  Set sticky bit for such
1874         truncation.
1875
1876 2007-05-02  Jakub Jelinek  <jakub@redhat.com>
1877
1878         * stdio-common/vfprintf.c (process_string_arg): Use a VLA rather than
1879         fixed length array for ignore.
1880
1881 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
1882
1883         [BZ #4438]
1884         * stdio-common/vfprintf.c (process_string_arg): Don't overflow the
1885         stack for large precisions.
1886         * stdio-common/test-vfprintf.c (main): Add test for large
1887         precision.
1888
1889 2007-04-30  Jakub Jelinek  <jakub@redhat.com>
1890
1891         * stdio-common/printf_fp.c (___printf_fp): Don't print negative sign
1892         for exponent 0.
1893         * stdio-common/tfformat.c (sprint_doubles): Add a new test.
1894
1895         [BZ #4439]
1896         * resolv/inet_ntop.c (inet_ntop4): Take terminating '\0' into
1897         account in the size check.
1898         * resolv/tst-inet_ntop.c: New test.
1899         * resolv/Makefile (tests): Add tst-inet_ntop.
1900
1901 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
1902             Jakub Jelinek  <jakub@redhat.com>
1903
1904         [BZ #4349]
1905         * malloc/malloc.c: Keep separate list for first blocks on the bin
1906         lists with a given size.  This helps skipping over list elements
1907         we know won't fit in two places.
1908         Inspired by a patch by Tomash Brechko <tomash.brechko@gmail.com>.
1909
1910 2007-04-28  Ulrich Drepper  <drepper@redhat.com>
1911
1912         [BZ #4102]
1913         * sysdeps/posix/getaddrinfo.c (default_labels): Assign separate
1914         label to Teredo tunnel addresses 2001://32.
1915
1916 2007-04-27  Ulrich Drepper  <drepper@redhat.com>
1917
1918         * locale/programs/ld-collate.c (collate_read): Allow order_start
1919         after copy.
1920
1921         * locale/programs/ld-collate.c (collate_read): Fix printing of
1922         error message.
1923
1924         [BZ #3213]
1925         * locale/C-translit.h.in: Add entry for U2044.
1926
1927         [BZ #4342]
1928         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Allow
1929         hexa-decimal floats without exponent.
1930         * stdio-common/tstscanf.c (main): Adjust Test 8 test for success.
1931
1932 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
1933
1934         * sysdeps/unix/sysv/linux/bits/sched.h: Declare sched_getcpu.
1935         * sysdeps/unix/sysv/linux/sched_getcpu.c: New file.
1936         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: New file.
1937         * sysdeps/unix/sysv/linux/Versions: Export sched_getcpu for
1938         GLIBC_2.6.
1939         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (sysdep_routines):
1940         Add sched_getcpu.
1941
1942 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
1943
1944         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Return -1 instead
1945         of 0 after the out_fail label.
1946
1947 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
1948
1949         [BZ #4406]
1950         * iconv/gconv_charset.h (strip): Allow ':'.
1951         * iconv/iconv_open.c (iconv_open): Adjust comment.
1952
1953 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
1954
1955         * libio/bits/stdio.h (fgetc_unlocked): Add extern inline optimized
1956         version.
1957
1958 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
1959
1960         [BZ #4381]
1961         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Ensure sufficient
1962         alignment of buffer and tmp_buffer.
1963         * nis/nss_nis/nis-hosts.c (internal_nis_gethostent_r,
1964         internal_gethostbyname2_r, _nss_nis_gethostbyaddr_r): Ensure sufficient
1965         alignment of buffer.
1966         * resolv/nss_dns/dns-hosts.c (getanswer_r): Likewise.  Handle buflen
1967         bigger than INT_MAX.
1968         * resolv/nss_dns/dns-network.c (getanswer_r): Likewise.  Add errnop and
1969         h_errnop arguments.  Fail if buflen is too small.
1970         (_nss_dns_getnetbyname_r, _nss_dns_getnetbyaddr_r): Adjust callers.
1971
1972 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
1973
1974         [BZ #4405]
1975         * iconvdata/gconv-modules (E13B): Add a missing slash to the alias
1976         name.  Patch by Aurelien Jarno <aurelien@aurel32.net>.
1977
1978 2007-04-22  Roland McGrath  <roland@redhat.com>
1979
1980         * elf/elf.h (NT_PRXFPREG): New macro.
1981
1982 2007-04-19  Andreas Jaeger  <aj@suse.de>
1983
1984         [BZ #3905]
1985         * bits/in.h (IPV6_ROUTER_ALERT, IPV6_MTU_DISCOVER, IPV6_MTU,
1986         IPV6_RECVERR, IPV6_V6ONLY, IPV6_JOIN_ANYCAST, IPV6_LEAVE_ANYCAST):
1987         Added.
1988
1989 2007-04-19  Ulrich Drepper  <drepper@redhat.com>
1990
1991         * include/sys/mman.h: Mark madvise hidden.
1992         * misc/madvise.c: Add libc_hidden_def.
1993
1994 2007-04-06  Jakub Jelinek  <jakub@redhat.com>
1995
1996         * nis/nis_domain_of.c (__nis_domain_of): New function.
1997         * include/rpcsvc/nislib.h (__nis_domain_of): New prototype.
1998         * nis/nis_lookup.c (nis_lookup): Use __nis_domain_of.
1999         * nis/nis_call.c (rec_dirsearch): Likewise.
2000         (first_shoot): Likewise.  Remove search_parent_first argument.
2001         (struct nis_server_cache): Rename search_parent_first field
2002         to search_parent.
2003         (nis_server_cache_search, nis_server_cache_add): Rename
2004         search_parent_first argument to search_parent.
2005         (__nisfind_server): Likewise.  If search_parent, call
2006         __nis_domain_of.
2007
2008 2007-04-18  Ulrich Drepper  <drepper@redhat.com>
2009
2010         * sysdeps/posix/getaddrinfo.c: Remove commented-out code.
2011
2012 2007-04-17  Ulrich Drepper  <drepper@redhat.com>
2013
2014         [BZ #4368]
2015         * stdlib/stdlib.h: Remove obsolete part of comment for realpath.
2016
2017 2007-04-16  Ulrich Drepper  <drepper@redhat.com>
2018
2019         [BZ #4364]
2020         * posix/unistd.h (_XOPEN_VERSION): Define appropriately for SUSv3.
2021
2022 2007-04-15  Jakub Jelinek  <jakub@redhat.com>
2023
2024         * locale/programs/locarchive.c (INITIAL_NUM_NAMES,
2025         INITIAL_SIZE_STRINGS, INITIAL_NUM_LOCREC): Update to accomodate
2026         current number of locales in SUPPORTED.
2027         (create_archive): Initialize serial.
2028         (enlarge_archive): Preserve aliases rather than duplicating
2029         their locrecs.
2030
2031 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
2032
2033         * libio/genops.c (_IO_default_finish): Call _IO_lock_fini
2034         after _IO_un_link, not before it.
2035
2036         * stdio-common/printf_fp.c (___printf_fp): Fix exponent -4
2037         special case handling when wcp == wstartp + 1.  Fix a comment typo.
2038         * stdio-common/tfformat.c (sprint_doubles): Add a new testcase.
2039
2040 2007-03-30  Jakub Jelinek  <jakub@redhat.com>
2041
2042         * libio/libio.h (__underflow, __uflow, __overflow, __wunderflow,
2043         __wuflow, __woverflow, _IO_getc, _IO_putc, _IO_peekc_locked, _IO_padn,
2044         _IO_sgetn, _IO_seekoff, _IO_seekpos, _IO_getwc, _IO_putwc, _IO_wpadn):
2045         Remove __THROW.
2046         * libio/fileops.c (new_do_write, _IO_file_xsgetn_mmap,
2047         _IO_file_xsgetn_maybe_mmap): Likewise.
2048         * libio/oldfileops.c (old_do_write): Likewise.
2049         * libio/libioP.h (_IO_switch_to_get_mode, _IO_switch_to_wget_mode,
2050         _IO_init_marker, _IO_init_wmarker, _IO_default_uflow,
2051         _IO_wdefault_uflow, _IO_default_setbuf, _IO_default_seekpos,
2052         _IO_do_write, _IO_new_do_write, _IO_old_do_write, _IO_wdo_write,
2053         _IO_flush_all_lockp, _IO_flush_all, _IO_cleanup,
2054         _IO_flush_all_linebuffered, _IO_new_fgetpos, _IO_old_fgetpos,
2055         _IO_new_fsetpos, _IO_old_fsetpos, _IO_new_fgetpos64,
2056         _IO_old_fgetpos64, _IO_new_fsetpos64, _IO_old_fsetpos64,
2057         _IO_file_setbuf, _IO_file_seekoff, _IO_file_xsputn, _IO_file_xsgetn,
2058         _IO_file_underflow, _IO_file_underflow_mmap,
2059         _IO_file_underflow_maybe_mmap, _IO_file_overflow, _IO_file_attach,
2060         _IO_file_open, _IO_file_fopen, _IO_file_write, _IO_file_read,
2061         _IO_file_sync, _IO_file_close_it, _IO_file_finish,
2062         _IO_new_file_attach, _IO_new_file_close_it, _IO_new_file_finish,
2063         _IO_new_file_fopen, _IO_new_file_setbuf, _IO_file_setbuf_mmap,
2064         _IO_new_file_sync, _IO_new_file_underflow, _IO_new_file_overflow,
2065         _IO_new_file_seekoff, _IO_new_file_write, _IO_new_file_xsputn,
2066         _IO_old_file_setbuf, _IO_old_file_seekoff, _IO_old_file_xsputn,
2067         _IO_old_file_underflow, _IO_old_file_overflow, _IO_old_file_attach,
2068         _IO_old_file_fopen, _IO_old_file_write, _IO_old_file_sync,
2069         _IO_old_file_close_it, _IO_old_file_finish, _IO_wfile_xsputn,
2070         _IO_wfile_setbuf, _IO_wfile_sync, _IO_wfile_underflow,
2071         _IO_wfile_overflow, _IO_wfile_seekoff, _IO_old_proc_open,
2072         _IO_old_proc_close, _IO_getdelim, _IO_flush_all_internal,
2073         _IO_adjust_column_internal, _IO_default_uflow_internal,
2074         _IO_default_xsgetn_internal, _IO_wdefault_xsputn_internal,
2075         _IO_wdefault_xsgetn_internal, _IO_wdefault_uflow_internal,
2076         _IO_file_setbuf_internal, _IO_file_seekoff_internal,
2077         _IO_file_xsputn_internal, _IO_file_xsgetn_internal,
2078         _IO_file_close_it_internal, _IO_file_underflow_internal,
2079         _IO_file_overflow_internal, _IO_file_attach_internal,
2080         _IO_file_fopen_internal, _IO_file_sync_internal,
2081         _IO_file_finish_internal, _IO_wfile_xsputn_internal,
2082         _IO_wfile_seekoff_internal, _IO_wfile_sync_internal,
2083         _IO_switch_to_wget_mode_internal, _IO_padn_internal,
2084         _IO_switch_to_get_mode_internal, _IO_seekoff_unlocked,
2085         _IO_seekpos_unlocked): Likewise.
2086         (_IO_strtod, _IO_dtoa, _IO_outfloat, _IO_read, _IO_write,
2087         _IO_lseek, _IO_close, _IO_fstat): Remove unused prototypes.
2088
2089 2007-04-16  Jakub Jelinek  <jakub@redhat.com>
2090
2091         * locale/programs/locarchive.c (show_archive_content): Fix sizeof
2092         argument in xmalloc size computation.
2093
2094 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
2095
2096         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Use
2097         math_opt_barrier and math_force_eval macros.
2098
2099 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
2100
2101         [BZ #3306]
2102         * math/math_private.h (math_opt_barrier, math_force_eval): Define.
2103         * sysdeps/i386/fpu/math_private.h: New file.
2104         * sysdeps/x86_64/fpu/math_private.h: New file.
2105         * math/s_nexttowardf.c (__nexttowardf): Use math_opt_barrier and
2106         math_force_eval macros.  Use "+m" constraint on asm rather than
2107         "=m" and "m".
2108         * math/s_nextafter.c (__nextafter): Likewise.
2109         * sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c (__nexttoward):
2110         Likewise.
2111         * sysdeps/ieee754/flt-32/s_nextafterf.c (__nextafterf): Likewise.
2112         * sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): Likewise.
2113         * sysdeps/ieee754/ldbl-96/s_nexttoward.c (__nexttoward): Likewise.
2114         * sysdeps/i386/fpu/s_nextafterl.c (__nextafterl): Use
2115         math_opt_barrier and math_force_eval macros.
2116         * sysdeps/ieee754/ldbl-128/s_nextafterl.c (__nextafterl): Likewise.
2117         * sysdeps/ieee754/ldbl-96/s_nextafterl.c (__nextafterl): Likewise.
2118         * sysdeps/i386/fpu/s_nexttoward.c: Include float.h.
2119         (__nexttoward): Use math_opt_barrier and
2120         math_force_eval macros.  Use "+m" constraint on asm rather than
2121         "=m" and "m".  Only use asm to force double result if
2122         FLT_EVAL_METHOD is 2.
2123         * sysdeps/i386/fpu/s_nexttowardf.c: Include float.h.
2124         (__nexttowardf): Use math_opt_barrier and
2125         math_force_eval macros.  Use "+m" constraint on asm rather than
2126         "=m" and "m".  Only use asm to force double result if
2127         FLT_EVAL_METHOD is not 0.
2128         * sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Include float.h.
2129         (__nexttowardf): Use math_opt_barrier and
2130         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
2131         x to float using asm.
2132         * sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c: Include float.h.
2133         (__nldbl_nexttowardf): Use math_opt_barrier and
2134         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
2135         x to float using asm.
2136         * sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Include float.h.
2137         (__nexttowardf): Use math_opt_barrier and math_force_eval
2138         macros.  If FLT_EVAL_METHOD is not 0, force x to float using asm.
2139         * math/bug-nextafter.c (zero, inf): New variables.
2140         (main): Add new tests.
2141         * math/bug-nexttoward.c (zero, inf): New variables.
2142         (main): Add new tests.
2143
2144 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
2145
2146         [BZ #3427]
2147         * sysdeps/x86_64/fpu/feholdexcpt.c (feholdexcept): Clear all
2148         exceptions both in SW and MXCSR.
2149         * sysdeps/x86_64/fpu/feupdateenv.c: New file.
2150         * sysdeps/x86_64/fpu/feenablxcpt.c (feenableexcept): Remove dead code.
2151         * sysdeps/x86_64/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
2152         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
2153         in MXCSR if SSE is available.
2154         * sysdeps/i386/fpu/feupdateenv.c: Include unistd.h, dl-procinfo.h
2155         and ldsodefs.h.
2156         (__feupdateenv): Query exceptions also from MXCSR if SSE is available.
2157         Fix comment typo.
2158         * sysdeps/ia64/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions.
2159         Return 0 rather than 1.
2160         * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Fix comment typo.
2161         Remove incorrect part of a comment.  Fix argument to feraiseexcept.
2162         * math/test-fenv.c (feholdexcept_tests): New function.
2163         (main): Call it.
2164
2165 2007-01-05  Richard B. Kreckel  <kreckel@ginac.de>
2166
2167         [BZ #3427]
2168         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
2169         in SW.
2170
2171 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
2172
2173         [BZ #4344]
2174         * elf/ldconfig.c (search_dir): Fix 2 off-by-2 errors.
2175         Reported by David Anderson <davea42@earthlink.net>.
2176
2177 2007-04-07  Ulrich Drepper  <drepper@redhat.com>
2178
2179         * posix/sys/wait.h: Remove unnecessary forward declaration.
2180
2181 2007-04-05  Jakub Jelinek  <jakub@redhat.com>
2182
2183         * nis/nis_call.c (__nisfind_server): Replace (*dir)->do_servers
2184         with obj->do_servers after first_shoot.
2185
2186 2007-04-03  Ulrich Drepper  <drepper@redhat.com>
2187
2188         * posix/Makefile (routines): Add sched_cpucount.
2189         (tests): Add tst-cpucount.
2190         * posix/sched_cpucount.c: New file.
2191         * posix/tst-cpucount.c: New file.
2192         * posix/Versions: Export __sched_cpucount with version GLIBC_2.6.
2193         * bits/sched.h: Define __CPU_COUNT.  Declare __sched_cpucount.
2194         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
2195         * posix/sched.h: Define CPU_COUNT.
2196
2197 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
2198
2199         * posix/fnmatch.c (STRUCT): Define.
2200         (fnmatch): Pass NULL as last argument to internal_fn{,w}match.
2201         * posix/fnmatch_loop.c (struct STRUCT): New type.
2202         (FCT): Add ends argument.  If ends != NULL and normal * is
2203         seen in the pattern, store current pattern and string pointers
2204         and return.  Adjust recursive calls.
2205         (EXT): Adjust FCT callers.
2206         (STRUCT): Undef at the end of the file.
2207         * posix/Makefile (tests): Add tst-fnmatch2.
2208         * posix/tst-fnmatch2.c: New test.
2209
2210 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
2211
2212         * sysdeps/ia64/fpu/fesetround.c (fesetround): Return 0 on success
2213         and 1 on failure.
2214
2215         * sysdeps/unix/sysv/linux/sync_file_range.c (sync_file_range):
2216         Change last argument to unsigned int.
2217
2218 2007-03-23  Jakub Jelinek  <jakub@redhat.com>
2219
2220         * scripts/check-local-headers.sh: Filter out sys/capability.h.
2221
2222 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
2223
2224         * config.h.in (HAVE_LIBCAP): Add.
2225         * nscd/selinux.h: Include sys/capability.h rather than non-existent
2226         sys/capabilities.h.
2227         * nscd/selinux.c (preserve_capabilities): Use cap_free instead of
2228         free_caps.  Cast away const from 4th cap_set_flag argument.
2229
2230 2007-03-26  Ulrich Drepper  <drepper@redhat.com>
2231
2232         * sysdeps/unix/sysv/linux/Versions: Move sync_file_range to
2233         GLIBC_2.6.
2234         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
2235         Add sync_file_range.
2236         Reported by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
2237
2238 2007-03-19  Steven Munroe  <sjmunroe@us.ibm.com>
2239
2240         * sysdeps/powerpc/bits/atomic.h
2241         [!MUTEX_HINT_ACQ]: Define MUTEX_HINT_ACQ.
2242         [!MUTEX_HINT_REL]: Define MUTEX_HINT_REL.
2243         (__arch_compare_and_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
2244         (__arch_compare_and_exchange_val_32_rel): Add MUTEX_HINT_REL to lwarx.
2245         (__arch_atomic_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
2246         (__arch_atomic_exchange_rel_32_rel): Add MUTEX_HINT_REL to lwarx.
2247         * sysdeps/powerpc/powerpc32/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6X]:
2248         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
2249         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
2250         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
2251         * sysdeps/powerpc/powerpc64/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6D]:
2252         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
2253         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
2254         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
2255         (__arch_compare_and_exchange_bool_64_acq): Add MUTEX_HINT_ACQ to lwarx.
2256         (__arch_compare_and_exchange_bool_64_rel): Add MUTEX_HINT_REL to lwarx.
2257         (__arch_compare_and_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
2258         (__arch_compare_and_exchange_val_64_rel): Add MUTEX_HINT_REL to lwarx.
2259         (__arch_atomic_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
2260         (__arch_atomic_exchange_rel_64_rel): Add MUTEX_HINT_REL to lwarx.
2261
2262 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
2263
2264         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
2265         (__cache_line_size): Define the variable here.  Add
2266         attribute_hidden, remove weak_extern.
2267         (__libc_start_main): Set __cache_line_size
2268         unconditionally.
2269         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
2270         (__cache_line_size): Define the variable here.  Add
2271         attribute_hidden, remove weak_extern.
2272         (DL_PLATFORM_AUXV): Set __cache_line_size
2273         unconditionally.
2274         * sysdeps/powerpc/powerpc32/dl-machine.c (__cache_line_size): Remove
2275         weak_extern, add attribute_hidden.
2276         (__elf_machine_runtime_setup): Assume __cache_line_size is always
2277         defined in ld.so.
2278         * sysdeps/powerpc/powerpc32/memset.S (__cache_line_size): Remove
2279         definition.
2280         * sysdeps/powerpc/powerpc64/memset.S (__cache_line_size): Likewise.
2281
2282 2007-03-26  Jakub Jelinek  <jakub@redhat.com>
2283
2284         [BZ #4276]
2285         * timezone/africa: Update from tzdata2007d.
2286         * timezone/asia: Likewise.
2287         * timezone/australasia: Likewise.
2288         * timezone/backward: Likewise.
2289         * timezone/europe: Likewise.
2290         * timezone/iso3166.tab: Likewise.
2291         * timezone/leapseconds: Likewise.
2292         * timezone/northamerica: Likewise.
2293         * timezone/southamerica: Likewise.
2294         * timezone/zone.tab: Likewise.
2295
2296         * timezone/private.h: Update from tzcode2007d.
2297         * timezone/zdump.c: Likewise.
2298         * timezone/zic.c: Likewise.
2299
2300 2007-03-21  Jakub Jelinek  <jakub@redhat.com>
2301
2302         * nis/nis_call.c: Include bits/libc-lock.h, sys/stat.h, unistd.h.
2303         (nis_server_cache, nis_server_cache_lock, nis_cold_start_mtime): New
2304         variables.
2305         (nis_server_cache_search, nis_server_cache_add): New functions.
2306         (__nisfind_server): Use them.  Add dbp and flags argument, if
2307         call __nisbind_create.
2308         (__nisbind_create): Add server_used and current_ep arguments,
2309         only call __nis_findfastest if server_used is ~0.
2310         (__do_niscall2, __prepare_niscall): Adjust callers.
2311         (ckey_cache, ckey_cache_size, ckey_cache_allocated, ckey_cache_pid,
2312         ckey_cache_euid, ckey_cache_lock): New variables.
2313         (get_ckey): New function.
2314         (__nisbind_connect): If not dbp->use_udp, pass IPPROTO_TCP to
2315         __pmap_getnisport.  Save __pmap_getnisport result in
2316         dbp->addr.sin_port if non-zero.  Use get_ckey to create conversation
2317         key.
2318         * nis/nis_lookup.c (nis_lookup): Likewise.
2319         * nis/nis_table.c (nis_list): Likewise.
2320         * nis/rpcsvc/nislib.h (__nisbind_create, __nisfind_server): Adjust
2321         prototypes.
2322
2323         * nis/nss_nisplus/nisplus-pwd.c (_nss_nisplus_getpwnam_r,
2324         _nss_nisplus_getpwuid_r): Pass USE_DGRAM flag to nis_list.
2325         * nis/nss_nisplus/nisplus-service.c (_nss_nisplus_getservbyname_r,
2326         _nss_nisplus_getservbyport_r): Likewise.
2327         * nis/nss_nisplus/nisplus-network.c (_nss_nisplus_getnetbyname_r,
2328         _nss_nisplus_getnetbyaddr_r): Likewise.
2329         * nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_getspnam_r): Likewise.
2330         * nis/nss_nisplus/nisplus-ethers.c (_nss_nisplus_gethostton_r,
2331         _nss_nisplus_getntohost_r): Likewise.
2332         * nis/nss_nisplus/nisplus-rpc.c (_nss_nisplus_getrpcbyname_r,
2333         _nss_nisplus_getrpcbynumber_r): Likewise.
2334
2335 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
2336
2337         * configure.in (libc_cv_gnu89_inline): Only do compile test.
2338         * configure: Rebuilt.
2339
2340         * soft-fp/double.h (_FP_UNION_D): Use _FP_W_TYPE for frac
2341         bit-fields.
2342         * soft-fp/extended.h (_FP_UNION_E): Likewise.
2343
2344 2006-06-07  Joseph Myers  <joseph@codesourcery.com>
2345
2346         [BZ #2831]
2347         * soft-fp/quad.h (_FP_UNION_Q): Use _FP_W_TYPE for frac
2348         bit-fields.
2349
2350 2007-03-18  Jakub Jelinek  <jakub@redhat.com>
2351
2352         * nscd/gai.c: Include alloca.h.
2353         (__libc_use_alloca): Define.
2354
2355 2007-03-16  Jakub Jelinek  <jakub@redhat.com>
2356
2357         * elf/dl-open.c (dl_open_worker): Declare l in 2 different
2358         smaller scopes.
2359         * elf/dl-dst.h (DL_DST_REQ_STATIC): Add l as macro argument.
2360         (DL_DST_REQUIRED): Adjust user.
2361
2362         * include/dlfcn.h (struct link_map): New forward decl.
2363
2364         * inet/getnameinfo.c: Include stddef.h.
2365         (getnameinfo): Use offsetof.
2366
2367         * time/tst-mktime2.c (do_test): Don't rely on signed wrap.
2368
2369         * stdio-common/vfprintf.c (_itoa): Undef before redefining.
2370
2371         * string/strerror_l.c: Include stdlib.h.
2372
2373         * configure.in (libc_cv_gnu89_inline): Test for -fgnu89-inline.
2374         * config.make.in (gnu89-inline-CFLAGS): New variable.
2375         * Makeconfig (CFLAGS): Use $(gnu89-inline-CFLAGS) together with
2376         -std=gnu99.
2377         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Define.
2378         * argp/argp.h: Use it.
2379         * bits/mathinline.h: Likewise.
2380         * bits/sigset.h: Likewise.
2381         * bits/string.h: Likewise.
2382         * ctype/ctype.h: Likewise.
2383         * hurd/hurd.h: Likewise.
2384         * hurd/hurd/fd.h: Likewise.
2385         * hurd/hurd/port.h: Likewise.
2386         * hurd/hurd/signal.h: Likewise.
2387         * hurd/hurd/threadvar.h: Likewise.
2388         * hurd/hurd/userlink.h: Likewise.
2389         * io/sys/stat.h: Likewise.
2390         * libio/bits/stdio.h: Likewise.
2391         * libio/bits/stdio2.h: Likewise.
2392         * mach/lock-intern.h: Likewise.
2393         * mach/mach/mig_support.h: Likewise.
2394         * math/bits/cmathcalls.h: Likewise.
2395         * posix/bits/unistd.h: Likewise.
2396         * socket/bits/socket2.h: Likewise.
2397         * stdlib/bits/stdlib.h: Likewise.
2398         * stdlib/stdlib.h: Likewise.
2399         * string/argz.h: Likewise.
2400         * string/bits/string2.h: Likewise.
2401         * string/bits/string3.h: Likewise.
2402         * sysdeps/alpha/fpu/bits/mathinline.h: Likewise.
2403         * sysdeps/generic/inttypes.h: Likewise.
2404         * sysdeps/generic/machine-lock.h: Likewise.
2405         * sysdeps/generic/machine-sp.h: Likewise.
2406         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
2407         * sysdeps/i386/i486/bits/string.h: Likewise.
2408         * sysdeps/ia64/fpu/bits/mathinline.h: Likewise.
2409         * sysdeps/mach/alpha/machine-lock.h: Likewise.
2410         * sysdeps/mach/alpha/machine-sp.h: Likewise.
2411         * sysdeps/mach/i386/machine-lock.h: Likewise.
2412         * sysdeps/mach/powerpc/machine-lock.h: Likewise.
2413         * sysdeps/mach/powerpc/machine-sp.h: Likewise.
2414         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
2415         * sysdeps/s390/bits/string.h: Likewise.
2416         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
2417         * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
2418         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
2419         * sysdeps/unix/sysv/linux/bits/sigset.h: Likewise.
2420         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
2421         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Likewise.
2422         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
2423         * wcsmbs/bits/wchar2.h: Likewise.
2424         * wcsmbs/wchar.h: Likewise.
2425         * stdlib/gmp.h: Likewise.  Include <features.h> to get
2426         __extern_inline definition.
2427
2428 2007-03-15  Jakub Jelinek  <jakub@redhat.com>
2429
2430         * locale/programs/ld-ctype.c (find_translit): Return NULL if ctype is
2431         NULL.
2432
2433         [BZ #3919]
2434         * math/libm-test.inc (log_test): Test -Inf and NaN.
2435         (log10_test, log1p_test, log2_test): Test -Inf.
2436         * sysdeps/i386/fpu/e_log.S (__ieee754_log): Don't raise
2437         FE_INVALID when argument is qNaN.
2438         * sysdeps/i386/fpu/e_logl.S (__ieee754_logl): Likewise.
2439         * sysdeps/i386/fpu/e_logf.S (__ieee754_logf): Likewise.
2440         * sysdeps/x86_64/fpu/e_logl.S (__ieee754_logl): Likewise.
2441         * sysdeps/x86_64/fpu/e_log10l.S (__ieee754_log10l): Replace
2442         andb $1, %ah with testb $1, %ah, don't test for parity, instead
2443         testb $4, %ah and jump if non-zero.
2444         * sysdeps/x86_64/fpu/e_log2l.S (__ieee754_log2l): Likewise.
2445         * sysdeps/x86_64/fpu/s_log1pl.S (__log1pl): Likewise.
2446
2447         [BZ #4101]
2448         * argp/argp-help.c (hol_cluster_cmp): Fix comparisons used to find
2449         ancestors with the same depths.
2450         Patch by Niels Moeller <nisse@lysator.liu.se>.
2451         (filter_doc): Don't crash if argp is NULL.
2452         * argp/Makefile (tests): Add tst-argp2.
2453         * argp/tst-argp2.c: New test.
2454
2455         [BZ #4130]
2456         * login/utmp_file.c (setutent_file): Use O_LARGEFILE for
2457         open_not_cancel_2.
2458         (updwtmp_file): Likewise.
2459
2460         [BZ #4181]
2461         * inet/inet6_opt.c (add_padding): Only insert padding if npad > 0.
2462         (inet6_opt_append): Don't check extlen is big enough if extbuf
2463         is NULL.
2464         (inet6_opt_finish): Likewise.
2465         * inet/Makefile (tests): Add test-inet6_opt.
2466         * inet/test-inet6_opt.c: New test.
2467
2468         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Never
2469         reallocate the buffer, instead fail for MSG_TRUNC or for EBUSY
2470         NLMSG_ERR.  Instead use a page sized buffer.
2471         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Use page sized
2472         buffer.
2473
2474 2007-03-14  Richard Henderson  <rth@redhat.com>
2475
2476         * sysdeps/alpha/fpu/s_llround.c: New file.
2477         * sysdeps/alpha/fpu/s_llroundf.c: New file.
2478         * sysdeps/alpha/fpu/s_lround.c: New file.
2479         * sysdeps/alpha/fpu/s_lroundf.c: New file.
2480         * sysdeps/alpha/fpu/s_round.c: New file.
2481         * sysdeps/alpha/fpu/s_roundf.c: New file.
2482         * sysdeps/alpha/fpu/s_trunc.c: New file.
2483         * sysdeps/alpha/fpu/s_truncf.c: New file.
2484
2485         * sysdeps/alpha/fpu/s_ceil.c: Rewrite without branches.
2486         * sysdeps/alpha/fpu/s_ceilf.c: Likewise.
2487         * sysdeps/alpha/fpu/s_floor.c: Likewise.
2488         * sysdeps/alpha/fpu/s_floorf.c: Likewise.
2489         * sysdeps/alpha/fpu/s_rint.c: Likewise.
2490         * sysdeps/alpha/fpu/s_rintf.c: Likewise.
2491
2492         * sysdeps/alpha/fpu/s_fmax.S: New file.
2493         * sysdeps/alpha/fpu/s_fmaxf.S: New file.
2494         * sysdeps/alpha/fpu/s_fmin.S: New file.
2495         * sysdeps/alpha/fpu/s_fminf.S: New file.
2496         * sysdeps/alpha/fpu/s_isnan.c: New file.
2497         * sysdeps/alpha/fpu/s_isnanf.c: New file.
2498         * sysdeps/alpha/fpu/s_llrint.c: New file.
2499         * sysdeps/alpha/fpu/s_llrintf.c: New file.
2500         * sysdeps/alpha/fpu/s_lrint.c: New file.
2501         * sysdeps/alpha/fpu/s_lrintf.c: New file.
2502         * sysdeps/alpha/fpu/s_nearbyint.c: New file.
2503         * sysdeps/alpha/fpu/s_nearbyintf.c: New file.
2504
2505         * sysdeps/alpha/fpu/bits/mathinline.h (__floorf, __floor): Remove.
2506         (__fdimf, fdimf, __fdim, fdim): Remove.
2507         (__signbitf, __signbit, __signbitl): Use gcc builtin if available.
2508         (__isnanf, __isnan, __isnanl): New.
2509
2510 2007-03-13  Richard Henderson  <rth@redhat.com>
2511
2512         * sysdeps/ieee754/ldbl-128/Makefile: New file.
2513
2514 2007-03-13  Richard Henderson  <rth@redhat.com>
2515
2516         * sysdeps/alpha/Makefile (sysdep-CFLAGS): Force dynamic rounding.
2517         * sysdeps/alpha/fpu/bits/mathinline.h (__signbitl): New.
2518         * sysdeps/alpha/fpu/libm-test-ulps: Regenerate.
2519         * sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies: New file.
2520         * sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies: New file.
2521         * sysdeps/unix/sysv/linux/alpha/fpu/Implies: New file.
2522
2523 2007-03-13  Richard Henderson  <rth@redhat.com>
2524
2525         * elf/dl-support.c (_dl_aux_init): Honor DL_PLATFORM_AUXV.
2526         * sysdeps/unix/sysv/linux/alpha/dl-auxv.h: New file.
2527         * sysdeps/unix/sysv/linux/alpha/dl-support.c: New file.
2528         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c (__libc_alpha_cache_shape):
2529         Move to dl-auxv.h; initialize instead of extern weak.
2530         (DL_PLATFORM_AUXV): Move to dl-auxv.h; don't test for undef
2531         weak symbol.
2532         * sysdeps/unix/sysv/linux/alpha/sysconf.c (__libc_alpha_cache_shape):
2533         Extern instead of initialized.
2534
2535 2007-03-13  Richard Henderson  <rth@redhat.com>
2536
2537         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add support for
2538         __sigsuspend_nocancel.
2539
2540 2007-03-06  Ulrich Drepper  <drepper@redhat.com>
2541
2542         * sysdeps/posix/getaddrinfo.c (get_scope): Correct test for
2543         172.16/12 address range.
2544
2545 2007-03-02  Jakub Jelinek  <jakub@redhat.com>
2546
2547         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Retry with
2548         a new netlink socket if NLMSG_ERR -EBUSY is seen after some MSG_TRUNC
2549         message.
2550
2551 2007-03-01  Jakub Jelinek  <jakub@redhat.com>
2552
2553         [BZ #4069]
2554         * sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Check for NaN
2555         earlier.
2556         * math/libm-test.inc (pow_test): Add more tests involving NaNs.
2557
2558         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Avoid invalid exception
2559         for x qNaN and y either +-inf or non-integer value.
2560         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Likewise.
2561         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
2562         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
2563
2564 2007-02-10  Mike Frysinger  <vapier@gentoo.org>
2565
2566         * sysdeps/unix/sysv/linux/sh/Makefile: Remove sys/io.h
2567         from sysdep_headers.
2568
2569 2007-02-28  Jakub Jelinek  <jakub@redhat.com>
2570
2571         * time/tzfile.c (find_transition): Instead of a linear search try to
2572         guess the transition index, use a linear search if the result is at
2573         most 10 transitions away from the guess or binary search otherwise.
2574
2575 2007-02-27  Jakub Jelinek  <jakub@redhat.com>
2576
2577         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Fix
2578         memory reallocation.
2579
2580 2007-02-21  Ulrich Drepper  <drepper@redhat.com>
2581
2582         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Add branch predictions
2583         and fix some typos.
2584         Optimize use of TOLOWER.
2585
2586         [BZ #3325]
2587         * sysdeps/i386/fpu/e_fmodf.S: Revert last changes, keep using fprem.
2588         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
2589         * sysdeps/i386/fpu/e_fmod.S: Likewise.
2590
2591         [BZ #3458]
2592         * sysdeps/unix/sysv/linux/posix_madvise.c: New file.
2593         * sysdeps/unix/sysv/linux/syscalls.list: Remove posix_madvise entry.
2594
2595         [BZ #4076]
2596         * io/ftw.c (ftw_startup): Handle special case of FTW_CHDIR in /.
2597         (open_dir_stream): Likewise.
2598         * io/Makefile (tests): Add bug-ftw5.
2599         * io/bug-ftw5.c: New file.
2600
2601         * nscd/hstcache.c (cache_addhst): Remove unnecessary conditional.
2602         * nscd/servicescache.c (cache_addserv): Likewise.
2603
2604         * nscd/grpcache.c (cache_addgr): In case a record changed on
2605         refresh, adjust key_copy.
2606
2607         [BZ #4074]
2608         * nscd/pwdcache.c (cache_addpw): In case a record changed on
2609         refresh, adjust key_copy.
2610
2611         [BZ #4070]
2612         * stdio-common/printf_fp.c (___printf_fp): Handle a few more
2613         special cases.
2614         * stdio-common/tfformat.c (sprint_doubles): Some more tests.
2615
2616 2007-02-19  Ulrich Drepper  <drepper@redhat.com>
2617
2618         * stdio-common/printf_fp.c (___printf_fp): Cleanups and minor
2619         optimization.
2620
2621         * stdio-common/vfscanf.c: Small cleanups throughout.
2622
2623 2007-02-18  Ulrich Drepper  <drepper@redhat.com>
2624
2625         [BZ #3325]
2626         * sysdeps/i386/fpu/e_fmodf.S: Use fprem1 instead of fprem.
2627         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
2628         * sysdeps/i386/fpu/e_fmod.S: Likewise.
2629         Patch by Jared Casper <jaredcasper@gmail.com>.
2630
2631         * sysdeps/unix/closedir.c: Outside libc don't use locking.
2632         * sysdeps/unix/opendir.c: Likewise.
2633         * sysdeps/unix/readdir.c: Likewise.
2634
2635         [BZ #2211]
2636         * stdio-common/vfscanf.c: Handle localized digits etc for floating
2637         point numbers.
2638         Patch mostly by Hamed Malek <hamed@farsiweb.info>.
2639
2640         * stdio-common/vfscanf.c: Fix problems in width accounting.
2641         * stdio-common/tst-sscanf.c (double_tests): New tests.
2642         (main): Hook them up.
2643
2644         * stdio-common/vfscanf.c: Remove unused WIDTH handling.
2645         More simplifications of floating-point reader.
2646
2647         * stdio-common/Makefile (tests): Add tst-swscanf.
2648         * stdio-common/tst-sscanf.c: Make tests usable for swscanf
2649         testing.
2650         * stdio-common/tst-swscanf.c: New file.
2651
2652 2007-02-17  Ulrich Drepper  <drepper@redhat.com>
2653
2654         [BZ #2633]
2655         * libio/stdio.h: Define struct _IO_FILE in global namespace.
2656         * setjmp/setjmp.h: Define __jmp_buf_tag in global namespace.
2657         Remove using for __jmp_buf_tag.
2658         * locale/locale.h (struct lconv): Also define in std namespace.
2659         * wcsmbs/wchar.h: Move using declaration for tm out of namespace.
2660
2661         [BZ #3842]
2662         * sysdeps/posix/euidaccess.c [_LIBC] (euidaccess): Remove shortcut
2663         using __libc_enable_secure.
2664
2665         [BZ #3818]
2666         * sysdeps/unix/sysv/linux/sys/acct.h (struct acct_v3): Define.
2667
2668         [BZ #3745]
2669         * locale/programs/ld-collate.c (handle_ellipsis): Fix generation
2670         of names for ellipsises.
2671
2672         [BZ #3348]
2673         * malloc/memusage.sh: Cleanups.
2674         * debug/xtrace.sh: Quoting and trap changes.
2675
2676 2007-02-16  Ulrich Drepper  <drepper@redhat.com>
2677
2678         * locale/iso-3166.def: Add Jersey, Guernsey, and Isle Of Man entries.
2679
2680         * locale/iso-3166.def: Update entry for Serbia.
2681         * locale/iso-4217.def: Define RSD, remove CSD.
2682
2683         * sysdeps/x86_64/bits/atomic.h: One more change, this time for 16-
2684         and 64-bit operations.
2685
2686         [BZ #4040]
2687         * sysdeps/i386/i486/bits/atomic.h: One more change, this time for
2688         16-bit operations.
2689
2690         * nscd/nscd.c (parse_opt): One more conversion to use send instead
2691         of writev.
2692
2693 2007-02-15  Ulrich Drepper  <drepper@redhat.com>
2694
2695         [BZ #3991]
2696         * assert/assert.h (assert): Simplify.
2697         (assert_perror): Likewise.
2698         Patch by Israel G. Lugo <ilugo@bridonsecurity.com>.
2699
2700         * nscd/nscd_helper.c (open_socket): Don't send padding bytes from
2701         reqdata.
2702
2703         * sysdeps/unix/sysv/linux/x86_64/send.c (__libc_send): Cosmetic
2704         change: don't pass NULL in place of an integer.
2705
2706 2007-02-02  Bruno Haible  <bruno@clisp.org>
2707
2708         [BZ #3954]
2709         * iconvdata/ksc5601.c (__ksc5601_sym_to_ucs, __ksc5601_sym_from_ucs):
2710         Add mapping for U+327E.
2711         * iconvdata/ksc5601.h (KSC5601_SYMBOL): Increment.
2712         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
2713         mapping of 0xD9 0xE8.
2714         * iconvdata/uhc.c (BODY for FROM_LOOP, BODY for TO_LOOP): Disable
2715         mapping of U+327E.
2716         Reported by Jungshik Shin <jungshik@google.com>.
2717
2718         [BZ #3955]
2719         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
2720         mapping of 0xD9 0xE6 and of 0xD9 0xE7.
2721         Reported by Jungshik Shin <jungshik@google.com>.
2722
2723 2007-02-14  Ulrich Drepper  <drepper@redhat.com>
2724
2725         * sysdeps/x86_64/bits/atomic;h: Fix asm parameters for some
2726         byte variants.
2727
2728         [BZ #4040]
2729         * sysdeps/i386/i486/bits/atomic.h: Fix asm parameters for some
2730         byte variants.  Patch mostly be tom@tommay.net.
2731
2732 2007-02-14  Jakub Jelinek  <jakub@redhat.com>
2733
2734         [BZ #3996]
2735         * posix/glob.c (attribute_hidden): Define if not defined.
2736         (glob): Unescape dirname, filename or username when needed and not
2737         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
2738         is NULL.  Handle unescaped [ in pattern without closing ].
2739         Don't pass GLOB_CHECK down to recursive glob for directories.
2740         (__glob_pattern_type): New function.
2741         (__glob_pattern_p): Implement using __glob_pattern_type.
2742         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
2743         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
2744         Remove unreachable code.
2745         * posix/globtest.sh: Add a couple of new tests.
2746
2747 2007-02-13  Ulrich Drepper  <drepper@redhat.com>
2748
2749         * po/ru.po: Update from translation team.
2750
2751 2007-02-12  Jakub Jelinek  <jakub@redhat.com>
2752
2753         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __amdfam10__
2754         to the list of i486+ CPUs.
2755         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
2756
2757 2007-02-12  Ulrich Drepper  <drepper@redhat.com>
2758
2759         * elf/rtld.c (RESOLVE_MAP): Always return bootstrap_map reference.
2760         * elf/Makefile ($(objpfx)ld.so): Check that ld.so has no undefined
2761         references.
2762
2763 2007-02-09  Ulrich Drepper  <drepper@redhat.com>
2764
2765         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Remove incorrect comment.
2766
2767         * resolv/res_init.c (res_setoptions): Recognize edns0 option.
2768         * resolv/res_mkquery.c: Define __res_nopt.
2769         * resolv/res_query.c (__libc_res_nquery): If RES_USE_EDNS0 is set
2770         try adding EDNS0 record.
2771         * resolv/res_send.c (send_dg): If request failed with FORMERR and
2772         EDNS0 record was send make sure we don't try it again.
2773         * resolv/resolv.h: Define RES_F_EDNS0ERR and RES_USE_EDNS0.
2774         * include/resolv.h: Declare __res_nopt.
2775
2776 2007-02-08  Jakub Jelinek  <jakub@redhat.com>
2777
2778         [BZ #3944]
2779         * time/strptime_l.c (__strptime_internal): Set have_mon for
2780         %b/%B/%h.  Set have_mon and have_mday if tm_mon and tm_mday
2781         have been computed from tm_yday and tm_year.  Don't crash
2782         in day_of_the_week or day_of_the_year if not have_mon
2783         and tm_mon contains bogus value.
2784         * time/Makefile (tests): Add tst-strptime3.
2785         * time/tst-strptime3.c: New test.
2786
2787 2007-02-05  Jakub Jelinek  <jakub@redhat.com>
2788
2789         [BZ #3957]
2790         * posix/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
2791         bit for RE_HAT_LISTS_NOT_NEWLINE.
2792         (build_charclass_op): Remove bogus comment.
2793         * posix/Makefile (tests): Add bug-regex27 and bug-regex28.
2794         * posix/bug-regex27.c: New test.
2795         * posix/bug-regex28.c: New test.
2796
2797 2007-02-03  Ulrich Drepper  <drepper@redhat.com>
2798
2799         * po/sv.po: Update from translation team.
2800
2801 2007-02-02  Ulrich Drepper  <drepper@redhat.com>
2802
2803         * nscd/nscd_helper.c (open_socket): Minor size optimization.
2804
2805 2007-02-02  Jakub Jelinek  <jakub@redhat.com>
2806
2807         * include/locale.h (__uselocale): Add libc_hidden_proto.
2808         * locale/uselocale.c (__uselocale): Add libc_hidden_def.
2809
2810         * nscd/nscd_helper.c (open_socket): Use __gettimeofday instead of
2811         gettimeofday.
2812
2813 2007-02-01  Ulrich Drepper  <drepper@redhat.com>
2814
2815         * sysdeps/unix/sysv/linux/i386/sysdep.h (PTR_MANGLE): Roll value before
2816         returning.
2817         (PTR_DEMANGLE): Real definition now that it's not the same as
2818         PRT_MANGLE anymore.
2819         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
2820
2821         * string/strerror_l.c: New file.
2822         * string/Makefile (routines): Add strerror_l.
2823         * string/string.h: Declare strerror_l.
2824         * string/Versions: Export strerror_l for GLIBC_2.6.
2825
2826 2007-01-31  Ulrich Drepper  <drepper@redhat.com>
2827
2828         * nscd/nscd_helper.c (open_socket): Now takes request type and key
2829         as parameter.  Construct request record.  Try sending request
2830         before the first poll use, it usually succeeds.  Adjust all
2831         callers.
2832         * nscd/nscd-client.h: Define MAXKEYLEN.
2833         * nscd/connections.c (nscd_run): Don't define MAXKEYLEN here.
2834
2835 2007-01-31  Jakub Jelinek  <jakub@redhat.com>
2836
2837         * nscd/nscd-client.h (__nscd_cache_search): Remove const qualifier
2838         from return value.
2839         * nscd/nscd_helper.c: Include string.h.
2840         (__nscd_cache_search): Remove const qualifier from return value.
2841         On strict alignment architectures check hash entry and data head
2842         alignment.
2843         * nscd/nscd_getpw_r.c (nscd_getpw_r): Don't crash or fail because
2844         mmapped data during GC cycle contains garbage.  If
2845         __nscd_drop_map_ref fails, decrement mapped->counter when returning
2846         error or if retrying with NO_MAPPING, only __nscd_unmap if counter
2847         dropped to 0.
2848         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
2849         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise.
2850         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
2851         * nscd/nscd_getai.c (__nscd_getai): Likewise.
2852         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
2853
2854 2007-01-30  Ulrich Drepper  <drepper@redhat.com>
2855
2856         * misc/hsearch_r.c (hdestroy_r): Remove unnecessary test.
2857
2858 2007-01-26  Ulrich Drepper  <drepper@redhat.com>
2859
2860         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Use register
2861         names not numbers in cfi_*.
2862
2863 2007-01-26  Andreas Jaeger  <aj@suse.de>
2864
2865         * sysdeps/unix/sysv/linux/sys/personality.h (ADDR_NO_RANDOMIZE,
2866         ADDR_LIMIT_3GB, PER_LINUX_32BIT, PER_LINUX32_3GB): Add.
2867         Correct values of PER_HPUX and PER_OSF4.
2868
2869 2007-01-24  Ulrich Drepper  <drepper@redhat.com>
2870
2871         * elf/dl-minimal.c: Undefine _itoa first.
2872         * stdio-common/_itoa.h: Define _itoa and _fitoa for 64-bit platforms.
2873         * malloc/mtrace.c: Revert last change.
2874         * posix/wordexp.c: Likewise.
2875
2876 2007-01-24  Jakub Jelinek  <jakub@redhat.com>
2877
2878         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __nocona__, __core2__
2879         and __geode__ to the list of i486+ CPUs.
2880         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
2881
2882 2007-01-23  Ulrich Drepper  <drepper@redhat.com>
2883
2884         * stdio-common/_itoa.c: Include <limits.h>.
2885         * stdio-common/_itowa.c: Likewise.
2886
2887 2007-01-22  Ulrich Drepper  <drepper@redhat.com>
2888
2889         * stdio-common/_itowa.c: Don't compile _itowa for 64-bit
2890         platforms.
2891         * stdio-common/_itoa.c: Don't compile in _itoa and _fitoa for
2892         64-bit platforms.
2893         * malloc/mtrace.c (tr_where): Use _fitoa_word instead of _fitoa if
2894         possible.
2895         * posix/wordexp.c (parse_arith): Use _itoa_word instead of _itoa
2896         if possible.
2897
2898         [BZ #3902]
2899         * stdio-common/_itoa.c (_itoa): Make sure at least a zero is emitted.
2900         * stdio-common/Makefile (tests): Add bug17.
2901         * stdio-common/bug17.c: New file.
2902
2903 2007-01-19  Ulrich Drepper  <drepper@redhat.com>
2904
2905         * iconvdata/brf.c: New file.
2906         * iconvdata/testdata/BRF: New file.
2907         * iconvdata/testdata/BRF..UTF8: New file.
2908         Contributed by Samuel Thibault <samuel.thibault@ens-lyon.org>.
2909         * iconvdata/Makefile: Add rules to build BRF.
2910         * iconvdata/TESTS: Add BRF entry.
2911         * iconvdata/gconv-modules: Likewise.
2912         * iconvdata/tst-tables.sh: Likewise.
2913
2914 2007-01-18  Anton Nikishaev  <anton.nik@gmail.com>
2915
2916         * wcsmbs/wchar.h (wcstoll): Fix comment, function returns value of
2917         type `long long int', not `long int'.
2918         (wcstoq): Likewise.
2919
2920 2007-01-18  Ulrich Drepper  <drepper@redhat.com>
2921
2922         * scripts/gen-as-const.awk: Add cast to long to avoid int promotion
2923         of values on 64-bit platforms which are too large.
2924
2925 2007-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
2926             Joe Kerian  <jkerian@us.us.ibm.com>
2927
2928         [BZ #2749]
2929         * sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Include
2930         <math_ldbl_opt.h>.  Remove weak_alias.  Use long_double_symbol macro.
2931         (__copysignl): Use signbit() for comparison.
2932         * sysdeps/ieee754/ldbl-128ibm/s_fabsl.c (__fabsl): Correct parms for
2933         SET_LDOUBLE_WORDS64.
2934
2935         [BZ #2423, #2749]
2936         * sysdeps/ieee754/ldbl-128ibm/s_ceill.c: Don't include <fenv_libc.h>.
2937         (__ceill): Remove calls to fegetround(), fesetround().
2938         * sysdeps/ieee754/ldbl-128ibm/s_floorl.c: Likewise.
2939         * sysdeps/ieee754/ldbl-128ibm/s_roundl.c: Likewise.
2940         * sysdeps/ieee754/ldbl-128ibm/s_truncl.c: Likewise.
2941
2942 2007-01-17  Jakub Jelinek  <jakub@redhat.com>
2943
2944         * nscd/nscd_getserv_r.c (nscd_getserv_r): Fix pastos.
2945
2946         * sysdeps/unix/sysv/linux/getdents.c (offsetof): Remove.
2947
2948 2007-01-17  Ulrich Drepper  <drepper@redhat.com>
2949
2950         * sysdeps/unix/sysv/linux/fatal-prepare.h: Use PTHFCT_CALL to
2951         demangle pointer.
2952         * csu/libc-start.c: Likewise.
2953
2954 2007-01-16  Ulrich Drepper  <drepper@redhat.com>
2955
2956         * sysdeps/posix/system.c: Remove NO_WAITPID support, it cannot
2957         really work anyway.
2958
2959 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
2960
2961         * nscd/connections.c (servinfo): Renamed to reqinfo.  Change all
2962         users.
2963         (handle_request): Remove unnecessary tests.
2964
2965         * nscd/cache.c (cache_add): Record the failure to add to the cache.
2966
2967 2007-01-15  Jakub Jelinek  <jakub@redhat.com>
2968
2969         * soft-fp/op-common.h (FP_TRUNC): When truncating a NaN, clear
2970         workbits in semi-raw fraction.
2971
2972         * math/test-misc.c: Add new tests.
2973
2974 2007-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
2975
2976         * math/basic-test.c: Include test-skeleton.c.
2977         (TEST_TRUNC): Define.
2978         (truncdfsf_test, trunctfsf_test, trunctfdf_test): New.
2979         (main): Rename to ...
2980         (do_test): ...this.  Run new tests.
2981         (TEST_FUNCTION): Define.
2982
2983 2006-10-05  Steven Munroe  <sjmunroe@us.ibm.com>
2984             Joe Kerian  <jkerian@us.us.ibm.com>
2985
2986         [BZ #2749]
2987         * soft-fp/op-4.h (__FP_FRAC_SUB_3, __FP_FRAC_SUB_4): Correct borrow
2988         handling for high words.
2989         * soft-fp/op-common.h (_FP_OVERFLOW_SEMIRAW): Always set inexact
2990         and overflow for infinity.
2991
2992 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
2993
2994         * nscd/connections.c (handle_request): Add a __builtin_expect.
2995
2996         * nscd/connections.c (serv2db): Change type into structure which
2997         also says whether this is a request for data.  Renamed to
2998         servinfo.  All users changed.
2999         (handle_request): Much simpler test whether we should search the cache.
3000
3001         * nscd/connections.c (handle_request): Fix thinko in selinux test
3002         invocation.
3003
3004         * sysdeps/generic/ldsodefs.h: Define DL_LOOKUP_SCOPE_LOCK.
3005         * elf/dl-lookup.c (add_dependency): If scope map is locked, unlock
3006         it before getting dl_load_lock and then relock.
3007         (_dl_lookup_symbol_x): Pass flags to add_dependency.
3008         When rerunning _dl_lookup_symbol_x, compute symbol_scope again in
3009         case we unlocked the scope.
3010         * elf/dl-runtime.c (_dl_fixup): Pass DL_LOOKUP_SCOPE_LOCK to
3011         _dl_lookup_symbol_x in case we locked the scope.
3012         (_dl_profile_fixup): Likewise.
3013         * elf/dl-sym.c (do_sym): In flags passed to call_dl_lookup, also
3014         set DL_LOOKUP_SCOPE_LOCK.
3015
3016 2007-01-13  Ulrich Drepper  <drepper@redhat.com>
3017
3018         * inet/Makefile: Define CFLAGS-getsrvbynm_r.c and
3019         CFLAGS-getsrvbynpt_r.c.
3020         * nscd/getsrvbynm_r.c: New file.
3021         * nscd/getsrvbypt_r.c: New file.
3022         * nscd/nscd_getserv_r.c: New file.
3023         * nscd/servicescache.c: New file.
3024         * nscd/Makefile (routines): Add nscd_getserv_r.
3025         (nscd-modules): Add getsrvbynm_r, getsrvbypt_r, and servicescache.
3026         Define CFLAGS-servicescache.c, CFLAGS-getsrvbynm_r.c, and
3027         CFLAGS-getsrvbypt_r.c.
3028         * nscd/cache.c (prune_cache): Rewrite to get re-add function from
3029         table.  Add entries for services database.
3030         * nscd/connections.c (serv2str): Mark as const.  Add entries for
3031         services database.
3032         (dbs): Add .reset_res and servdb initialization.
3033         (serv2db): Add entries for services database.
3034         (verify_persistent_db): Accept dbnr == servdb.
3035         (invalidate_cache): Rewrite database name recognition to use a table.
3036         Call res_init() if .reset_res is set for database.
3037         (handle_request): Add code to handle services database.
3038         * nscd/gai.c: Don't define __getservbyname_r.
3039         * nscd/nscd-client.h (request_type): Remove LASTDBREQ, add
3040         GETSERVBYNAME, GETSERVBYPORT, GETFDSERV.
3041         (serv_response_header): Define.
3042         (struct datahead): Add serv_response_header member.
3043         * nscd/nscd.c (parse_opt): Rewrite parsing of -i parameter value
3044         using table.
3045         * nscd/nscd.conf: Add entries for services database.
3046         * nscd/nscd.h: Adjust declaration of dbnames and serv2str.
3047         Declare serv_iov_disabled.
3048         Declare addservbyname, readdservbyname, addservbyport, and
3049         readdservbyport.
3050         * nscd/nscd_conf.c (dbnames): Mark as const.  Add services entry.
3051         (find_db): Fix error message.
3052         * nscd/nscd_proto.h: Declare __nss_not_use_nscd_services,
3053         __nscd_getservbyname_r, and __nscd_getservbyport_r.
3054         * nscd/selinux.c (perms): Add entries for services database.
3055         * nss/Versions: Export __nss_services_lookup with GLIBC_PRIVATE.
3056         * nss/nsswitch.c (__nss_disable_nscd): Also disable services database.
3057
3058         * nscd/grpcache.c: Remove obsolete code.  Cleanups.
3059         * nscd/hstcache.c: Likewise.
3060         * nscd/pwdcache.c: Likewise.
3061
3062         * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): Correct
3063         computation of keylen.
3064
3065         * include/string.h: Only redefine strndupa if this is really for
3066         libc code.
3067
3068 2007-01-12  Ulrich Drepper  <drepper@redhat.com>
3069
3070         * nscd/nscd_gethst_r.c: Minor cleanups.
3071
3072         * nscd/connections.c (handle_request): Check selinux permissions
3073         for all non-admin commands.
3074
3075         * sysdeps/i386/i486/bits/atomic.h: Define
3076         atomic_compare_and_exchange_val_acq,
3077         atomic_compare_and_exchange_bool_acq, and atomic_exchange_and_add
3078         using __sync_* built-ins for gcc >= 4.1.
3079         * sysdeps/x86_64/bits/atomic.h: Likewise.
3080
3081         [BZ #3840]
3082         * scripts/check-local-headers.sh: Restrict to testing .o.d, .os.d,
3083         and .oS.d files.
3084
3085 2007-01-05  Steven Munroe  <sjmunroe@us.ibm.com>
3086
3087         * stdlib/tst-makecontext.c: Include errno.h.  Change main()
3088         to do_test().  Define TEST_FUNCTION. Include test-skeleton.c.
3089         (do_test): Check errno and exit(0) if ENOSYS.
3090
3091 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
3092
3093         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix handling of multi-byte
3094         thousands separators.
3095         * stdlib/Makefile: Add rules to build and run tst-strtod4.
3096         * stdlib/tst-strtod4.c: New test.
3097
3098         [BZ #3855]
3099         * stdlib/strtod_l.c (____STRTOF_INTERNAL): 0x. not followed by
3100         hexadecimal digit should accept just the initial 0.
3101         * stdlib/tst-strtod2.c (tests): New variable.
3102         (do_test): Run several tests rather than just one.
3103
3104 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
3105
3106         * sysdeps/i386/soft-fp/sfp-machine.h: Remove.
3107         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
3108
3109 2007-01-10  Ulrich Drepper  <drepper@redhat.com>
3110
3111         * io/fts.c: Make sure fts_cur is always valid after return from
3112         fts_read.
3113         Patch by Miloslav Trmac <mitr@redhat.com>.
3114
3115 2006-10-27  Richard Sandiford  <richard@codesourcery.com>
3116
3117         * elf/elf.h (R_MIPS_GLOB_DAT): Define.
3118         (R_MIPS_NUM): Bump by 1.
3119
3120 2007-01-03  Jakub Jelinek  <jakub@redhat.com>
3121
3122         * posix/execvp.c: Include alloca.h.
3123         (allocate_scripts_argv): Renamed to...
3124         (scripts_argv): ... this.  Don't allocate buffer here nor count
3125         arguments.
3126         (execvp): Use alloca if possible.
3127         * posix/Makefile: Add rules to build and run tst-vfork3 test.
3128         * posix/tst-vfork3.c: New test.
3129
3130 2007-01-03  Ulrich Drepper  <drepper@redhat.com>
3131
3132         * string/Makefile (tst-strxfrm2-ENV): Define.
3133         * stdlib/Makefile (tst-strtod3-ENV): Define.
3134
3135 2007-01-02  Ulrich Drepper  <drepper@redhat.com>
3136
3137         * posix/getconf.c: Update copyright year.
3138         * nss/getent.c: Likewise.
3139         * iconv/iconvconfig.c: Likewise.
3140         * iconv/iconv_prog.c: Likewise.
3141         * elf/ldconfig.c: Likewise.
3142         * catgets/gencat.c: Likewise.
3143         * csu/version.c: Likewise.
3144         * elf/ldd.bash.in: Likewise.
3145         * elf/sprof.c (print_version): Likewise.
3146         * locale/programs/locale.c: Likewise.
3147         * locale/programs/localedef.c: Likewise.
3148         * nscd/nscd.c (print_version): Likewise.
3149         * debug/xtrace.sh: Likewise.
3150         * malloc/memusage.sh: Likewise.
3151         * malloc/mtrace.pl: Likewise.
3152         * debug/catchsegv.sh: Likewise.
3153
3154 2006-12-24  Ulrich Drepper  <drepper@redhat.com>
3155
3156         * malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment
3157         attempts.
3158
3159 2006-12-23  Ulrich Drepper  <drepper@redhat.com>
3160
3161         * posix/wordexp.c: Remove some unnecessary tests.
3162
3163 2006-12-22  Gavin Romig-Koch  <gavin@redhat.com>
3164
3165         * nis/nss_compat/compat-grp.c (internal_getgrgid_r): Don't
3166         blacklist the group till after we look it up.
3167
3168 2006-12-21  Ulrich Drepper  <drepper@redhat.com>
3169
3170         * include/atomic.h (atomic_forced_read): New macro.
3171
3172 2006-12-20  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
3173
3174         * sysdeps/unix/sysv/linux/sh/bits/shm.h: New file.
3175
3176 2006-12-19  Jakub Jelinek  <jakub@redhat.com>
3177
3178         * nss/getXXbyYY_r.c: Include atomic.h.
3179         (INTERNAL (REENTRANT_NAME)): Write startp after start_fct,
3180         add atomic_write_barrier () in between.
3181
3182         * stdlib/Makefile (tests): Add tst-makecontext.
3183         * stdlib/tst-makecontext.c: New test.
3184
3185         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
3186         (__makecontext): Don't realign uc_mcontext.uc_regs.
3187
3188 2006-11-28  Jakub Jelinek  <jakub@redhat.com>
3189
3190         * elf/dl-support.c: Include dl-procinfo.h.
3191         * sysdeps/powerpc/dl-procinfo.h (PPC_PLATFORM_POWER4,
3192         PPC_PLATFORM_PPC970, PPC_PLATFORM_POWER5, PPC_PLATFORM_POWER5_PLUS,
3193         PPC_PLATFORM_POWER6, PPC_PLATFORM_CELL_BE, PPC_PLATFORM_POWER6X):
3194         Define.
3195         (_dl_string_platform): Use PPC_PLATFORM_* macros instead of
3196         hardcoded constants.
3197         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platform): Use
3198         PPC_PLATFORM_* macros for array designators.
3199
3200 2006-11-11  Steven Munroe  <sjmunroe@us.ibm.com>
3201
3202         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 3 new cap
3203         names to the beginning.
3204         (_dl_powerpc_platforms): Add "power6x".
3205         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
3206         (HWCAP_IMPORTANT): Add PPC_FEATURE_HAS_DFP.
3207         (_DL_PLATFORMS_COUNT): Increase.
3208         (_dl_string_platform): Handle power6x case.
3209         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_PA6T, PPC_FEATURE_HAS_DFP,
3210         PPC_FEATURE_POWER6_EXT): Define.
3211         (PPC_FEATURE_POWER5, PPC_FEATURE_POWER5_PLUS): Correct Comment.
3212
3213 2006-12-18  Jakub Jelinek  <jakub@redhat.com>
3214
3215         [BZ #3747]
3216         * stdlib/jrand48_r.c (__jrand48_r): Make sure result is in the
3217         [-2^31 .. 2^31) range.
3218         * stdlib/tst-rand48.c (main): Fix expected values for 64-bit
3219         targets.
3220         * stdlib/tst-rand48-2.c: New test.
3221         * stdlib/Makefile (tests): Add tst-rand48-2.
3222
3223 2006-12-14  Jakub Jelinek  <jakub@redhat.com>
3224
3225         * misc/tst-pselect.c (do_test): Fix sigblock argument.
3226
3227 2006-12-14  Ulrich Drepper  <drepper@redhat.com>
3228
3229         * misc/tst-pselect.c (do_test): Make sure the helper process is
3230         terminating when the test is aborted.
3231
3232 2006-12-13  Ulrich Drepper  <drepper@redhat.com>
3233
3234         * sysdeps/unix/sysv/linux/bits/statvfs.h: Define ST_RELATIME.
3235         * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
3236         Handle relatime mount option.
3237
3238         [BZ #2337]
3239         * libio/Makefile (tests): Add tst-setvbuf1.
3240         * libio/tst-setvbuf1.c: New file.
3241
3242 2006-12-08  Jakub Jelinek  <jakub@redhat.com>
3243
3244         [BZ #2337]
3245         * libio/genops.c (__uflow): Fix a typo.
3246         * libio/wfiledoalloc.c (_IO_wfile_doallocate): Don't stat
3247         nor set _IO_LINE_BUF bit here.  Size the wide buffer based on
3248         the narrow buffer size.
3249
3250 2006-11-24  Jakub Jelinek  <jakub@redhat.com>
3251
3252         [BZ #2337]
3253         * libio/libio.h (_IO_FLAGS2_USER_WBUF): Define.
3254         * libio/wgenops.c (_IO_wsetb, _IO_wdefault_finish): Test and set
3255         _IO_FLAGS2_USER_WBUF bit in _flags2 instead of _IO_USER_BUF bit
3256         in _flags.
3257         * libio/wstrops.c (_IO_wstr_overflow, enlarge_userbuf,
3258         _IO_wstr_finish): Likewise.
3259         * libio/wmemstream.c (open_wmemstream): Likewise.
3260         * libio/fileops.c (_IO_new_file_close_it): Call _IO_set[bgp]
3261         even for wide streams.
3262
3263 2006-12-13  Jakub Jelinek  <jakub@redhat.com>
3264
3265         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Include
3266         kernel-features.h.
3267
3268 2006-12-11  Ulrich Drepper  <drepper@redhat.com>
3269
3270         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Parse thousand
3271         separators also if no non-zero digits found.
3272         * stdlib/Makefile (tests): Add tst-strtod3.
3273
3274 2006-12-09  Ulrich Drepper  <drepper@redhat.com>
3275
3276         [BZ #3632]
3277         * include/features.h: Fix comment about default value for
3278         _POSIX_C_SOURCE.
3279
3280         [BZ #3664]
3281         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix test to recognize
3282         empty parsed strings.
3283         * stdlib/Makefile (tests): Add tst-strtod2.
3284         * stdlib/tst-strtod2.c: New file.
3285
3286         [BZ #3673]
3287         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix exp_limit
3288         computation.
3289         * stdlib/Makefile (tests): Add tst-atof2.
3290         * stdlib/tst-atof2.c: New file.
3291
3292         [BZ #3674]
3293         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Adjust exponent value
3294         correctly if removing trailing zero of hex-float.
3295         * stdlib/Makefile (tests): Add tst-atof1.
3296         * stdlib/tst-atof1.c: New file.
3297
3298 2006-12-09  Jakub Jelinek  <jakub@redhat.com>
3299
3300         * misc/mntent_r.c (__hasmntopt): Check p[optlen] even when p == rest.
3301         Start searching for next comma at p rather than rest.
3302         * misc/Makefile (tests): Add tst-mntent2.
3303         * misc/tst-mntent2.c: New test.
3304
3305         * misc/getusershell.c (initshells): Check for integer overflows.
3306         Make strings buffer one bigger as fgets always succeeds when second
3307         argument is 1.  Don't use calloc for shells array.  Disallow
3308         / as shell.
3309
3310 2006-12-08  Ulrich Drepper  <drepper@redhat.com>
3311
3312         * malloc/memusage.c: Handle realloc with new size of zero and
3313         non-NULL pointer correctly.
3314         (me): Really write first record twice.
3315         (struct entry): Make format bi-arch safe.
3316         (dest): Write out more realloc statistics.
3317         * malloc/memusagestat.c (struct entry): Make format bi-arch safe.
3318
3319 2006-12-05  Jakub Jelinek  <jakub@redhat.com>
3320
3321         * nis/nis_subr.c (nis_getnames): Revert last change.
3322
3323 2006-12-04  Jakub Jelinek  <jakub@redhat.com>
3324
3325         * sysdeps/unix/sysv/linux/ttyname.c: Include termios.h.
3326         (ttyname): Use tcgetattr instead of isatty, don't set errno to ENOTTY.
3327         * sysdeps/unix/sysv/linux/ttyname_r.c: Include termios.h.
3328         (__ttyname_r): Use tcgetattr instead of isatty, don't set errno to
3329         ENOTTY.
3330         * io/Makefile: Add rules to build and run tst-ttyname_r test.
3331         * io/tst-ttyname_r.c: New test.
3332
3333 2006-12-03  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3334
3335         * sysdeps/unix/sysv/linux/sh/sys/io.h: Removed.
3336
3337 2006-11-30  H.J. Lu  <hongjiu.lu@intel.com>
3338
3339         * sysdeps/i386/i686/memcmp.S: Use jump table as the base of
3340         jump table entries.
3341
3342 2006-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
3343
3344         * sysdeps/unix/sysv/linux/i386/clone.S: Provide CFI for the outermost
3345         `clone' function to ensure proper unwinding stop of gdb.
3346         * sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
3347
3348 2006-12-01  Ulrich Drepper  <drepper@redhat.com>
3349
3350         * nscd/nscd.init: Remove obsolete and commented-out -S option
3351         handling.
3352
3353 2006-11-23  Jakub Jelinek  <jakub@redhat.com>
3354
3355         [BZ #3514]
3356         * manual/string.texi (strncmp): Fix pastos from wcscmp description.
3357
3358         [BZ #3515]
3359         * manual/string.texi (strtok): Remove duplicate paragraph.
3360
3361 2006-12-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
3362
3363         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Fix compatibility with
3364         libgcc not supporting `rflags' unwinding (register # >= 17).
3365
3366 2006-11-30  Jakub Jelinek  <jakub@redhat.com>
3367
3368         * sunrpc/svc_run.c (svc_run): Set my_pollfd to new_pollfd if realloc
3369         succeeded.
3370
3371 2006-11-29  Daniel Jacobowitz  <dan@codesourcery.com>
3372             Jakub Jelinek  <jakub@redhat.com>
3373             Jan Kratochvil  <jan.kratochvil@redhat.com>
3374
3375         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (restore_rt): Add correct
3376         unwind information.
3377         * sysdeps/unix/sysv/linux/x86_64/Makefile: Provide symbols for
3378         'restore_rt' even in the 'signal' directory.
3379         * sysdeps/unix/sysv/linux/x86_64/ucontext_i.sym: Extend the regs list.
3380
3381 2006-11-27  Jakub Jelinek  <jakub@redhat.com>
3382
3383         [BZ #3559]
3384         * sunrpc/svc_run.c (svc_run): Fail instead of segfaulting if
3385         malloc crashed.  Don't allocate memory unnecessarily in each
3386         loop.
3387
3388 2006-10-21  Jakub Jelinek  <jakub@redhat.com>
3389
3390         * resolv/mapv4v6addr.h (map_v4v6_address): Fix last change.
3391
3392 2006-11-20  Ulrich Drepper  <drepper@redhat.com>
3393
3394         * resolv/mapv4v6addr.h (map_v4v6_address): Optimize a bit.
3395
3396 2006-11-18  Bruno Haible  <bruno@clisp.org>
3397
3398         * sysdeps/unix/sysv/linux/i386/getgroups.c (__getgroups): Invoke
3399         __sysconf only after having tried to call getgroups32.
3400
3401 2006-11-19  Ulrich Drepper  <drepper@redhat.com>
3402
3403         * nss/nss_files/files-hosts.c (LINE_PARSER): Support IPv6-style
3404         addresses for IPv4 queries if they can be mapped.
3405
3406 2006-11-16  Jakub Jelinek  <jakub@redhat.com>
3407
3408         * sysdeps/x86_64/fpu/s_copysignf.S (__copysignf): Switch to .text.
3409         * sysdeps/x86_64/fpu/s_copysign.S (__copysign): Likewise.
3410         (signmask): Add .size directive.
3411         (othermask): Add .type directive.
3412
3413 2006-11-14  Ulrich Drepper  <drepper@redhat.com>
3414
3415         * po/nl.po: Update from translation team.
3416
3417         * timezone/zdump.c: Redo fix for BZ #3137.
3418
3419 2006-11-14  Jakub Jelinek  <jakub@redhat.com>
3420
3421         * nss/nss_files/files-alias.c (get_next_alias): Set line back
3422         to first_unused after parsing :include: file.
3423
3424 2006-11-10  Ulrich Drepper  <drepper@redhat.com>
3425
3426         * timezone/africa: Update from tzdata2006o.
3427         * timezone/antarctica: Likewise.
3428         * timezone/asia: Likewise.
3429         * timezone/australasia: Likewise.
3430         * timezone/backward: Likewise.
3431         * timezone/europe: Likewise.
3432         * timezone/iso3166.tab: Likewise.
3433         * timezone/northamerica: Likewise.
3434         * timezone/southamerica: Likewise.
3435         * timezone/zone.tab: Likewise.
3436
3437         * time/tzfile.c (__tzfile_read): Extend to handle new file format
3438         on machines with 64-bit time_t.
3439
3440         * timezone/checktab.awk: Update from tzcode2006o.
3441         * timezone/ialloc.c: Likewise.
3442         * timezone/private.h: Likewise.
3443         * timezone/scheck.c: Likewise.
3444         * timezone/tzfile.h: Likewise.
3445         * timezone/tzselect.ksh: Likewise.
3446         * timezone/zdump.c: Likewise.
3447         * timezone/zic.c: Likewise.
3448
3449         [BZ #3483]
3450         * elf/ldconfig.c (main): Call setlocale and textdomain.
3451         Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
3452
3453         [BZ #3480]
3454         * manual/argp.texi: Fix typos.
3455         * manual/charset.texi: Likewise.
3456         * manual/errno.texi: Likewise.
3457         * manual/filesys.texi: Likewise.
3458         * manual/lang.texi: Likewise.
3459         * manual/maint.texi: Likewise.
3460         * manual/memory.texi: Likewise.
3461         * manual/message.texi: Likewise.
3462         * manual/resource.texi: Likewise.
3463         * manual/search.texi: Likewise.
3464         * manual/signal.texi: Likewise.
3465         * manual/startup.texi: Likewise.
3466         * manual/stdio.texi: Likewise.
3467         * manual/sysinfo.texi: Likewise.
3468         * manual/syslog.texi: Likewise.
3469         * manual/time.texi: Likewise.
3470         Patch by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3471
3472         [BZ #3465]
3473         * sunrpc/clnt_raw.c: Minimal message improvements.
3474         * sunrpc/pm_getmaps.c: Likewise.
3475         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
3476         * nis/nis_print_group_entry.c: Likewise.
3477         * locale/programs/repertoire.c: Likewise.
3478         * locale/programs/charmap.c: Likewise.
3479         * malloc/memusage.sh: Likewise.
3480         * elf/dl-deps.c: Likewise.
3481         * locale/programs/ld-collate.c: Likewise.
3482         * libio/vswprintf.c: Likewise.
3483         * malloc/memusagestat.c: Likewise.
3484         * sunrpc/auth_unix.c: Likewise.
3485         * sunrpc/rpc_main.c: Likewise.
3486         * nscd/cache.c: Likewise.
3487         * locale/programs/repertoire.c: Unify output messages.
3488         * locale/programs/charmap.c: Likewise.
3489         * locale/programs/ld-ctype.c: Likewise.
3490         * locale/programs/ld-monetary.c: Likewise.
3491         * locale/programs/ld-numeric.c: Likewise.
3492         * locale/programs/ld-time.c: Likewise.
3493         * elf/ldconfig.c: Likewise.
3494         * nscd/selinux.c: Likewise.
3495         * elf/cache.c: Likewise.
3496         Patch mostly by Benno Schulenberg <bensberg@justemail.net>.
3497
3498         [BZ #3451]
3499         * sysdeps/i386/fpu/bits/mathinline.h (floor): Make rounding mode
3500         change atomic.
3501         (ceil): Likewise.
3502
3503 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
3504
3505         * string/strxfrm_l.c (STRXFRM): Fix trailing \1 optimization
3506         if N is one bigger than return value.
3507         * string/tst-strxfrm2.c (do_test): Also test strxfrm with l1 + 1
3508         and l1 last arguments, if buf is defined, verify the return value
3509         equals to strlen (buf) and verify no byte beyond passed length
3510         is modified.
3511
3512 2006-11-10  Ulrich Drepper  <drepper@redhat.com>
3513
3514         * po/sv.po: Update from translation team.
3515
3516 2006-11-09  Ulrich Drepper  <drepper@redhat.com>
3517
3518         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word): Add
3519         noinline attribute.
3520
3521 2006-11-10  Jakub Jelinek  <jakub@redhat.com>
3522
3523         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word): Add
3524         noinline attribute.
3525
3526         * sysdeps/gnu/siglist.c (__old_sys_siglist, __old_sys_sigabbrev):
3527         Use __new_sys_siglist instead of _sys_siglist_internal as
3528         second macro argument.
3529         (_old_sys_siglist): Use declare_symbol_alias macro instead of
3530         strong_alias.
3531
3532 2006-11-09  Ulrich Drepper  <drepper@redhat.com>
3533
3534         [BZ #3493]
3535         * posix/unistd.h (sysconf): Remove const attribute.
3536
3537         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Fix test for
3538         temporary or deprecated addresses.
3539         Patch by Sridhar Samudrala <sri@us.ibm.com>.
3540
3541         * string/Makefile (tests): Add tst-strxfrm2.
3542         * string/tst-strxfrm2.c: New file.
3543
3544 2006-10-09  Jakub Jelinek  <jakub@redhat.com>
3545
3546         * elf/dl-debug.c (_dl_debug_initialize): Check r->r_map for 0
3547         rather than r->r_brk.
3548
3549 2006-11-08  Jakub Jelinek  <jakub@redhat.com>
3550
3551         * string/strxfrm_l.c (STRXFRM): Do the trailing \1 removal
3552         optimization even if needed > n.
3553
3554         * elf/dl-load.c (decompose_rpath): Return bool rather than void.
3555         If l->l_name is on inhibit_rpath list, set sps->dirs to -1 and
3556         return false, otherwise return true.
3557         (cache_rpath): Return decompose_rpath return value.
3558
3559 2006-11-07  Jakub Jelinek  <jakub@redhat.com>
3560
3561         * include/libc-symbols.h (declare_symbol): Rename to...
3562         (declare_symbol_alias): ... this.  Add ORIGINAL argument, imply
3563         strong_alias (ORIGINAL, SYMBOL) in asm to make sure it preceedes
3564         .size directive.
3565         * sysdeps/gnu/errlist-compat.awk: Adjust for declare_symbol_alias
3566         changes.
3567         * sysdeps/gnu/siglist.c: Likewise.
3568
3569 2006-11-03  Steven Munroe  <sjmunroe@us.ibm.com>
3570
3571         * sysdeps/powerpc/fpu/bits/mathinline.h
3572         [__LIBC_INTERNAL_MATH_INLINES]: Moved to ...
3573         * sysdeps/powerpc/fpu/math_private.h: ...here.  New file.
3574
3575 2006-11-05  Ulrich Drepper  <drepper@redhat.com>
3576
3577         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_check_word):
3578         Update handling of cache descriptor 0x49 for new models.
3579         * sysdeps/unix/sysv/linux/x86_64/sysconf.c (intel_check_word):
3580         Likewise.
3581
3582 2006-11-02  Jakub Jelinek  <jakub@redhat.com>
3583
3584         * malloc/memusage.c (dest): Reset not_me back to false after
3585         printing statistics.
3586
3587 2006-11-02  Ulrich Drepper  <drepper@redhat.com>
3588
3589         * configure.in: Work around ld --help change and avoid -z relro
3590         test completely if the architecture doesn't care about security.
3591
3592 2006-11-01  Ulrich Drepper  <drepper@redhat.com>
3593
3594         * po/sv.po: Update from translation team.
3595
3596 2006-10-31  Ulrich Drepper  <drepper@redhat.com>
3597
3598         * stdlib/atexit.c (atexit): Don't mark as hidden when used to
3599         generate compatibility version.
3600
3601 2006-10-29  Ulrich Drepper  <drepper@redhat.com>
3602
3603         * configure.in: Relax -z relro requirement a bit.
3604
3605         * po/sv.po: Update from translation team.
3606
3607 2006-10-29  Jakub Jelinek  <jakub@redhat.com>
3608
3609         * elf/dl-sym.c (do_sym): Use RTLD_SINGLE_THREAD_P.
3610         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Likewise.
3611         * elf/dl-close.c (_dl_close_worker): Likewise.
3612         * elf/dl-open.c (_dl_open_worker): Likewise.
3613         * sysdeps/generic/sysdep-cancel.h (RTLD_SINGLE_THREAD_P): Define.
3614
3615 2006-10-27  Ulrich Drepper  <drepper@redhat.com>
3616
3617         * configure.in: Require assembler support for visibility, compiler
3618         support for visibility and aliases, linker support for various -z
3619         options.
3620         * Makeconfig: Remove conditional code which now is unnecessary.
3621         * config.h.in: Likewise.
3622         * config.make.in: Likewise.
3623         * dlfcn/Makefile: Likewise.
3624         * elf/Makefile: Likewise.
3625         * elf/dl-load.c: Likewise.
3626         * elf/rtld.c: Likewise.
3627         * include/libc-symbols.h: Likewise.
3628         * include/stdio.h: Likewise.
3629         * io/Makefile: Likewise.
3630         * io/fstat.c: Likewise.
3631         * io/fstat64.c: Likewise.
3632         * io/fstatat.c: Likewise.
3633         * io/fstatat64.c: Likewise.
3634         * io/lstat.c: Likewise.
3635         * io/lstat64.c: Likewise.
3636         * io/mknod.c: Likewise.
3637         * io/mknodat.c: Likewise.
3638         * io/stat.c: Likewise.
3639         * io/stat64.c: Likewise.
3640         * libio/stdio.c: Likewise.
3641         * nscd/Makefile: Likewise.
3642         * stdlib/Makefile: Likewise.
3643         * stdlib/atexit.c: Likewise.
3644         * sysdeps/generic/ldsodefs.h: Likewise.
3645         * sysdeps/i386/dl-machine.h: Likewise.
3646         * sysdeps/i386/sysdep.h: Likewise.
3647         * sysdeps/i386/i686/memcmp.S: Likewise.
3648         * sysdeps/powerpc/powerpc32/sysdep.h: Likewise.
3649         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
3650         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
3651
3652         * Makerules: USE_TLS support is now default.
3653         * tls.make.c: Likewise.
3654         * csu/Versions: Likewise.
3655         * csu/libc-start.c: Likewise.
3656         * csu/libc-tls.c: Likewise.
3657         * csu/version.c: Likewise.
3658         * dlfcn/dlinfo.c: Likewise.
3659         * elf/dl-addr.c: Likewise.
3660         * elf/dl-cache.c: Likewise.
3661         * elf/dl-close.c: Likewise.
3662         * elf/dl-iteratephdr.c: Likewise.
3663         * elf/dl-load.c: Likewise.
3664         * elf/dl-lookup.c: Likewise.
3665         * elf/dl-object.c: Likewise.
3666         * elf/dl-open.c: Likewise.
3667         * elf/dl-reloc.c: Likewise.
3668         * elf/dl-support.c: Likewise.
3669         * elf/dl-sym.c: Likewise.
3670         * elf/dl-sysdep.c: Likewise.
3671         * elf/dl-tls.c: Likewise.
3672         * elf/ldconfig.c: Likewise.
3673         * elf/rtld.c: Likewise.
3674         * elf/tst-tls-dlinfo.c: Likewise.
3675         * elf/tst-tls1.c: Likewise.
3676         * elf/tst-tls10.h: Likewise.
3677         * elf/tst-tls14.c: Likewise.
3678         * elf/tst-tls2.c: Likewise.
3679         * elf/tst-tls3.c: Likewise.
3680         * elf/tst-tls4.c: Likewise.
3681         * elf/tst-tls5.c: Likewise.
3682         * elf/tst-tls6.c: Likewise.
3683         * elf/tst-tls7.c: Likewise.
3684         * elf/tst-tls8.c: Likewise.
3685         * elf/tst-tls9.c: Likewise.
3686         * elf/tst-tlsmod1.c: Likewise.
3687         * elf/tst-tlsmod13.c: Likewise.
3688         * elf/tst-tlsmod13a.c: Likewise.
3689         * elf/tst-tlsmod14a.c: Likewise.
3690         * elf/tst-tlsmod2.c: Likewise.
3691         * elf/tst-tlsmod3.c: Likewise.
3692         * elf/tst-tlsmod4.c: Likewise.
3693         * elf/tst-tlsmod5.c: Likewise.
3694         * elf/tst-tlsmod6.c: Likewise.
3695         * include/errno.h: Likewise.
3696         * include/link.h: Likewise.
3697         * include/tls.h: Likewise.
3698         * locale/global-locale.c: Likewise.
3699         * locale/localeinfo.h: Likewise.
3700         * malloc/arena.c: Likewise.
3701         * malloc/hooks.c: Likewise.
3702         * malloc/malloc.c: Likewise.
3703         * resolv/Versions: Likewise.
3704         * sysdeps/alpha/dl-machine.h: Likewise.
3705         * sysdeps/alpha/libc-tls.c: Likewise.
3706         * sysdeps/generic/ldsodefs.h: Likewise.
3707         * sysdeps/generic/tls.h: Likewise.
3708         * sysdeps/i386/dl-machine.h: Likewise.
3709         * sysdeps/ia64/dl-machine.h: Likewise.
3710         * sysdeps/ia64/libc-tls.c: Likewise.
3711         * sysdeps/mach/hurd/fork.c: Likewise.
3712         * sysdeps/mach/hurd/i386/tls.h: Likewise.
3713         * sysdeps/powerpc/powerpc32/dl-machine.c: Likwise.
3714         * sysdeps/powerpc/powerpc32/dl-machine.h: Likewise.
3715         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
3716         * sysdeps/s390/libc-tls.c: Likewise.
3717         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
3718         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
3719         * sysdeps/sh/dl-machine.h: Likewise.
3720         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
3721         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
3722         * sysdeps/x86_64/dl-machine.h: Likewise.
3723
3724         * elf/dl-close.c (_dl_close_worker): Renamed from _dl_close and
3725         split out locking and parameter checking.
3726         (_dl_close): Call _dl_close_worker after locking and checking.
3727         * elf/dl-open.c (_dl_open): Call _dl_close_worker instead of
3728         _dl_close.
3729         * elf/Makefile: Add rules to build and run tst-thrlock.
3730         * elf/tst-thrlock.c:  New file.
3731
3732         [BZ #3426]
3733         * stdlib/stdlib.h: Adjust comment for canonicalize_file_name to
3734         reality.
3735
3736         [BZ #3429]
3737         * elf/dl-open.c (dl_open_worker): Keep holding dl_load_lock until
3738         we are sure we do not need it anymore for _dl_close.  Also move
3739         the asserts inside the lock region.
3740         Patch mostly by Suzuki <suzuki@in.ibm.com>.
3741
3742 2006-10-27  Jakub Jelinek  <jakub@redhat.com>
3743
3744         * elf/dl-lookup.c (_dl_debug_bindings): Remove unused symbol_scope
3745         argument.
3746         (_dl_lookup_symbol_x): Adjust caller.
3747
3748         * sysdeps/generic/ldsodefs.h (struct link_namespaces): Remove
3749         _ns_global_scope.
3750         * elf/rtld.c (dl_main): Don't initialize _ns_global_scope.
3751
3752         * elf/dl-libc.c: Revert l_scope name changes.
3753         * elf/dl-load.c: Likewise.
3754         * elf/dl-object.c: Likewise.
3755         * elf/rtld.c: Likewise.
3756         * elf/dl-close.c (_dl_close): Likewise.
3757         * elf/dl-open.c (dl_open_worker): Likewise.  If not SINGLE_THREAD_P,
3758         always use __rtld_mrlock_{change,done}.  Always free old scope list
3759         here if not l_scope_mem.
3760         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Revert l_scope name
3761         change.  Never free scope list here.  Just __rtld_mrlock_lock before
3762         the lookup and __rtld_mrlock_unlock it after the lookup.
3763         * elf/dl-sym.c: Likewise.
3764         * include/link.h (struct r_scoperec): Remove.
3765         (struct link_map): Replace l_scoperec with l_scope, l_scoperec_mem
3766         with l_scope_mem and l_scoperec_lock with l_scope_lock.
3767
3768 2006-10-25  Ulrich Drepper  <drepper@redhat.com>
3769
3770         * sysdeps/gnu/netinet/tcp.h: Define TCP_CONGESTION.
3771
3772 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
3773
3774         * configure.in: Disable building profile libraries by default.
3775
3776 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
3777
3778         * sunrpc/xdr_mem.c (xdrmem_setpos): Don't compare addresses
3779         as signed longs, check for x_base + pos overflow.
3780         * sunrpc/Makefile (tests): Add tst-xdrmem2.
3781         * sunrpc/tst-xdrmem2.c: New test.
3782
3783 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
3784
3785         * elf/dl-lookup.c (_dl_lookup_symbol_x): Add warning to
3786         _dl_lookup_symbol_x code.
3787
3788 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
3789
3790         * elf/dl-runtime.c: Include sysdep-cancel.h.
3791         (_dl_fixup, _dl_profile_fixup): Use __rtld_mrlock_* and
3792         scoperec->nusers only if !SINGLE_THREAD_P.  Use atomic_*
3793         instead of catomic_* macros.
3794         * elf/dl-sym.c: Include sysdep-cancel.h.
3795         (do_sym): Use __rtld_mrlock_* and scoperec->nusers only
3796         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
3797         * elf/dl-close.c: Include sysdep-cancel.h.
3798         (_dl_close): Use __rtld_mrlock_* and scoperec->nusers only
3799         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
3800         * elf/dl-open.c: Include sysdep-cancel.h.
3801         (dl_open_worker): Use __rtld_mrlock_* and scoperec->nusers only
3802         if !SINGLE_THREAD_P.  Use atomic_* instead of catomic_* macros.
3803
3804 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
3805
3806         [BZ #3313]
3807         * malloc/malloc.c (malloc_consolidate): Set maxfb to address of last
3808         fastbin rather than end of fastbin array.
3809
3810 2006-10-18  Ulrich Drepper  <drepper@redhat.com>
3811
3812         * sysdeps/i386/i486/bits/atomic.h (catomic_decrement): Use correct
3813         body macro.
3814         * sysdeps/x86_64/bits/atomic.h
3815         (__arch_c_compare_and_exchange_val_64_acq): Add missing casts.
3816         (catomic_decrement): Use correct body macro.
3817
3818 2006-10-17  Jakub Jelinek  <jakub@redhat.com>
3819
3820         * include/atomic.h: Add a unique prefix to all local variables
3821         in macros.
3822         * csu/tst-atomic.c (do_test): Test also catomic_* macros.
3823
3824 2006-10-16  Ulrich Drepper  <drepper@redhat.com>
3825
3826         [BZ #3369]
3827         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Fix typos in rules 4
3828         and 7.
3829
3830 2006-10-14  Ulrich Drepper  <drepper@redhat.com>
3831
3832         * resolv/arpa/nameser.h: Document that ns_t_a6 is deprecated.
3833
3834 2006-10-13  Ulrich Drepper  <drepper@redhat.com>
3835
3836         [BZ #3313]
3837         * malloc/malloc.c (malloc_consolidate): Don't use get_fast_max to
3838         determine highest fast bin to consolidate, always look into all of
3839         them.
3840         (do_check_malloc_state): Only require for empty bins for large
3841         sizes in main arena.
3842
3843         * libio/stdio.h: Add more __wur attributes.
3844
3845         * elf/dl-minimal.c (realloc): Optimize last patch.
3846
3847 2006-10-12  Richard Sandiford  <richard@codesourcery.com>
3848
3849         [BZ #3352]
3850         * elf/dl-minimal.c (realloc): Let malloc() return a new pointer,
3851         and use memcpy() if it does.
3852
3853 2006-11-12  Andreas Jaeger  <aj@suse.de>
3854
3855         [BZ #2510]
3856         * manual/search.texi (Hash Search Function): Clarify.
3857         (Array Search Function): Clarify.
3858
3859 2006-11-12  Joseph Myers  <joseph@codesourcery.com>
3860
3861         [BZ #2830]
3862         * math/atest-exp.c (main): Cast hex value to mp_limb_t before
3863         shifting.
3864         * math/atest-exp2.c (read_mpn_hex): Likewise.
3865         * math/atest-sincos.c (main): Likewise.
3866
3867 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
3868
3869         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_pwait.
3870         * sysdeps/unix/sysv/linux/sys/epoll.h: Declare epoll_pwait.
3871         * sysdeps/unix/sysv/linux/Versions (libc): Add epoll_pwait for
3872         version GLIBC_2.6.
3873         * Versions.def: Add GLIBC_2.6 for libc.
3874
3875         * sysdeps/unix/sysv/linux/i386/sysdep.h (DOARGS_6): Fix offset.
3876
3877         * sysdeps/i386/i486/bits/atomic.h: Add catomic_* support.
3878
3879 2006-10-11  Jakub Jelinek  <jakub@redhat.com>
3880
3881         * malloc/malloc.c (_int_malloc): Remove unused any_larger variable.
3882
3883         * nis/nis_defaults.c (__nis_default_access): Don't call getenv twice.
3884
3885         * nis/nis_subr.c (nis_getnames): Use __secure_getenv instead of getenv.
3886         * sysdeps/generic/unsecvars.h: Add NIS_PATH.
3887
3888 2006-10-11  Ulrich Drepper  <drepper@redhat.com>
3889
3890         * include/atomic.c: Define catomic_* operations.
3891         * sysdeps/x86_64/bits/atomic.h: Likewise.  Fix a few minor problems.
3892         * stdlib/cxa_finalize.c: Use catomic_* operations instead of atomic_*.
3893         * malloc/memusage.c: Likewise.
3894         * gmon/mcount.c: Likewise.
3895         * elf/dl-close.c: Likewise.
3896         * elf/dl-open.c: Likewise.
3897         * elf/dl-profile.c: Likewise.
3898         * elf/dl-sym.c: Likewise.
3899         * elf/dl-runtime.c: Likewise.
3900         * elf/dl-fptr.c: Likewise.
3901         * resolv/res_libc.c: Likewise.
3902
3903 2006-10-10  Ulrich Drepper  <drepper@redhat.com>
3904
3905         * nis/nis_subr.c (nis_getnames): Add trailing dot to NIS_PATH
3906         components which lack them.
3907
3908         * nis/nis_subr.c (nis_getnames): Make sure that we always return
3909         at least one entry consisting of the parameter concatenated with
3910         the domain.
3911
3912 2006-10-10  Roland McGrath  <roland@frob.com>
3913
3914         * sysdeps/mach/hurd/utimes.c: Use a union to avoid an improper cast.
3915         * sysdeps/mach/hurd/futimes.c: Likewise.
3916         * sysdeps/mach/hurd/lutimes.c: Likewise.
3917
3918 2006-10-09  Ulrich Drepper  <drepper@redhat.com>
3919             Jakub Jelinek  <jakub@redhat.com>
3920
3921         Implement reference counting of scope records.
3922         * elf/dl-close.c (_dl_close): Remove all scopes from removed objects
3923         from the list in objects which remain.  Always allocate new scope
3924         record.
3925         * elf/dl-open.c (dl_open_worker): When growing array for scopes,
3926         don't resize, allocate a new one.
3927         * elf/dl-runtime.c: Update reference counters before using a scope
3928         array.
3929         * elf/dl-sym.c: Likewise.
3930         * elf/dl-libc.c: Adjust for l_scope name change.
3931         * elf/dl-load.c: Likewise.
3932         * elf/dl-object.c: Likewise.
3933         * elf/rtld.c: Likewise.
3934         * include/link.h: Include <rtld-lowlevel.h>.  Define struct
3935         r_scoperec.  Replace r_scope with pointer to r_scoperec structure.
3936         Add l_scoperec_lock.
3937         * sysdeps/generic/ldsodefs.h: Include <rtld-lowlevel.h>.
3938         * sysdeps/generic/rtld-lowlevel.h: New file.
3939
3940         * include/atomic.h: Rename atomic_and to atomic_and_val and
3941         atomic_or to atomic_or_val.  Define new macros atomic_and and
3942         atomic_or which do not return values.
3943         * sysdeps/x86_64/bits/atomic.h: Define atomic_and and atomic_or.
3944         Various cleanups.
3945         * sysdeps/i386/i486/bits/atomic.h: Likewise.
3946
3947         * po/sv.po: Update from translation team.
3948
3949 2006-10-07  Ulrich Drepper  <drepper@redhat.com>
3950
3951         * Versions.def: Add GLIBC_2.6 to libpthread.
3952
3953         * include/shlib-compat.h (SHLIB_COMPAT): Expand parameters before use.
3954         (versioned_symbol): Likewise.
3955         (compat_symbol): Likewise.
3956
3957         * po/tr.po: Update from translation team.
3958
3959 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
3960
3961         * nis/Banner: Removed.  It's been integral part forever and the
3962         author info is incomplete anyway.
3963         * libio/Banner: Likewise.
3964
3965         * nis/nis_table.c (nis_list): If __follow_path fails in the new
3966         code, make sure the nis_freeresult call doesn't crash and that the
3967         result is reported correctly.
3968
3969 2006-09-27  Jakub Jelinek  <jakub@redhat.com>
3970
3971         * nis/nis_table.c (nis_list): Handle FOLLOW_PATH | ALL_RESULTS
3972         when callback is NULL.
3973
3974         * nis/Versions (libnss_nisplus): Add
3975         _nss_nisplus_initgroups_dyn@@GLIBC_PRIVATE.
3976         * nis/Makefile (libnss_nisplus-routines): Add nisplus-initgroups.
3977         * nis/nss_nisplus/nisplus-grp.c (tablename_val, tablename_len,
3978         _nss_create_tablename): Rename to...
3979         (grp_tablename_val, grp_tablename_len, _nss_grp_create_tablename):
3980         ... these.  No longer static.
3981         (internal_setgrent): Adjust users.
3982         (_nss_nisplus_getgrnam_r, _nss_nisplus_getgrgid_r): Likewise.
3983         Don't use locking around _nss_grp_create_tablename call.
3984         * nis/nss_nisplus/nisplus-initgroups.c: New file.
3985
3986 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
3987
3988         * version.h (VERSION): Bump to 2.5.90 for new development tree.
3989
3990 2006-10-06  Andreas Jaeger  <aj@suse.de>
3991
3992         * include/features.h (__GLIBC_MINOR__): It's glibc 2.5 now.
3993
3994 2006-10-06  Ulrich Drepper  <drepper@redhat.com>
3995
3996         * po/pl.po: Update from translation team.
3997
3998         * nscd/nscd.c (main): Fix typo in message.
3999         Patch by Jakub Bogsz <qboosh@pld-linux.org>.
4000
4001 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
4002
4003         [BZ #3291]
4004         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
4005         errno.h, signal.h, unistd.h and sysdep-cancel.h.
4006         (__sigprocmask): Define.
4007
4008 2006-10-02  Ulrich Drepper  <drepper@redhat.com>
4009
4010         * elf/rtld.c (dl_main): Don't use prelinking if LD_DYNAMIC_WEAK is
4011         used.
4012
4013 2006-10-02  Jakub Jelinek  <jakub@redhat.com>
4014
4015         * nscd/mem.c (mempool_alloc): Round array size to 16 bytes
4016         in oldtotal and newtotal calculation.
4017         * nscd/nscd-client.h (struct mapped_database): Add datasize
4018         field.
4019         * nscd/nscd_helper.c (get_mapping): Initialize datasize field.
4020         (__nscd_get_map_ref): Get a new mapping even if mapping's data_size
4021         increased.
4022         (__nscd_cache_search): Add checks to make sure we never reference
4023         data beyond the current mapping.
4024
4025 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
4026
4027         * sysdeps/posix/getaddrinfo.c (match_prefix): Make mask and val
4028         variables const to avoid compiler warnings.
4029
4030         * io/fts.c (fts_close): Remove redundant checks.
4031         (fts_build): Likewise.
4032         (fts_palloc): Likewise.
4033
4034         * manual/message.texi (Advanced gettext functions,
4035         Using gettextized software): Fix typos.
4036
4037 2006-09-30  Ulrich Drepper  <drepper@redhat.com>
4038
4039         * posix/glob.c (glob_in_dir): Add some comments and asserts to
4040         explain why there are no leaks.
4041
4042 2006-09-29  Ulrich Drepper  <drepper@redhat.com>
4043
4044         * libio/wmemstream.c: Include <wchar.h>.
4045         * libio/bug-wmemstream1.c: Likewise.
4046         * libio/tst-wmemstream1.c: Likewise.
4047         * libio/tst-wmemstream2.c: Likewise.
4048
4049         * version.h (RELEASE): Bump to 2.5.
4050         * README: Regenerated.
4051
4052         * locale/iso-3166.def: Add Aaland Islands and Montenegro.
4053
4054         [BZ #3273]
4055         * nscd/nscd_initgroups.c (__nscd_getgrouplist): It is OK to have
4056         found no group members.
4057         Patch by Petr Baudis.
4058
4059 2006-09-29  Jakub Jelinek  <jakub@redhat.com>
4060
4061         * elf/rtld.c (_dl_start_final): If not USE___THREAD, don't
4062         assert bootstrap_map.l_tls_modid is zero.
4063         (_dl_start): Initialize bootstrap_map.l_tls_modid to 0
4064         if USE___THREAD.
4065
4066 2006-09-27  Ulrich Drepper  <drepper@redhat.com>
4067
4068         * libio/stdio.h: Move open_wmemstream prototype to ...
4069         * wcsmbs/wchar.h: ... here.
4070
4071 2006-09-25  Jakub Jelinek  <jakub@redhat.com>
4072
4073         [BZ #3252]
4074         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Handle only
4075         fchownat syscall and __ASSUME_LCHOWN_SYSCALL case inline, call
4076         __{,l}chown to handle the rest.
4077         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Handle only
4078         fchownat syscall and __ASSUME_32BITUIDS case inline, call
4079         __{,l}chown to handle the rest.
4080         * sysdeps/unix/sysv/linux/sparc/sparc32/fchownat.c: Include
4081         i386/fchownat.c.
4082         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c: Likewise.
4083         * sysdeps/unix/sysv/linux/sh/fchownat.c: Likewise.
4084
4085         [BZ #3253]
4086         * posix/glob.c (glob_in_dir): Don't alloca one struct globlink at a
4087         time, rather allocate increasingly bigger arrays of pointers, if
4088         possible with alloca, if too large with malloc.
4089
4090 2006-09-24  Jakub Jelinek  <jakub@redhat.com>
4091
4092         * sysdeps/powerpc/fpu/libm-test-ulps: Updated.
4093
4094         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Fix 2 typos.
4095
4096 2006-09-24  Ulrich Drepper  <drepper@redhat.com>
4097
4098         * sysdeps/posix/getaddrinfo.c (rfc3484_sort): Implement rule 4,
4099         home addresses.
4100         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Recognize
4101         IFA_F_HOMEADDRESS flag for interfaces.
4102         * include/ifaddrs.h (struct in6addrinfo): Define
4103         in6ai_homeaddress.
4104
4105 2006-09-21  Jakub Jelinek  <jakub@redhat.com>
4106
4107         [BZ #3225]
4108         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (PTR_MANGLE3,
4109         PTR_DEMANGLE3): Define.
4110         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (PTR_MANGLE3,
4111         PTR_DEMANGLE3): Likewise.
4112         * sysdeps/powerpc/powerpc32/__longjmp-common.S (__longjmp): Use them.
4113         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S (__longjmp):
4114         Likewise.
4115         * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp): Likewise.
4116
4117 2006-09-20  Jakub Jelinek  <jakub@redhat.com>
4118
4119         * po/libc.pot: Regenerated.
4120         * po/be.po: Updated.
4121         * po/ca.po: Likewise.
4122         * po/cs.po: Likewise.
4123         * po/da.po: Likewise.
4124         * po/de.po: Likewise.
4125         * po/el.po: Likewise.
4126         * po/en_GB.po: Likewise.
4127         * po/es.po: Likewise.
4128         * po/fi.po: Likewise.
4129         * po/fr.po: Likewise.
4130         * po/gl.po: Likewise.
4131         * po/hr.po: Likewise.
4132         * po/hu.po: Likewise.
4133         * po/ja.po: Likewise.
4134         * po/ko.po: Likewise.
4135         * po/nb.po: Likewise.
4136         * po/nl.po: Likewise.
4137         * po/pl.po: Likewise.
4138         * po/pt_BR.po: Likewise.
4139         * po/ru.po: Likewise.
4140         * po/rw.po: Likewise.
4141         * po/sk.po: Likewise.
4142         * po/sv.po: Likewise.
4143         * po/tr.po: Likewise.
4144         * po/zh_CN.po: Likewise.
4145         * po/zh_TW.po: Likewise.
4146
4147         [BZ #3137]
4148         * iconv/iconv_prog.c (main): Fix spelling in error message.
4149         * iconv/iconvconfig.c (main): Likewise.
4150         * locale/programs/ld-collate.c (handle_ellipsis): Likewise.
4151         * locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): Likewise.
4152         * locale/programs/localedef.c (main): Likewise.
4153         * locale/programs/repertoire.c (repertoire_read): Likewise.
4154         * timezone/zdump.c (main): Likewise.
4155         * nscd/connections.c (handle_request): Fix spelling in log message.
4156         Patch by Malcolm Parsons <malcolm.parsons@gmail.com>.
4157
4158 2006-09-20  Ulrich Drepper  <drepper@redhat.com>
4159
4160         * inet/inet6_option.c: Also emit linker warnings for the RFC 2292
4161         interfaces.
4162
4163 2006-09-20  Andreas Jaeger  <aj@suse.de>
4164
4165         * math/libm-test.inc (lrint_test_upward): Fix typo.
4166
4167 2006-06-17  Joseph S. Myers  <joseph@codesourcery.com>
4168
4169         [BZ #2592]
4170         * math/libm-test.inc (lrint_test_tonearest): New function.
4171         (lrint_test_towardzero): New function.
4172         (lrint_test_downward): New function.
4173         (lrint_test_upward): New function.
4174         (main): Run these new tests.
4175         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Correct rounding
4176         of values near to 0.
4177         (two52): Use double not long double.
4178         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
4179         * sysdeps/ieee754/flt-32/s_llrintf.c (__llrintf): Likewise.
4180         (two23): Use float not double.
4181         * sysdeps/ieee754/flt-32/s_lrintf.c (__lrintf): Likewise.
4182         (two23): Use float not double.
4183         * sysdeps/ieee754/ldbl-128/s_llrintl.c (__llrintl): Likewise.
4184         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
4185         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Likewise.
4186         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
4187
4188 2006-09-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
4189
4190         * sysdeps/unix/sysv/linux/s390/s390-32/makecontext.c (__makecontext):
4191         Cast sp to unsigned long to avoid compiler warning.
4192         Use __makecontext_ret function instead of a trampoline on the stack.
4193         (__makecontext_ret): New function.
4194         * sysdeps/unix/sysv/linux/s390/s390-64/makecontext.c: Likewise.
4195
4196 2006-09-19  Jakub Jelinek  <jakub@redhat.com>
4197
4198         * elf/dl-cache.c (HWCAP_CHECK): If _DL_PLATFORMS_COUNT, but
4199         platform == -1, reject any libs with non-zero _DL_HWCAP_PLATFORM
4200         bits.
4201
4202 2006-09-19  Ulrich Drepper  <drepper@redhat.com>
4203
4204         * elf/dl-close.c (_dl_close): If dependency is not unloaded make
4205         sure no reference to the unloaded map's search list remains in the
4206         dependency's scope.
4207
4208 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
4209
4210         * elf/Makefile: Add rules to build and run unload7 test.
4211         * elf/unload7.c: New test.
4212         * elf/unload7mod1.c: New file.
4213         * elf/unload7mod2.c: New file.
4214
4215 2006-09-18  Jakub Jelinek  <jakub@redhat.com>
4216
4217         * sysdeps/unix/sysv/linux/sys/ptrace.h (PT_GETEVENTMSG): Fix pasto.
4218         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h (PTRACE_SETOPTIONS,
4219         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
4220         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h (PTRACE_SETOPTIONS,
4221         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
4222         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h (PTRACE_SETOPTIONS,
4223         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Likewise.
4224         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h (PTRACE_SETOPTIONS,
4225         PTRACE_GETEVENTMSG): Likewise.
4226         (PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Change to the arch independent
4227         values.
4228
4229 2006-09-17  Mike Frysinger  <vapier@gentoo.org>
4230
4231         * sysdeps/unix/sysv/linux/sys/ptrace.h (PTRACE_SETOPTIONS,
4232         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO, PTRACE_SETSIGINFO): Define.
4233         * sysdeps/unix/sysv/linux/ptrace.c (ptrace): Check PTRACE_SETOPTIONS,
4234         PTRACE_GETEVENTMSG, PTRACE_GETSIGINFO and PTRACE_SETSIGINFO.
4235
4236 2006-09-16  Jakub Jelinek  <jakub@redhat.com>
4237
4238         * sysdeps/powerpc/powerpc32/register-dump.h (register_dump): Don't
4239         write '\0' to the fd.
4240         * sysdeps/mach/hurd/powerpc/register-dump.h (register_dump): Likewise.
4241         * sysdeps/powerpc/powerpc64/register-dump.h (register_dump): Likewise.
4242         Change regs to unsigned long pointer from unsigned int, fix fscr
4243         offset.
4244
4245 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
4246
4247         * io/Makefile (CFLAGS-fstatat.c): Set.
4248         (CFLAGS-fstatat64.c): Likewise.
4249         (CFLAGS-mknodat.c): Likewise.
4250
4251         * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c: Comment fixes.
4252         * sysdeps/ieee754/ldbl-128ibm/s_llroundl.c: Likewise.
4253         * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c: Rewritten.
4254         * sysdeps/ieee754/ldbl-128ibm/s_lroundl.c: Rewritten.
4255
4256 2006-09-14  Jakub Jelinek  <jakub@redhat.com>
4257             Steven Munroe  <sjmunroe@us.ibm.com>
4258
4259         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_cap_flags): Add 4 new cap
4260         names to the beginning.  Rename "cell" to "cellbe".
4261         (_dl_powerpc_platforms): New.
4262         * sysdeps/powerpc/dl-procinfo.h (_DL_HWCAP_FIRST): Decrease.
4263         (HWCAP_IMPORTANT): Remove power{4,5,5+} and cell.
4264         (_DL_PLATFORMS_COUNT, _DL_FIRST_PLATFORM): Define.
4265         (_DL_HWCAP_PLATFORM): Define to new mask.
4266         (_dl_platform_string, _dl_string_platform): New functions.
4267         * sysdeps/powerpc/sysdep.h (PPC_FEATURE_BOOKE, PPC_FEATURE_SMT,
4268         PPC_FEATURE_ICACHE_SNOOP, PPC_FEATURE_ARCH_2_05): Define.
4269
4270 2006-09-12  Jakub Jelinek  <jakub@redhat.com>
4271
4272         [BZ #2526]
4273         * README.libm: Fix a thinko in sqrt algorithm description.
4274
4275         [BZ #3143]
4276         * manual/string.texi (argz_delete): Fix prototype.
4277         Patch by <alpt@freaknet.org>.
4278
4279 2006-08-26  Joseph Myers  <joseph@codesourcery.com>
4280
4281         [BZ #3138]
4282         * io/test-lfs.c (do_prepare): Give name_len type size_t.
4283         * io/tst-fcntl.c (do_prepare): Likewise.
4284         * posix/tst-exec.c (do_prepare): Likewise.
4285         * posix/tst-preadwrite.c (do_prepare): Likewise.
4286         * posix/tst-spawn.c (do_prepare): Likewise.
4287         * posix/tst-truncate.c (do_prepare): Likewise.
4288         * rt/tst-aio.c (do_prepare): Likewise.
4289         * rt/tst-aio64.c (do_prepare): Likewise.
4290         * stdlib/test-canon2.c (do_prepare): Give test_dir_len type
4291         size_t.
4292
4293 2006-09-09  Ulrich Drepper  <drepper@redhat.com>
4294
4295         [BZ #2821]
4296         * time/mktime.c (guess_time_tm): Fix overflow detection.
4297         * time/Makefile (tests): Add bug-mktime1.
4298         * time/bug-mktime1.c: New file.
4299
4300         [BZ #3189, #3188]
4301         * misc/sys/mman.h (remap_file_pages): Make available for _GNU_SOURCE.
4302         (mremap): Likewise.
4303
4304 2006-09-07  Jakub Jelinek  <jakub@redhat.com>
4305
4306         [BZ #1006]
4307         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela):
4308         Ensure relocation doesn't clobber any bits outside of the
4309         immediate field for R_SPARC_TLS_LE_HIX22, R_SPARC_WDISP30,
4310         R_SPARC_HI22 and R_SPARC_H44.
4311
4312         [BZ #2775]
4313         * malloc/malloc.c (sYSMALLOc): Only call grow_heap if
4314         (long) (MINSIZE + nb - old_size) is positive.
4315
4316         * malloc/arena.c (grow_heap): When growing bail even if new_size
4317         is negative.
4318
4319         [BZ #3155]
4320         * sysdeps/powerpc/powerpc32/fpu/s_lrint.S (__lrint): Don't access
4321         stack below r1.
4322
4323 2006-09-06  Jakub Jelinek  <jakub@redhat.com>
4324
4325         * posix/regex_internal.c (re_string_reconstruct): Handle
4326         offset < pstr->valid_raw_len && pstr->offsets_needed case.
4327         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
4328         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
4329         re_string_context_at.
4330         * posix/Makefile: Add rules to build and run bug-regex26 test.
4331         * posix/bug-regex26.c: New test.
4332
4333         * locale/programs/ld-collate.c (collate_read): Goto sym_equiv_free
4334         rather than col_sym_free.  Move seqp declaration earlier.
4335
4336         * resolv/gai_suspend.c (gai_suspend): Make sure result is initialized.
4337
4338 2006-09-05  Jakub Jelinek  <jakub@redhat.com>
4339
4340         * nscd/initgrcache.c (addinitgroupsX): Move any_success
4341         decl before first goto out.
4342
4343 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
4344
4345         * Makerules (shlib.lds): If have-hash-style, put .hash section
4346         at the end of the RO segment.
4347
4348 2006-09-04  Ulrich Drepper  <drepper@redhat.com>
4349
4350         * elf/do-lookup.h (do_lookup_x): Initialize symidx in case the new
4351         style hash table format is used.
4352
4353 2006-09-04  Jakub Jelinek  <jakub@redhat.com>
4354
4355         * resolv/res_mkquery.c (res_nmkquery): Set hp->id to statp->id after
4356         randomization rather than before.
4357         * resolv/res_init.c (res_randomid): Don't call gettimeofday here.
4358
4359 2006-08-31  Jakub Jelinek  <jakub@redhat.com>
4360
4361         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Add ld.so.
4362
4363         * malloc/malloc.c (_int_malloc): Use full list insert and not
4364         shortcut which assumes the list is empty for large requests
4365         too.
4366
4367         * elf/tst-addr1.c (do_test): Allow i.dli_sname "_IO_printf".
4368
4369 2006-08-30  Jakub Jelinek  <jakub@redhat.com>
4370
4371         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (splice): Add offin
4372         and offout arguments to the prototype.
4373         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h (splice): Likewise.
4374         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (splice): Likewise.
4375         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (splice): Likewise.
4376         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h (splice): Likewise.
4377         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h (splice): Likewise.
4378         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (splice): Likewise.
4379         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h (splice): Likewise.
4380         * sysdeps/unix/sysv/linux/syscalls.list (splice): Adjust args string.
4381
4382 2006-08-28  Ulrich Drepper  <drepper@redhat.com>
4383
4384         * elf/dl-load.c (_dl_init_paths): Expand DSTs.
4385
4386         * elf/dl-open.c (dl_open_worker): Allow $LIB and $PLATFORM in
4387         dlopen parameters.
4388
4389 2006-08-28  Jakub Jelinek  <jakub@redhat.com>
4390
4391         * inet/getnameinfo.c (getnameinfo): For AF_INET, check errno
4392         only if herrno is NETDB_INTERNAL.  Handle errors other than
4393         ERANGE outside of the loops, handle TRY_AGAIN.
4394
4395         * locale/programs/ld-ctype.c (translit_flatten): Issue error
4396         if other's ctype category was missing.
4397         * locale/programs/ld-collate.c (collate_read): Return if
4398         copy_locale's collate category is missing.
4399
4400 2006-08-27  Ulrich Drepper  <drepper@redhat.com>
4401
4402         [BZ #2684]
4403         * malloc/malloc.c (public_rEALLOc): Try harder by using other
4404         arenas if allocation failed.
4405         Patch mostly by Jan Edler <jan.edler@indexengines.com>.
4406
4407 2006-08-26  Ulrich Drepper  <drepper@redhat.com>
4408
4409         * malloc/malloc.c (bin_at): Rewrite to be more clear and to not
4410         waste bins[0..1].
4411         (malloc_state): Reduce bins size by 2.
4412         (_int_malloc): Fix test for large enough buffer for early termination.
4413         When no unsorted block matches perfectly and an exiting block has
4414         to be split, use full list insert and not shortcut which assumes
4415         the list is empty.
4416
4417         * locale/programs/ld-ctype.c (ctype_read): Better patch for read
4418         failure.
4419
4420 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
4421
4422         * locale/programs/ld-ctype.c (ctype_read): If CTYPE is NULL, don't
4423         do anything.
4424
4425         * sysdeps/generic/ldsodefs.h (DL_ADDR_SYM_MATCH): For undefined
4426         symbol require exact match (these are PLTs).
4427         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
4428         (_dl_ppc64_addr_sym_match): Likewise.
4429
4430         [BZ #2683]
4431         * elf/dl-addr.c (_dl_addr): Don't ignore all undefined symbols.
4432         If symbol has a value use it.
4433         * elf/tst-dladdr1.c: New file.
4434         * elf/Makefile: Add rules to build and run tst-addr1.
4435
4436 2006-08-24  Jakub Jelinek  <jakub@redhat.com>
4437
4438         * malloc/malloc.c (sYSMALLOc): Avoid infinite loop if MMAP
4439         keeps failing and heap growth or new heap creation isn't
4440         successful either.
4441         * malloc/tst-malloc.c (main): Add new tests.
4442
4443 2006-08-24  Ulrich Drepper  <drepper@redhat.com>
4444
4445         [BZ #2734]
4446         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use same conditions
4447         as in the x86-64 code to use bswap.
4448
4449 2006-05-21  Joseph S. Myers  <joseph@codesourcery.com>
4450
4451         [BZ #2680]
4452         * posix/unistd.h (getlogin_r): Condition on __USE_POSIX199506, not
4453         __USE_UNIX98.
4454         * posix/bits/unistd.h: Likewise.
4455
4456 2006-05-15  Mike Frysinger  <vapier@gentoo.org>
4457
4458         [BZ #2751]
4459         * string/strchr.c: Add cast to avoid warning.
4460
4461 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
4462
4463         * malloc/malloc.c (DEFAULT_MMAP_THRESHOLD_MAX): For 32-bit
4464         platforms define as 512K.  For 64-bit platforms as 32MB.  The lower
4465         limit is needed to avoid the exploding of the address space
4466         requirement for secondary heaps.
4467         * malloc/arena.c (HEAP_MAX_SIZE): Define using
4468         DEFAULT_MMAP_THRESHOLD_MAX if it is defined.
4469
4470 2006-07-30  Joseph S. Myers  <joseph@codesourcery.com>
4471
4472         [BZ #3018]
4473         * Makerules (depfiles): Handle extra-test-objs the same as
4474         extra-objs.
4475         (common-mostlyclean): Likewise.
4476         * dlfcn/Makefile (extra-objs): Add modules to extra-test-objs
4477         instead.
4478         * elf/Makefile (extra-objs): Likewise.
4479         * stdlib/Makefile (extra-objs): Likewise.
4480
4481 2006-08-14  Eric Blake  <ebb9@byu.net>
4482
4483         [BZ #3044]
4484         * misc/error.h: Assume C89 or better.
4485         * misc/error.c: Likewise.
4486
4487 2006-08-21  Ulrich Drepper  <drepper@redhat.com>
4488
4489         [BZ #3040]
4490         * sysdeps/unix/sysv/linux/openat.c: Fix compilation if
4491         __ASSUME_ATFCTS is defined.
4492
4493 2006-08-19  Ulrich Drepper  <drepper@redhat.com>
4494
4495         * malloc/malloc.c (_int_malloc): Limit number of unsorted blocks
4496         to sort in each call.
4497
4498         * nis/nss_nis/nis-service.c (internal_nis_getservent_r): . If map
4499         is empty simply return and use next service.
4500         * nis/nss_nis/nis-rpc.c (internal_nis_getrpcent_r): Likewise.
4501
4502         * locale/programs/charmap.c (charmap_read): Add new parameter.  It
4503         tells us when not finding a charmap file is an error.
4504         * locale/programs/charmap.h: Adjust charmap_read prototype.
4505         * iconv/iconv_prog.c (main): Tell charmap_read it's no error if we
4506         cannot find a charmap.
4507         * locale/programs/localedef.c (main): Adjust charmap_read call.
4508
4509 2006-08-15  Jakub Jelinek  <jakub@redhat.com>
4510
4511         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Use
4512         sysdeps/posix/pause.c implementation instead.
4513
4514 2006-08-09  Jakub Jelinek  <jakub@redhat.com>
4515
4516         * sysdeps/unix/nice.c (nice): Transform EACCES errno from setpriority
4517         to EPERM.
4518
4519 2006-08-13  Andreas Schwab  <schwab@suse.de>
4520
4521         * sysdeps/powerpc/powerpc32/dl-trampoline.S (_dl_runtime_resolve):
4522         Don't clobber caller's LRSAVE.
4523         (_dl_prof_resolve): Likewise.
4524
4525 2006-08-14  Ulrich Drepper  <drepper@redhat.com>
4526
4527         [BZ #1996]
4528         * libio/memstream.c (open_memstream): Allocate initial buffer with
4529         calloc.
4530         * libio/wmemstream.c (open_wmemstream): Likewise.
4531         * libio/strops.c: Pretty printing.
4532         (_IO_str_overflow): Clear uninitialized part of the new buffer.
4533         (enlarge_userbuf): New function.
4534         (_IO_str_seekoff): Call it if seek position is larger than current
4535         buffer.
4536         * libio/wstrops.c: Likewise.
4537         * libio/vasprintf.c: Add comment as to why we do not have to use
4538         calloc instead of malloc to allocate initial buffer.
4539         * libio/Makefile (tests): Add bug-memstream1 and bug-wmemstream1.
4540         * libio/bug-memstream1.c: New file.
4541         * libio/bug-wmemstream1.c: New file.
4542
4543 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
4544
4545         * libio/wstrops.c: Remove dead macro definitions and comments.
4546         * libio/strops.c: Likewise.
4547
4548         [BZ #2764]
4549         * login/utmpname.c (__utmpname): Remove unnecessary test.
4550
4551 2006-06-08  Joseph Myers  <jsm28@gcc.gnu.org>
4552
4553         [BZ #2832]
4554         * math/gen-libm-test.pl (clean_up_number): Do not remove trailing
4555         0s from integers.
4556
4557 2006-08-13  Ulrich Drepper  <drepper@redhat.com>
4558
4559         [BZ #2987]
4560         * sysdeps/unix/sysv/linux/clock_settime.c: Add code to use syscall
4561         for CPU clocks.
4562         * sysdeps/unix/clock_settime.c: Add support for platform-specific
4563         setting of CPU clocks.
4564
4565 2006-06-23  Paul Eggert  <eggert@cs.ucla.edu>
4566
4567         [BZ #2841]
4568         * sysdeps/generic/stdint.h (UINT8_C, UINT16_C): Don't append 'U',
4569         since C99 requires the result to promote to 'int' when uint_least8_t
4570         and uint_least16_t promote to 'int'.
4571
4572 2006-08-12  Ulrich Drepper  <drepper@redhat.com>
4573
4574         [BZ #3013]
4575         * locale/programs/ld-ctype.c (ctype_output): Adjust alignments, fix
4576         lenght of one output field, correct bitmask creation.
4577         * locale/programs/ld-time.c: Add alignment.
4578
4579         [BZ #2997]
4580         * misc/error.c: Add space between program name and message if file
4581         name is missing.
4582
4583 2006-08-03  Eric Blake  <ebb9@byu.net>
4584
4585         [BZ #2998]
4586         * misc/error.c (error_tail) [_LIBC]: Avoid invalid free.
4587
4588 2006-08-09  Ulrich Drepper  <drepper@redhat.com>
4589
4590         * malloc/memusagestat.c: Silence warnings.
4591
4592         * malloc/malloc.c: Dynamically size mmap treshold if the program
4593         frees mmaped blocks.
4594         Patch by Valerie Henson and Arjan van de Ven.
4595
4596 2006-08-08  Jakub Jelinek  <jakub@redhat.com>
4597
4598         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h (O_DIRECT): Protect with
4599         __USE_GNU.
4600
4601         * stdlib/strtol_l.c (__strtol_ul_max_tab, __strtol_ul_rem_tab,
4602         __strtol_ull_max_tab, __strtol_ull_rem_tab): Declare.
4603         (DEF): Don't put the var into .gnu.linkonce.r.* section.
4604         Only provide var definitions in strtol_l (or for *ull*
4605         in strtoll_l).
4606
4607         * stdio-common/bug16.c (tests): New array.
4608         (do_tests): Allow the first hexadecimal digit
4609         to be 1, 2, 4 or 8.  Do 3 additional tests.
4610
4611         * sysdeps/s390/fpu/libm-test-ulps: Update.
4612
4613         * sysdeps/unix/sysv/linux/s390/s390-32/fchownat.c (fchownat): Use
4614         fchownat syscall if available.
4615         * sysdeps/unix/sysv/linux/powerpc/fchownat.c (fchownat): Likewise.
4616         * sysdeps/unix/sysv/linux/sh/fchownat.c (fchownat): Likewise.
4617         * sysdeps/unix/sysv/linux/i386/fchownat.c (fchownat): Likewise.
4618
4619 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
4620
4621         * nis/nis_xdr.c: Avoid some function calls.
4622
4623 2006-08-07  Jakub Jelinek  <jakub@redhat.com>
4624             Ulrich Drepper  <drepper@redhat.com>
4625
4626         * nis/nis_call.c (rec_dirsearch) [case LOWER_NAME]: Don't take
4627         short cut if only one name component is stripped away.
4628
4629 2006-08-07  Ulrich Drepper  <drepper@redhat.com>
4630
4631         * nis/nis_call.c: Minor cleanups throughout.
4632         (rec_dirsearch) [case HIGHER_NAME]: Correctly size ndomain array.
4633         (first_shoot): Add search_parent_first parameter.  Only if it is set
4634         search parent server first.
4635         If directory for table found through cold start cache is not the same
4636         as referenced in the cache, don't use it.
4637         (__nisfind_server): Take additional parameter.  Pass it on to
4638         first_shoot.
4639         (__prepare_niscall): Adjust __nisfind_server call.
4640         * nis/rpcsvc/nislib.h: Adjust __nisfind_server prototype.
4641         * nis/nis_table.c: Adjust __nisfind_server call.
4642         * nis/nis_lookup.c: Likewise.
4643         (nis_lookup): Don't loop endlessly if name is reduced to ".".
4644
4645 2006-08-03  Ulrich Drepper  <drepper@redhat.com>
4646
4647         [BZ #2182]
4648         * math/s_cacosh.c: Return values from positive branch.
4649         * math/s_cacoshf.c: Likewise.
4650         * math/s_cacoshl.c: Likewise.
4651
4652         [BZ #2883]
4653         * sysvipc/sys/msg.h: Change return value to ssize_t.
4654         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
4655         * sysvipc/msgrcv.c: Likewise.
4656         * include/sys/msg.h: Likewise.
4657
4658         * grp/initgroups.c (internal_getgrouplist): Remove unnecessary
4659         test introduced in patch for bz #661.
4660         (getgrouplist): Simplify code a bit.  Don't allocate one additional
4661         element for NEWGROUPS.
4662
4663         [BZ #2908]
4664         * stdio-common/printf_fphex.c (__printf_fphex): When rounding up
4665         'f', use '1' as leading digit not '\1'.
4666         * stdio-common/Makefile (tests): Add bug16.
4667         * stdio-common/bug16.c: New file.
4668
4669         [BZ #2914]
4670         * sysdeps/unix/sysv/linux/gethostid.c: Don't define OLD_HOSTIDFILE
4671         and don't try to open it.  The patch introducing the macro
4672         contained a bug and used the same file name as the new file
4673         instead of using /var/adm/hostid.  Nobody complaint so I'm taking
4674         this out completely.
4675
4676         [BZ #2926]
4677         * assert/assert.h: Move cast to void inside ?: to quiet gcc.
4678         Patch by Jerry James <Jerry.James@usu.edu>.
4679
4680         * rt/Makefile (tests): Add tst-clock2.
4681         * rt/tst-clock2.c: New file.
4682
4683         [BZ #2978]
4684         * resolv/gai_notify.c (__gai_notify_only): Copy memory for thread
4685         function and its parameters and pass it to new thread.
4686         (__gai_notify): Add support for alternative waiting for completion.
4687         * resolv/gai_suspend.c (gai_suspend): Add support for alternative
4688         waiting for completion.
4689         * resolv/getaddrinfo_a.c: Likewise.
4690         * resolv/gai_misc.h (struct waitlist): Don't add cond if alternative
4691         waiting for completion is used.
4692         * resolv/gai_misc.c: Allow overwriting code to start helper thread.
4693         * resolv/gai_cancel.c: Include <gai_misc.h> not "gai_misc.h".
4694         * resolv/gai_error.c: Likewise.
4695         * resolv/gai_sigqueue.c: Likewise.
4696
4697 2006-08-02  Thomas Schwinge  <tschwinge@gnu.org>
4698
4699         * hurd/getdport.c (__getdport): Don't return EBADF; instead set
4700         errno to EBADF and return MACH_PORT_NULL.
4701
4702 2006-06-23  Joseph Myers  <joseph@codesourcery.com>
4703
4704         [BZ #2980]
4705         * posix/Makefile (CFLAGS-waitid.c): Add -fasynchronous-unwind-tables.
4706
4707 2006-08-02  Ulrich Drepper  <drepper@redhat.com>
4708
4709         * elf/dl-addr.c (_dl_addr): If GNU-style hash tables are present,
4710         walk them instead of the symbol table.
4711
4712 2006-08-01  Ulrich Drepper  <drepper@redhat.com>
4713
4714         [BZ #2098]
4715         * nscd/initgrcache.c (addinitgroupsX): Judge successful lookups by
4716         status of NSS calls, not the number of returned entries.
4717
4718         * sysdeps/unix/sysv/linux/syscalls.list: Remove add_key,
4719         request_key, keyctl.
4720
4721 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
4722
4723         * sysdeps/unix/sysv/linux/dl-osinfo.h: Remove unnecessary include.
4724
4725 2006-07-16  Jeff Bailey  <jbailey@ubuntu.com>
4726
4727         * elf/tst-auditmod1.c: Fix typo in #error.
4728
4729 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
4730
4731         * elf/tst-auditmod1.c: Remove code for unsupported architectures.
4732
4733         * iconvdata/run-iconv-test.sh: Run cmp in C locale.
4734
4735 2006-07-20  Adam Nemet  <anemet@caviumnetworks.com>
4736
4737         * stdlib/test-canon.c (do_test): Close fd before unlinking file so
4738         that the directory is empty even on non-POSIX filesystems.
4739
4740 2006-07-31  Ulrich Drepper  <drepper@redhat.com>
4741
4742         * elf/dl-open.c (dl_open_worker): Add branch prediction.
4743
4744         * nis/nss_compat/compat-grp.c: Avoid unnecessary setgrent calls into
4745         the backend NSS module.  If backend setgrent call failed, don't have
4746         internal_setgrent fail.  Just remember this until it is needed.
4747         * nis/nss_compat/compat-pwd.c: Likewise.
4748         * nis/nss_compat/compat-spwd.c: Likewise.
4749
4750 2006-07-30  Roland McGrath  <roland@redhat.com>
4751
4752         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: File removed.
4753         * sysdeps/unix/sysv/linux/x86_64/sigsuspend.c: File removed.
4754         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: File removed.
4755         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: File removed.
4756
4757         * sysdeps/unix/sysv/linux/not-cancel.h (pause_not_cancel): New macro.
4758         (nanosleep_not_cancel): New macro.
4759         (sigsuspend_not_cancel): new macro.
4760         * sysdeps/unix/sysv/linux/sigsuspend.c [__ASSUME_REALTIME_SIGNALS]
4761         (do_sigsuspend): Define as inline.
4762         (__sigsuspend): Always use do_sigsuspend.
4763         [! NO_CANCELLATION] (__sigsuspend_nocancel): New function.
4764         * include/signal.h: Declare __sigsuspend_nocancel.
4765         * sysdeps/posix/pause.c
4766         [! NO_CANCELLATION] (__pause_nocancel): New function.
4767
4768         * include/unistd.h (__pause_nocancel): Add attribute_hidden.
4769         * include/time.h (__nanosleep_nocancel): Likewise.
4770
4771 2006-07-30  Ulrich Drepper  <drepper@redhat.com>
4772
4773         * locale/programs/localedef.c (add_to_readlist): Rename local
4774         variables to avoid confusion.
4775
4776         * locale/programs/charmap.c (charmap_read): Emit error message if
4777         charmap couldn't be found or read.
4778
4779 2006-07-28  Ulrich Drepper  <drepper@redhat.com>
4780
4781         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4782         __ASSUME_FUTEX_LOCK_PI.
4783         * include/time.h: Declare __nanosleep_nocancel.
4784         * include/unistd.h: Declare __pause_nocancel.
4785
4786         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Use this instead of
4787         LDFLAGS.  Add -lgcc_eh and libc_nonshared (again) to make sure we
4788         get the __stack_chk_fail_local definition when it's needed.
4789
4790 2006-07-26  Ulrich Drepper  <drepper@redhat.com>
4791
4792         * dlfcn/Makefile: Add rules to build and run bug-atexit3.
4793         * dlfcn/bug-atexit3.c: New file.
4794         * dlfcn/bug-atexit3-lib.cc: New file.
4795
4796         * dlfcn/dlmopen.c (dlmopen_doit): Don't allow RTLD_GLOBAL to be
4797         used when the namespace is not the base namespace.
4798
4799 2006-07-26  Gavin Romig-Koch  <gavin@redhat.com>
4800
4801         * stdlib/cxa_atexit.c (__new_exitfn_called): New variable.
4802         (__new_exitfn): Bump it in every successful call.
4803         * stdlib/cxa_finalize.c (__cxa_finalize): If destructor registered
4804         more exit handlers, call them right away.
4805         * stdlib/exit.h: Declare __new_exitfn_called.
4806
4807 2006-07-25  Ulrich Drepper  <drepper@redhat.com>
4808
4809         * stdlib/cxa_finalize.c (__cxa_finalize): Fix race condition when
4810         calling registered handler.
4811
4812         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Fix comment.
4813         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
4814         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
4815         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
4816         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
4817         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
4818         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
4819         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
4820
4821 2006-07-10  Ulrich Drepper  <drepper@redhat.com>
4822
4823         * elf/dl-lookup.c (dl_new_hash): New functions.
4824         (_dl_lookup_symbol_x): Rename hash to old_hash and don't compute
4825         value here.  Compute new-style hash value.  Pass new hash value
4826         and reference to variable with the old value to do_lookup_x.
4827         (_dl_setup_hash): If DT_GNU_HASH is defined, use it and not
4828         old-style hash table.
4829         (_dl_debug_bindings): Pass new hash value and reference to variable
4830         with the old value to do_lookup_x.
4831         * elf/do-lookup.h (do_lookup_x): Accept additional parameter with
4832         new-style hash value and change old-style hash value parameter to
4833         be a reference.  Reoganize functions to determine whether
4834         new-style hash table is available.  Only fall back on old-style
4835         table.  If old-style hash value is needed, compute it here.
4836         * elf/dynamic-link.h (elf_get_dynamic_info): Relocate DT_GNU_HASH
4837         entry.
4838         * elf/elf.h: Define SHT_GNU_HASH, DT_GNU_HASH, DT_TLSDEC_PLT,
4839         DT_TLSDEC_GOT.  Adjust DT_ADDRNUM.
4840         * include/link.h (struct link_map): Add l_gnu_bitmask_idxbits,
4841         l_gnu_shift, l_gnu_bitmask, l_gnu_buckets and l_gnu_chain_zero.
4842         * Makeconfig: If linker supports --hash-style option add it to all
4843         linker command lines to build DSOs.
4844         * config.make.in: Define have-hash-style.
4845         * configure.in: Test whether linker supports --hash-style option.
4846
4847         * elf/dl-misc.c (_dl_name_match_p): Make MAP parameter const.
4848         * sysdeps/generic/ldsodefs.h: Adjust prototype.
4849
4850 2006-06-27  Ulrich Drepper  <drepper@redhat.com>
4851
4852         * elf/dl-load.c (open_path): Fix test to determine whether DSO is
4853         auditing.
4854
4855         * elf/dl-load.c (_dl_map_object): Try harder to avoid looking at
4856         RPATH of main map twice.
4857
4858 2006-06-22  Ulrich Drepper  <drepper@redhat.com>
4859
4860         * intl/dcigettext.c (DCIGETTEXT): If _nl_find_msg returns -1 don't
4861         look further, return original strings.
4862         (_nl_find_msg): Do not return found translation if the conversion
4863         failed.  Either signal the string is unusable or that something went
4864         wrong and the original should be used.
4865
4866 2006-06-21  Ulrich Drepper  <drepper@redhat.com>
4867
4868         * string/_strerror.c (__strerror_r): Add __builtin_expect.
4869
4870 2006-06-14  Jakub Jelinek  <jakub@redhat.com>
4871
4872         [BZ #2766]
4873         * misc/insremque.c (insque): Handle prev == NULL.
4874         * misc/Makefile (tests): Add tst-insremque.
4875         * misc/tst-insremque.c: New test.
4876
4877 2006-06-17  Ulrich Drepper  <drepper@redhat.com>
4878
4879         [BZ #2792]
4880         * elf/dl-deps.c (expand_dst): Rename __cnt variable to not
4881         conflict with DL_DST_REQUIRED.
4882
4883 2006-06-16  Ulrich Drepper  <drepper@redhat.com>
4884
4885         * nis/nis_subr.c (nis_getnames): Fix the implementation to better
4886         match what Solaris does.
4887
4888 2006-06-04  Ulrich Drepper  <drepper@redhat.com>
4889
4890         * sysdeps/posix/spawni.c (__spawni): Use local_seteuid and
4891         local_setegid instead of seteuid and setegid.
4892         * sysdeps/generic/local-setxid.h: New file.
4893         * sysdeps/unix/sysv/linux/local-setxid.h: New file.
4894
4895         * sysdeps/posix/spawni.c (__spawni): Use non-cancelable interfaces.
4896
4897         * string/Makefile (tests): Add bug-envz1.
4898         * string/bug-envz1.c: New file.
4899
4900 2006-06-02  Jakub Jelinek  <jakub@redhat.com>
4901
4902         * posix/regex_internal.c (re_string_skip_chars): If no character has
4903         been converted at all, set *last_wc to WEOF.  If mbrtowc failed, set wc
4904         to the byte which couldn't be converted.
4905         (re_string_reconstruct): Don't clear valid_raw_len before calling
4906         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
4907         tip_context using re_string_context_at.
4908         * posix/Makefile: Add rules to build and run bug-regex25 test.
4909         * posix/bug-regex25.c: New test.
4910
4911 2006-06-02  Ryan S. Arnold  <rsa@us.ibm.com>
4912
4913         [BZ #2703]
4914         * string/envz.c (envz_strip): Correct erroneously reversed src
4915         and dest parameters to memmove() invocation.
4916
4917 2006-05-30  Jakub Jelinek  <jakub@redhat.com>
4918
4919         * nscd/nscd.h (prune_cache): Add fd argument to prototype.
4920         * nscd/nscd.c (parse_opt): Read response from INVALIDATE request
4921         to make sure the database has been already invalidated.
4922         * nscd/cache.c (prune_cache): Add fd argument.  Write response to fd
4923         after the cache has been invalidated.  Use pthread_mutex_lock rather
4924         than pthread_mutex_trylock if fd != -1.
4925         * nscd/connections.c (invalidate_cache): Add fd argument, write
4926         response to fd if not calling prune_cache, pass fd to prune_cache.
4927         (handle_request): Adjust invalidate_cache caller.
4928         (nscd_run): Pass -1 as fd to prune_cache.
4929
4930 2006-05-30  Ulrich Drepper  <drepper@redhat.com>
4931
4932         * sysdeps/posix/getaddrinfo.c (gaiconf_init): Initialize bits in
4933         the correct place.
4934
4935 2006-05-29  Ulrich Drepper  <drepper@redhat.com>
4936
4937         * nscd/nscd.h (struct database_dyn): Add prunelock field.
4938         * nscd/cache.c (prune_cache): Take prunelock before starting the
4939         work.  Just return in case it is already taken.
4940         * nscd/connections.c (dbs): Initialize .prunelock.
4941
4942 2006-05-25  Ulrich Drepper  <drepper@redhat.com>
4943
4944         * nis/nis_removemember.c (nis_removemember): Avoid unnecessary
4945         copying.  No need to allocate new array for group members.  Just
4946         move the pointers and update the size.
4947
4948         * nis/nis_addmember.c (nis_addmember): Avoid unnecessary copying.
4949         Avoid memory leak in case realloc fails.  Simplification for
4950         better code generation.
4951
4952         Avoid deprecation warning because of libc_hidden_proto for
4953         inet6_option_alloc.
4954         * inet/inet6_option.c (option_alloc): Renamed from
4955         inet6_option_alloc.  Made static.
4956         (inet6_option_alloc): Now a simple wrapper around option_alloc.
4957         (inet6_option_append): Call option_alloc.
4958         * include/netinet/in.h: Remove libc_hidden_proto for
4959         inet6_option_alloc.
4960
4961         * nis/nis_callback.c (__nis_create_callback): Always call xdr_free
4962         for cleanup when cb!=NULL [Coverity CID 233].
4963
4964 2006-05-24  Ulrich Drepper  <drepper@redhat.com>
4965
4966         [BZ #2693]
4967         * inet/Makefile (routines): Add inet6_opt and inet6_rth.
4968         * inet/Versions (libc, GLIBC_2.5): Add inet6_opt_init,
4969         inet6_opt_append, inet6_opt_finish, inet6_opt_set_val, inet6_opt_next,
4970         inet6_opt_find, inet6_opt_get_val, inet6_rth_space, inet6_rth_init,
4971         inet6_rth_add, inet6_rth_reverse, inet6_rth_segments,
4972         and inet6_rth_getaddr.
4973         * inet/netinet/ip6.h (struct ip6_rthdr0): Make ip6r0_addr a flexible
4974         array.
4975         * inet/netinet/in.h (struct ip6_mtuinfo): Define.
4976         Mark inet6_option_* interfaces as deprecated.
4977         Declare inet6_opt_init, inet6_opt_append, inet6_opt_finish,
4978         inet6_opt_set_val, inet6_opt_next, inet6_opt_find, inet6_opt_get_val,
4979         inet6_rth_space, inet6_rth_init, inet6_rth_add, inet6_rth_reverse,
4980         inet6_rth_segments, and inet6_rth_getaddr.
4981         * inet/inet6_opt.c: New file.
4982         * inet/inet6_rth.c: New file.
4983
4984         * inet/netinet/icmp6.h: Pretty printing.
4985
4986         [BZ #2683]
4987         * elf/dl-addr.c (_dl_addr): Don't match undefined references.
4988
4989 2006-05-23  Ulrich Drepper  <drepper@redhat.com>
4990
4991         * nis/nis_lookup.c (nis_lookup): Use __prepare_niscall instead of
4992         doing it all here.  When server does not know the answer do not
4993         fail immediate, try parent first.
4994
4995         * nis/nis_domain_of_r.c (nis_domain_of_r): Add missing buffer
4996         overflow test.
4997
4998 2006-05-20  Ulrich Drepper  <drepper@redhat.com>
4999
5000         * nis/nis_call.c (__prepare_niscall): New function.  Split out
5001         from __do_niscall.
5002         * nis/nis_table.c (__create_ib_request): Renamed from create_ib_request
5003         and exported.
5004         (__follow_path): New function.  Split out from nis_list.
5005         * nis/nis_xdr.h: Add libnsl_hidden_proto for _xdr_ib_request and
5006         _xdr_nis_result.
5007         * nis/nis_xdr.c: Add libnsl_hidden_def for _xdr_ib_request and
5008         _xdr_nis_result.
5009         * nis/libnsl.h: Declare __prepare_niscall, __create_ib_request,
5010         and __follow_path.
5011         * nis/Versions: Export __prepare_niscall, __create_ib_request,
5012         __follow_path, __do_niscall3, _xdr_ib_request, and _xdr_nis_result
5013         from libnsl for version GLIBC_PRIVATE.
5014         * nis/nisplus-parser.h: Remove _nss_nisplus_parse_pwent_chk.
5015         Remove entry parameter from _nss_nisplus_parse_pwent and
5016         _nss_nisplus_parse_grent.
5017         * nis/nss_nisplus/nisplus-parser.c: Likewise.
5018         * nis/nss_nisplus/nisplus-pwd.c: Remove support for SETENT_BATCH_READ
5019         again.  Rewrite getpwent handling to not use nis_first_entry and
5020         nis_next_entry.  Roll out own niscall handling.
5021         * nis/nss_nisplus/nisplus-grp.c: Likewise.
5022
5023         * sunrpc/xdr_rec.c: Fix typo in comment.
5024
5025 2006-05-19  Ulrich Drepper  <drepper@redhat.com>
5026
5027         * nis/nis_call.c (__do_niscall3): Avoid code duplication in error
5028         handling.
5029
5030         * nis/nis_callback.c (internal_nis_do_callback): Don't use malloc
5031         to allocate memory for my_pollfd.  Better initialization of
5032         cb_is_running.  Use TEMP_FAILURE_RETRY.
5033
5034         * malloc/memusage.sh (memusageso): Add quotes.
5035         (memusagestat): Likewise.
5036         * debug/xtrace.sh (pcprofileso): Likewise.
5037         (pcprofiledump): Likewise.
5038         * debug/Makefile ($(objpfx)xtrace): Use $LIB in SLIBDIR
5039         replacement.
5040         * malloc/Makefile ($(objpfx)memusage): Likewise.
5041
5042         * nis/nis_callback.c (__nis_create_callback): Calls to
5043         svcudp_bufcreate and svctcp_create can fail.  Free ->xprt if
5044         asprintf call fails.
5045
5046         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_sendreq): Make sure
5047         no uninitialized memory is passed to sendto.
5048
5049 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
5050
5051         * nis/nis_callback.c (__nis_create_callback): Use asprinf instead
5052         of snprintf+strdup.  Handle OOM.
5053         * nis/nis_callback.c (__nis_create_callback): Allocate cb and
5054         cb->serv together.  Remove now obsolete free calls.
5055         (__nis_destroy_callback): Remove now obsolete free call.
5056
5057 2006-05-18  David Woodhouse  <dwmw2@redhat.com>
5058
5059         * sysdeps/posix/getaddrinfo.c: Add unique labels to the default
5060         RFC3484 precedence table for fec0::/10 and fc00::/7 (site-local
5061         and ULA respectively). Set precedence for IPv4 address to 10 as
5062         defined in RFC3484 for preferring IPv6.
5063         * posix/gai.conf: Update to match the new default tables.
5064
5065 2006-05-18  Jakub Jelinek  <jakub@redhat.com>
5066
5067         * nis/nss_compat/compat-pwd.c (internal_setpwent): If nss_set*ent
5068         returned NSS_STATUS_UNAVAIL, still return NSS_STATUS_SUCCESS.
5069         * nis/nss_compat/compat-spwd.c (internal_setspent): Likewise.
5070         * nis/nss_compat/compat-grp.c (internal_setgrent): Likewise.
5071
5072         * nis/nss_compat/compat-initgroups.c (nss_setgrent, nss_endgrent):
5073         Removed.
5074         (init_nss_interface): Remove initialization of these variables.
5075
5076 2006-05-18  Ulrich Drepper  <drepper@redhat.com>
5077
5078         * nis/nis_call.c (rec_dirsearch): Little optimization: pull
5079         nis_free_directory forward to avoid duplication.
5080
5081 2006-05-17  Ulrich Drepper  <drepper@redhat.com>
5082
5083         * nis/nis_call.c (rec_dirsearch): Handle __nis_finddirectory and
5084         rec_dirsearch returning NULL.
5085         (first_shoot): Handle __nis_finddirectory returning NULL.
5086         (__nisfind_server): Fix leak when rec_dirsearch returns NULL.
5087
5088         * sysdeps/unix/sysv/linux/sys/inotify.h: Define IN_CLOSE, IN_MOVE,
5089         IN_ONLYDIR, IN_DONT_FOLLOW, and IN_MASK_ADD.
5090
5091 2006-05-17  Jakub Jelinek  <jakub@redhat.com>
5092
5093         * sunrpc/key_call.c (getkeyserv_handle): Call auth_destroy if
5094         pid changed.
5095
5096 2006-05-15  Ulrich Drepper  <drepper@redhat.com>
5097
5098         * include/rpc/pmap_prot.h: Mark all functions as hidden.
5099
5100         * nscd/nscd_initgroups.c: Mark __gr_map_handle as hidden.
5101         * nscd/nscd_getgr_r.c: Likewise.
5102
5103         * include/rpc/pmap_rmt.h: Mark all functions as hidden.
5104
5105         * nscd/nscd_getai.c (__hst_map_handle): Mark as hidden.
5106         * nscd/nscd_gethst_r.c (__hst_map_handle): Likewise.
5107
5108         * stdlib/longlong.h (__clz_tab): Mark as hidden.
5109
5110         * iconv/gconv_int.h: Mark __gconv_lock as hidden.
5111
5112         * include/rpc/key_prot.h: Mark all _internal functions as hidden.
5113
5114         * include/rpc/auth.h: Mark xdr_des_block_internal and
5115         xdr_opaque_auth_internal as hidden.
5116
5117         * sysdeps/unix/sysv/linux/getdents.c: Mark __have_no_getdents64 as
5118         hidden.
5119
5120         * include/rpc/xdr.h: Mark all _internal functions as hidden.
5121
5122         * misc/getusershell.c (okshells): Don't use static initializers,
5123         do it dynamically.
5124
5125         * stdlib/fmtmsg.c (keywords): Change type of len element to
5126         uint32_t to not waste space on 64bit machines.
5127
5128         * locale/setlocale.c: Change _nl_category_names into a string.
5129         Add new _nl_category_name_idxs.  Change all users.
5130         * locale/localeinfo.h: Adjust declaration of _nl_category_names.
5131         Declare _nl_category_name_idxs.
5132         * locale/findlocale.c: Adjust for _nl_category_names change.
5133         * locale/loadlocale.c: Likewise.
5134         * locale/newlocale.c: Likewise.
5135         * intl/dcigettext.c: Likewise.
5136
5137         * iconv/gconv_conf.c (add_alias): Move actual alias handling to...
5138         (add_alias2): ...here.  New function.
5139         (__gconv_read_conf): Simplify builtin alias handling.
5140         (builtin_aliases): Convert to string to avoid relocations.
5141         * iconv/gconv_builtin.h: Add comment about correct formatting.
5142
5143 2006-05-15  Jakub Jelinek  <jakub@redhat.com>
5144
5145         * resolv/res_debug.c (loc_ntoa): Make error const.
5146
5147 2006-05-14  Andreas Schwab  <schwab@suse.de>
5148
5149         * math/complex.h [__LDBL_COMPAT]: Use __REDIRECT_NTH.
5150
5151 2006-05-12  Jakub Jelinek  <jakub@redhat.com>
5152
5153         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Include sys/param.h.
5154         (__sched_getaffinity_new): Don't crash if cpusetsize is smaller than
5155         sizeof (cpu_set_t).
5156
5157 2006-05-11  Ulrich Drepper  <drepper@redhat.com>
5158
5159         * resolv/res_debug.c (loc_ntoa): Define error as array, not pointer.
5160
5161         * include/arpa/nameser.h: Declare _ns_flagdata as hidden.
5162
5163         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_master.
5164         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_master.
5165
5166         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypbind_resp.
5167         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypbind_resp.
5168
5169         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_cback_data.
5170         * include/rpcsvc/nis_callback.h: Add libnsl_hidden_proto for
5171         xdr_cback_data.
5172
5173         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypupdate_args.
5174         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
5175         xdr_ypupdate_args.
5176
5177         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_order.
5178         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_order.
5179
5180         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_maplist.
5181         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_maplist.
5182
5183         * nis/nis_xdr.c: Add libnsl_hidden_def for xdr_obj_p.
5184         * include/rpcsvc/nis_callback.h: New file.
5185
5186         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypresp_val.
5187         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypresp_val.
5188
5189         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
5190         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
5191
5192         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypmaplist.
5193         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypmaplist.
5194
5195         * nis/yp_xdr.c: Add libnsl_hidden_def for xdr_ypreq_nokey.
5196         * include/rpcsvc/yp.h: Add libnsl_hidden_proto for xdr_ypreq_nokey.
5197
5198         * nis/ypupdate_xdr.c: Add libnsl_hidden_def for xdr_ypdelete_args.
5199         * include/rpcsvc/ypupd.h: Add libnsl_hidden_proto for
5200         xdr_ypdelete_args.
5201
5202         * nis/nis_xdr.h: Mark all functions as hidden.  Remove
5203         __BEGIN_DECLS and __END_DECLS, the header is not installed.
5204
5205         * nis/nis_error.c: Remove table of strings.  Use position
5206         independent mechanism.
5207         * nis/nis_error.h: New file.
5208
5209 2006-05-11  Jakub Jelinek  <jakub@redhat.com>
5210
5211         * locale/programs/ld-time.c (time_finish): If wide era name or
5212         format aren't provided, set both wname and wformat to L"".
5213
5214 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
5215
5216         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Only store
5217         results if the call was succesful.
5218
5219         * nis/nss-nis.h: Mark __yperr2nss_tab and __yperr2nss_count as hidden.
5220
5221         * nis/nss-nisplus.h: Mark __niserr2nss_tab and __niserr2nss_count
5222         as hidden.
5223
5224 2006-05-10  Jakub Jelinek  <jakub@redhat.com>
5225
5226         * misc/sys/queue.h: Remove uses of all QUEUEDEBUG_* macros.
5227
5228 2006-05-10  Ulrich Drepper  <drepper@redhat.com>
5229
5230         * posix/wordexp.c (parse_glob): No need to check ifs for NULL, the
5231         caller makes sure this is not the case.
5232         (wordexp): Simplify ifs_white creation.  [Coverity CID 231]
5233
5234 2006-05-09  Ulrich Drepper  <drepper@redhat.com>
5235
5236         * posix/wordexp.c: Remove numerous NULL pointer tests before FREE
5237         calls.
5238
5239         * io/ftw.c (open_dir_stream): Return right away if REALLOC fails.
5240         [Coverity CID 229, 230]
5241
5242         * argp/argp-help.c (hol_entry_help): Handle STATE==NULL in ARG and
5243         DGETTEXT calls.
5244         (hol_help): Likewise.  [Coverity CID 226, 227]
5245
5246         * string/argz-replace.c (__argz_replace): Unconditionally call
5247         free on SRC.  [Coverity CID 225]
5248
5249         * nis/nis_creategroup.c (nis_creategroup): No need to duplicate
5250         the return value of __nis_default_owner and __nis_default_group,
5251         it has been especially allocated.  [Coverity CID 224]
5252
5253         * nis/nis_defaults.c (searchXYX): New functions.  Used by both
5254         searchgroup and searchowner.  Significantly simplified.
5255         (__nis_default_owner): Remove duplication.  Do not locally copy the
5256         string before duplicating it.
5257         (__nis_default_group): Likewise.
5258
5259         * nis/nis_lookup.c (nis_lookup): After calling nis_free_directory,
5260         we must clear the variable before calling __nisfind_server.
5261
5262         * nis/nis_lookup.c (nis_lookup): Always free memory allocated with
5263         nis_getnames.  [Coverity CID 223]
5264
5265         * locale/programs/locfile.c (locfile_read): Use alloca instead of
5266         xmalloc to allocate local repertoire name.  [Coverity CID 222]
5267
5268         * iconv/iconv_charmap.c (use_to_charmap): No need to dynamically
5269         allocate memory for the input to add_bytes.  [Coverity CID 221]
5270
5271         * posix/wordexp.c (w_addword): Free word if realloc fails and it
5272         was allocated here.  [Coverity CID 219, 220]
5273
5274         * posix/getconf.c (print_all): Free confstr data after printing.
5275         [Coverity CID 218]
5276
5277         * sysdeps/posix/getaddrinfo.c (gaih_inet): Free canon string if
5278         list allocation fails.  [Coverity CID 215]
5279
5280         * nss/nsswitch.c (__nss_configure_lookup): Fix loop end condition.
5281         [Coverity CID 213]
5282
5283         * argp/argp-help.c (hol_entry_cmp): Don't call canon_doc_option if
5284         string is NULL.  [Coverity CID 212]
5285         * argp/Makefile: Add rules to build and run bug-argp1.
5286         * argp/bug-argp1.c: New file.
5287
5288         * io/ftw.c (ftw_dir): Use __rawmemchr instead of strchr to find
5289         end of string.
5290         * stdlib/canonicalize.c (__realpath): Likewise.
5291
5292         * locale/programs/ld-time.c (time_finish): Don't dereference NULL
5293         pointer.  [Coverity CID 206]
5294
5295         * elf/dl-dst.h (DL_DST_REQUIRED): Be prepared for missing link map
5296         in statically linked code.
5297         * elf/dl-load.c (_dl_dst_substitute): When replacing ORIGIN in
5298         statically built code, be prepared to have no link map.
5299         [Coverity CID 205]
5300
5301         * argp/argp-help.c (fill_in_uparams): Handle STATE==NULL in
5302         dgettext calls. [Coverity CID 204]
5303
5304         * argp/argp-help.c (struct uparams): Remove valid member.  Change
5305         the one user.
5306         (uparam_names): Reduce size.  Avoid relative relocations.
5307         Moved to read-only segment.
5308         (fill_in_uparams): Update for new layout.
5309
5310         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Parameter can be
5311         assumed to always be != NULL. [Coverity CID 202]
5312
5313         * argp/argp-help.c (hol_entry_help): Remove some dead code
5314         [Coverity CID 200].
5315
5316         * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Optimize
5317         away a few more unconditional yperr2nss calls.
5318         (_nss_nis_getservbyname_r): Likewise.
5319
5320 2006-05-06  Ulrich Drepper  <drepper@redhat.com>
5321
5322         * sysdeps/generic/ldsodefs.h: Remove support for non-core
5323         architectures.
5324
5325         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Make sure
5326         that unused memory passed to sendto is nevertheless initialized.
5327
5328         [BZ #2499]
5329         * resolv/nss_dns/dns-canon.c (_nss_dns_getcanonname_r): Avoid
5330         possibly unaligned memory accesses.
5331
5332         * include/arpa/nameser.h: Also optimize NS_PUT16 and NS_PUT32.
5333         * resolv/res_mkquery.c: Use NS_PUT16 and NS_PUT32 instead of __putshort
5334         and __putlong respectively.  Correct buffer overflow check for
5335         NS_NOTIFY_OP.
5336
5337         * resolv/res_send.c (send_vc): Use ns_put16 instead of putshort.
5338
5339         * resolv/res_send.c (res_queriesmatch): Fix typo in comment.
5340         (send_dg): Rewrite error handling to be more compact and avoid
5341         double recomputation of timeouts.  Pass MSG_NOSIGNAL to send.
5342
5343         * include/arpa/nameser.h: Add optimizations for NS_GET16 and NS_GET32.
5344
5345         * resolv/res_send.c (res_nameinquery): Use NS_GET16 directly
5346         instead of ns_get16.
5347         (res_queriesmatch): Likewise.  Minor optimization.
5348
5349         [BZ #2499]
5350         * resolv/res_query.c (__libc_res_nquery): If answerp != NULL,
5351         __libc_res_nsend might reallocate the buffer for the answer.  In
5352         this case we have to reload the HP pointer.
5353
5354 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
5355
5356         * stdio-common/vfscanf.c (memory_error): Remove definition.  Add
5357         some branch prediction hints.
5358
5359         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Define SPLICE_F_*.
5360         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
5361         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
5362         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
5363         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
5364         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
5365         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
5366         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
5367
5368 2006-05-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
5369
5370         * sysdeps/s390/s390-32/elf/start.S: Replace pc relative relocation
5371         by a GOT relocation to make Scrt1.o position independent.
5372         * sysdeps/s390/s390-64/elf/start.S: Likewise.
5373
5374         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S: Add support for
5375         six system call parameters.
5376         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
5377
5378 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
5379
5380         * sunrpc/svcauth_des.c (cache_init): Use calloc instead of
5381         malloc&bzero.
5382
5383         * sunrpc/svc_udp.c (BZERO): Remove definition.
5384         (CALLOC): Define.
5385         (svc_enablecache): Use CALLOC instead of ALLOC&BZERO.
5386
5387         * sunrpc/des_impl.c: Remove ALT_ECB support.  We never used it.
5388         (des_SPtrans): Use uint32_t type.
5389         (des_skb): Likewise.
5390
5391         * sunrpc/xdr_ref.c (xdr_reference): Use calloc instead of malloc&bzero.
5392
5393 2006-05-05  Jakub Jelinek  <jakub@redhat.com>
5394
5395         [BZ #2509]
5396         * stdio-common/tst-printf.sh: Adjust for tst-printf.c change even
5397         on 32-bit arches.
5398
5399 2006-05-05  Ulrich Drepper  <drepper@redhat.com>
5400
5401         * locale/programs/ld-address.c (address_finish): Fix one more
5402         place where the iso639 array might be accessed beyond the limits.
5403
5404 2006-05-04  Ulrich Drepper  <drepper@redhat.com>
5405
5406         * nis/nis_table.c (nis_list): Avoid clearing res twice before
5407         filling it for the first time.
5408
5409         * nis/nis_table.c (get_tablepath): Renamed from __get_tablepath.
5410         Adjust all callers.
5411         Free res object content before returning.
5412
5413         * sunrpc/xdr_array.c (xdr_array): Use calloc instead of malloc&bzero.
5414
5415         * sunrpc/key_call.c (__rpc_thread_key_cleanup): Also free
5416         client->cl_auth.
5417
5418         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
5419         cleanup for initial thread, just the free call on TVP.
5420
5421         * nscd/gai.c (__getline): Define.
5422
5423
5424 See ChangeLog.16 for earlier changes.