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