.
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2007-10-12  Ulrich Drepper  <drepper@redhat.com>
2
3         * elf/cache.c (save_aux_cache): Free memory allocated for
4         temporary file name [Coverity CID 267].
5
6 2007-10-12  Jakub Jelinek  <jakub@redhat.com>
7
8         * misc/Makefile (headers): Add bits/error.h.
9
10 2007-10-12  Ulrich Drepper  <drepper@redhat.com>
11
12         * posix/fnmatch_loop.c: Take rule index returned as part of
13         findidx return value into account when accessing weights.
14         * posix/regcomp.c: Likewise.
15         * posix/regexec.c: Likewise.
16
17         * locale/programs/ld-collate.c (collate_read): Optimize a bit.
18         (skip_to): Fix problems with parameter of elifdef/elifndef.
19
20 2007-10-11  Ulrich Drepper  <drepper@redhat.com>
21
22         * iconv/gconv_simple.c: Add some branch prediction.
23
24 2007-10-12  Jakub Jelinek  <jakub@redhat.com>
25
26         * locale/programs/ld-collate.c (collate_read): If ignore_content
27         and nowtok is tok_define, eat any tok_eol tokens.
28
29 2007-10-11  Jakub Jelinek  <jakub@redhat.com>
30
31         * sysdeps/gnu/netinet/tcp.h: Include sys/socket.h if __USE_MISC.
32         (struct tcp_md5sig): Change tcpm_addr type to struct sockaddr_storage.
33
34         * inet/netinet/in.h: Don't include bits/socket.h.
35         * sysdeps/unix/sysv/linux/bits/socket.h: Only check _SYS_SOCKET_H
36         macro.
37         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
38
39 2007-10-10  Ulrich Drepper  <drepper@redhat.com>
40
41         * locale/programs/locfile-token.h: Remove tok_elif, add tok_elifdef
42         and tok_elifndef.
43         * locale/programs/locfile-kw.gperf: Likewise.
44         * locale/programs/ld-collate.c: Implement primitive preprocessor.
45
46 2007-10-10  Jakub Jelinek  <jakub@redhat.com>
47
48         * stdio-common/printf-parse.h: Include string.h and wchar.h.
49         (__find_specwc): Change into __extern_always_inline function.
50         (__find_specmb): Likewise.  Remove ps argument.  Use __strchrnul.
51         (__parse_one_specmb): Remove ps argument.
52         * stdio-common/vfprintf.c (vfprintf): Remove mbstate variable.
53         Adjust __find_specmb and __parse_one_specmb callers.
54         * stdio-common/printf-prs.c (parse_printf_format): Likewise.
55         * stdio-common/printf-parsemb.c (__find_specwc, __find_specmb):
56         Removed.
57         (__parse_one_specmb): Remove ps argument, adjust __find_specmb
58         caller.
59
60 2007-10-09  Ulrich Drepper  <drepper@redhat.com>
61
62         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Work around problem
63         with some Pentium Ds.
64
65 2007-10-08  Ulrich Drepper  <drepper@redhat.com>
66
67         * sysdeps/unix/sysv/linux/eventfd_read.c (eventfd_read): Use
68         __read not read.
69         * sysdeps/unix/sysv/linux/eventfd_write.c (eventfd_write): Use
70         __write not write.
71
72 2007-10-07  Ulrich Drepper  <drepper@redhat.com>
73
74         [BZ #181]
75         * locale/C-time.c: Set week_1stday data to 19971201.
76         * locale/programs/ld-time.c (time_finish): Default for
77         first_workday is Monday.
78
79         [BZ #2633]
80         * wcsmbs/wchar.h: Move many C99 functions into std namespace.
81
82         [BZ #5103]
83         * posix/glob.c (glob): Recognize patterns starting \/.
84         * posix/tst-gnuglob.c (find_file): Handle absolute path names.
85         (main): Add test for pattern starting \/.
86
87         * misc/error.h: Use __const instead of const.
88         * misc/bits/error.h: Likewise.
89
90 2007-10-07  Andreas Jaeger  <aj@suse.de>
91
92         * include/bits/error.h: New file.
93
94         * misc/bits/error.h (error_at_line): Fix prototype.
95
96 2007-10-06  Ulrich Drepper  <drepper@redhat.com>
97
98         [BZ #3924]
99         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Fix a few
100         more little bugs in creating the stack frame when pltexit has to
101         be called.
102
103         * nscd/nscd_helper.c (__nscd_cache_search): Prevent endless loops.
104         * nscd/connections.c (verify_persistent_db): Recognize circular lists.
105
106         [BZ #4407]
107         * sysdeps/ieee754/dbl-64/e_lgamma_r.c: Fix *signgamp for -0.0.
108         * sysdeps/ieee754/flt-32/e_lgammaf_r.c: Likewise.
109         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise.
110         * math/libm-test.inc: Add test for this case.
111
112         [BZ #5010]
113         * sunrpc/svc.c (struct svc_callout): Add sc_mapped element.
114         (svc_register): Initialize sc_mapped.  Set to TRUE if call to
115         map service succeeded.
116         (svc_is_mapped): New function.
117         (svc_unregister): Use it before trying to unmap service.
118
119 2007-10-05  Ulrich Drepper  <drepper@redhat.com>
120
121         * timezone/zic.c: Update from tzcode2007h.
122
123         [BZ #5063]
124         * timezone/africa: Update from tzdata2007h.
125         * timezone/antarctica: Likewise.
126         * timezone/asia: Likewise.
127         * timezone/australasia: Likewise.
128         * timezone/europe: Likewise.
129         * timezone/leapseconds: Likewise.
130         * timezone/northamerica: Likewise.
131         * timezone/southamerica: Likewise.
132         * timzeone/zone.tab: Likewise.
133
134         [BZ #5104]
135         * elf/do-lookup.h (do_lookup_x): Don't ignore STT_COMMON symbols.
136
137         [BZ #5113]
138         * string/bits/string2.h (__strdup): Cast parameters to calloc to
139         avoid warning with -Wconversion.
140         (__strndup): Likewise.
141         Half the patch by Christian Iseli <christian.iseli@licr.org>.
142
143         [BZ #5112]
144         * nscd/connections.c (restart): Don't resync if database is
145         disabled.  Patch mostly by Brian De Wolf <bldewolf@csupomona.edu>.
146
147         * sysdeps/gnu/netinet/tcp.h: Define TCP_MD5SIG, TCP_MD5SIG_MAXKEYLEN,
148         struct tcp_md5sig.  Extend struct tcp_info according to recent kernels.
149
150         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add eventfd,
151         evetnfd_read, eventfd_write.
152         * sysdeps/unix/sysv/linux/eventfd.c: New file.
153         * sysdeps/unix/sysv/linux/eventfd_read.c: New file.
154         * sysdeps/unix/sysv/linux/eventfd_write.c: New file.
155         * sysdeps/unix/sysv/linux/sys/eventfd.h: New file.
156         * sysdeps/unix/sysv/linux/Versions: Export eventfd, eventfd_read,
157         eventfd_write for GLIBC_2.7.
158
159         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add signalfd.
160         * sysdeps/unix/sysv/linux/signalfd.c: New file.
161         * sysdeps/unix/sysv/linux/sys/signalfd.h: New file.
162         * sysdeps/unix/sysv/linux/Versions: Export signalfd for GLIBC_2.7.
163
164 2007-10-04  Jakub Jelinek  <jakub@redhat.com>
165
166         * stdlib/msort.c: Include stdint.h.
167         (struct msort_param): New type.
168         (msort_with_tmp): Use struct msort_param pointer for unchanging
169         parameters.  Add optimized handling for several common sizes
170         and indirect sorting mode.
171         (qsort): Adjust msort_with_tmp callers.  For big S use indirect
172         sorting.
173         Suggested by Belazougui Djamel .
174
175         * stdlib/Makefile (tests): Add tst-qsort2.
176         * stdlib/tst-qsort2.c: New test.
177
178 2007-10-04  Ulrich Drepper  <drepper@redhat.com>
179
180         * login/login_tty.c (login_tty): The Linux kernel can return EBUSY
181         for dup2 in case another thread races with the current one.  Retry
182         in this case.
183
184         * misc/error.h: Remove support for use outside of libc.  We have to
185         include <features.h> now.  Include <bits/error.h> if possible.
186         * misc/bits/error.h: New file.
187
188 2007-10-03  Jakub Jelinek  <jakub@redhat.com>
189
190         * string/bits/string3.h (memcpy, memmove, mempcpy, memset, bcopy,
191         bzero, strcpy, stpcpy, strncpy, strcat, strncat): Use
192         __extern_always_inline functions unconditionally, drop macros.
193
194         * misc/sys/cdefs.h (__REDIRECT_LDBL, __REDIRECT_NTH_LDBL): New macros.
195         * wcsmbs/bits/wchar2.h (__swprintf_alias, __vswprintf_alias): Use
196         __REDIRECT_NTH_LDBL macro rather than __REDIRECT_NTH.
197
198         * misc/sys/cdefs.h (__extern_always_inline): For GCC 4.3+
199         add __artificial__ attribute.
200
201 2007-10-02  Ulrich Drepper  <drepper@redhat.com>
202
203         * string/strcoll_l.c (STRCOLL): Correct handling of switching from
204         backward to forward direction.
205
206         * string/strcoll_l.c (STRCOLL): Correct test for alloca use.
207
208         [BZ #645]
209         * locale/programs/ld-collate.c (collate_finish): Compare against last
210         used section which is known to have rules defined.
211         (collate_read): After order_start, correctly record order of sections
212         and queue sections up.
213
214 2007-10-01  Ulrich Drepper  <drepper@redhat.com>
215
216         [BZ #5071]
217         * malloc/malloc.c (mremap_chunk): Avoid resizing of new block has
218         the same number of pages.
219         Patch by Tomash Brechko <tomash.brechko@gmail.com>.
220
221         * locale/programs/ld-collate.c (collate_read): After initial copy
222         statement, continue in state 0.
223
224         * include/stdio_ext.h (__fsetlocking): Define as macro.
225
226 2007-09-30  Ulrich Drepper  <drepper@redhat.com>
227
228         * locale/programs/ld-collate.c (collate_finish): Compare all bytes
229         of section order.
230
231         * po/pt_BR.po: Fix typo.
232
233 2007-09-29  Ulrich Drepper  <drepper@redhat.com>
234
235         * iconvdata/Makefile (modules): Add ISO8859-9E.
236         (distribute): Add iso8859-9e.c.
237         (gen-8bit-gap-modules): Add iso8859-9e.
238         * iconvdata/iso8859-9e.c: New file.
239         * iconvdata/gconv-modules: Add entries for ISO-8859-9E.
240         * iconvdata/TESTS: Likewise.
241         * iconvdata/tst-tables.sh: Likewise.
242
243         * iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
244
245         * locale/iso-639.def: Add several new entries.
246
247 2007-09-24  Jakub Jelinek  <jakub@redhat.com>
248
249         * sysdeps/generic/ldsodefs.h (struct dl_scope_free_list): Store
250         void * pointers instead of struct link_map **.
251         (_dl_scope_free): Change argument type to void *.
252         * include/link.h (struct link_map): Change type of l_reldeps
253         to struct link_map_reldeps, move l_reldepsact into that
254         struct too.
255         * elf/dl-deps.c: Include atomic.h.
256         (_dl_map_object_deps): Only change l->l_initfini when it is
257         fully populated, use _dl_scope_free for freeing it.  Optimize
258         removal of libs from reldeps by using l_reserved flag, when
259         some removal is needed, allocate a new list instead of
260         reallocating and free the old with _dl_scope_free.  Adjust
261         for l_reldeps and l_reldepsact changes.
262         * elf/dl-lookup.c (add_dependency): Likewise.  Reorganize to allow
263         searching in l_initfini and l_reldeps without holding dl_load_lock.
264         * elf/dl-fini.c (_dl_sort_fini): Adjust for l_reldeps and
265         l_reldepsact changes.
266         * elf/dl-close.c (_dl_close_worker): Likewise.
267         * elf/dl-open.c (_dl_scope_free): Change argument type to void *.
268
269 2007-09-28  Ulrich Drepper  <drepper@redhat.com>
270
271         * iconvdata/Makefile (modules): Add KOI8-RU.
272         (distribute): Add koi8-ru.c.
273         (gen-8bit-gap-modules): Add koi8-ru.
274         * iconvdata/koi8-ru.c: New file.
275         * iconvdata/gconv-modules: Add entries for KOI8-RU.
276         * iconvdata/TESTS: Likewise.
277         * iconvdata/tst-tables.sh: Likewise.
278
279         * iconvdata/koi8-r.c (HAS_HOLES): Define to 0.
280
281 2007-09-26  Jakub Jelinek  <jakub@redhat.com>
282
283         * misc/sys/cdefs.h (__warndecl, __errordecl): For GCC 4.3+ define
284         with __warning__/__error__ attributes.
285         (__warnattr): Define.
286         * stdlib/bits/stdlib.h (__realpath_chk_warn, __ptsname_r_chk_warn,
287         __mbstowcs_chk_warn, __wcstombs_chk_warn): New aliases with
288         __warnattr.
289         (realpath, ptsname_r, mbstowcs, wcstombs): Call __*_chk_warn instead
290         of __*_chk if compile time detectable overflow is found.
291         * libio/bits/stdio2.h (__fgets_chk_warn, __fread_chk_warn,
292         __fgets_unlocked_chk_warn, __fread_unlocked_chk_warn): New aliases
293         with __warnattr.
294         (fgets, fread, fgets_unlocked, fread_unlocked): Call __*_chk_warn
295         instead of __*_chk if compile time detectable overflow is found.
296         (__gets_alias): Rename to...
297         (__gets_warn): ... this.  Add __warnattr.
298         (gets): Call __gets_warn instead of __gets_alias.
299         * socket/bits/socket2.h (__recv_chk_warn, __recvfrom_chk_warn): New
300         aliases with __warnattr.
301         (recv, recvfrom): Call __*_chk_warn instead of __*_chk if compile
302         time detectable overflow is found.
303         * posix/bits/unistd.h (__read_chk_warn, __pread_chk_warn,
304         __pread64_chk_warn, __readlink_chk_warn, __readlinkat_chk_warn,
305         __getcwd_chk_warn, __confstr_chk_warn, __getgroups_chk_warn,
306         __ttyname_r_chk_warn, __getlogin_r_chk_warn, __gethostname_chk_warn,
307         __getdomainname_chk_warn): New aliases with __warnattr.
308         (read, pread, pread64, readlink, readlinkat, getcwd, confstr,
309         getgroups, ttyname_r, getlogin_r, gethostname, getdomainname): Call
310         __*_chk_warn instead of __*_chk if compile time detectable overflow
311         is found.
312         (__getgroups_chk): Rename argument to __listlen from listlen.
313         (__getwd_alias): Rename to...
314         (__getwd_warn): ... this.  Add __warnattr.
315         (getwd): Call __getwd_warn instead of __getwd_alias.
316         * wcsmbs/bits/wchar2.h (__wmemcpy_chk_warn, __wmemmove_chk_warn,
317         __wmempcpy_chk_warn, __wmemset_chk_warn, __wcsncpy_chk_warn,
318         __wcpncpy_chk_warn, __fgetws_chk_warn, __fgetws_unlocked_chk_warn,
319         __mbsrtowcs_chk_warn, __wcsrtombs_chk_warn, __mbsnrtowcs_chk_warn,
320         __wcsnrtombs_chk_warn): New aliases with __warnattr.
321         (wmemcpy, wmemmove, wmempcpy, wmemset, mbsrtowcs, wcsrtombs,
322         mbsnrtowcs, wcsnrtombs): Call __*_chk_warn instead of __*_chk if
323         compile time detectable overflow is found.
324         (wcsncpy, wcpncpy): Likewise.  For constant __n fix check whether
325         to use __*_chk or not.
326         (fgetws, fgetws_unlocked): Divide __bos by sizeof (wchar_t), both
327         in comparisons which function should be called and in __*_chk*
328         arguments.  Call __*_chk_warn instead of __*_chk if compile time
329         detectable overflow is found.
330         (swprintf, vswprintf): Divide __bos by sizeof (wchar_t) in
331         __*_chk argument.
332         * debug/tst-chk1.c (do_test): Add a few more tests.
333
334 2007-09-24  Ulrich Drepper  <drepper@redhat.com>
335
336         [BZ #5058]
337         * intl/gettextP.h (struct loaded_domain): Add conversions_lock member.
338         * intl/loadmsgcat.c (_nl_load_domain): Initialize conversions_lock.
339         (_nl_unload_domain): Finalize conversions_lock.
340         * intl/dcigettext.c (_nl_find_msg): Take conversions_lock before
341         handling table of known conversions.
342
343 2007-09-24  Jakub Jelinek  <jakub@redhat.com>
344
345         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Use
346         close_not_cancel_no_status instead of close.
347
348 2007-09-13  Aurelien Jarno  <aurelien@aurel32.net>
349
350         [BZ #5028]
351         * posix/regcomp.c (lookup_collation_sequence_value): Check that
352         nrules != 0 for multibyte chars.
353
354 2007-09-23  Ulrich Drepper  <drepper@redhat.com>
355
356         * resolv/ns_print.c (ns_sprintrrf): Handle ns_t_a6 and ns_t_opt.
357         Provide better error message in case the type is unknown.
358
359         [BZ #4963]
360         * wcsmbs/wcsnlen.c: Don't reference before checking the length.
361         * string/stratcliff.c: Make usable to test wide char functions.
362         * wcsmbs/wcsatcliff.c: New file.
363         * wcsmbs/Makefiel (tests): Add wcsatcliff.
364
365         [BZ #4972]
366         * iconvdata/Makefile (modules): Add MAC-CENTRALEUROPE.
367         (distribute): Add mac-centraleurope.c.
368         (gen-8bit-gap-modules): Add mac-centraleurope.
369         * iconvdata/mac-centraleurope.c: New file.
370         * iconvdata/gconv-modules: Add entries for MAC-CENTRALEUROPE.
371         * iconvdata/TESTS: Likewise.
372         * iconvdata/tst-tables.sh: Likewise.
373
374         [BZ #5043]
375         * iconv/iconv_open.c (iconv_open): For large codeset names use malloc.
376
377 2007-09-21  Ulrich Drepper  <drepper@redhat.com>
378
379         * sysdeps/x86_64/cacheinfo.c (__x86_64_data_cache_size_half): Renamed
380         from __x86_64_core_cache_size_half.
381         (init_cacheinfo): Compute shared cache size for AMD processors with
382         shared L3 correctly.
383         * sysdeps/x86_64/memcpy.S: Adjust for __x86_64_data_cache_size_half
384         name change.
385         Patch in large parts by Evandro Menezes.
386
387 2007-09-19  Ulrich Drepper  <drepper@redhat.com>
388
389         * elf/dl-lookup.c (add_dependency): Handle failing memory
390         allocation for dependency list.  Remove unnecessary check.
391
392         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Avoid unnecessary
393         open/close when determining source addresses.
394
395         * crypt/Makefile (libcrypt-routines): Add sha256-crypt, sha256,
396         sha512-crypt, and sha512.
397         (tests): Add sha256test, sha256c-test, sha512test, and sha512c-test.
398         (distribute): Add sha256.h and sha512.h.
399         * crypt/crypt-entry.c (crypt): Recognize the new $5$ and $6$ prefixes
400         and call the appropriate code.
401         * crypt/sha256-crypt.c: New file.
402         * crypt/sha256.c: New file.
403         * crypt/sha256.h: New file.
404         * crypt/sha256c-test.c: New file.
405         * crypt/sha256test.c: New file.
406         * crypt/sha512-crypt.c: New file.
407         * crypt/sha512.c: New file.
408         * crypt/sha512.h: New file.
409         * crypt/sha512c-test.c: New file.
410         * crypt/sha512test.c: New file.
411
412 2007-09-19  Jakub Jelinek  <jakub@redhat.com>
413
414         * misc/bits/syslog.h (syslog): Remove extraneous argument from
415         the inline, pass __USE_FORTIFY_LEVEL - 1 as second argument to
416         __syslog_chk.
417
418 2007-09-18  Jakub Jelinek  <jakub@redhat.com>
419
420         * locale/programs/charmap-dir.c (charmap_aliases): Use %ms instead of
421         %as in fscanf format strings.
422
423         * sysdeps/sparc/sparc32/elf/start.S: Remove cfi_* markup.
424         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
425         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__thread_start):
426         Likewise.
427         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__thread_start):
428         Likewise.
429
430         * sysdeps/generic/ldsodefs.h (DL_LOOKUP_GSCOPE_LOCK): New definition.
431         * elf/dl-runtime.c (_dl_fixup, _dl_profile_fixup): Or in
432         DL_LOOKUP_GSCOPE_LOCK into flags after THREAD_GSCOPE_SET_FLAG ().
433         * elf/dl-sym.c (do_sym): Likewise.
434         * include/link.h (struct link_map): Add l_serial field.
435         * elf/dl-object.c (_dl_new_object): Initialize l_serial.
436         * elf/dl-lookup.c (add_dependency): Add flags argument.
437         Remember map->l_serial, if DL_LOOKUP_GSCOPE_LOCK is among
438         flags, use THREAD_GSCOPE_RESET_FLAG before and
439         THREAD_GSCOPE_SET_FLAG after
440         __rtld_lock_lock_recursive (GL(dl_load_lock)) to avoid deadlock.
441         Don't dereference map until it has been found on some list.
442         If map->l_serial changed, return -1.
443
444 2007-09-17  Jakub Jelinek  <jakub@redhat.com>
445
446         * include/stdio.h (__isoc99_fscanf, __isoc99_scanf,
447         __isoc99_sscanf, __isoc99_vscanf): New prototypes.
448         (__isoc99_vsscanf, __isoc99_vfscanf): New prototypes, add
449         libc_hidden_proto.
450         * include/wchar.h (__isoc99_fwscanf, __isoc99_wscanf,
451         __isoc99_swscanf, __isoc99_vwscanf): New prototypes.
452         (__isoc99_vswscanf, __isoc99_vfwscanf): New prototypes,
453         add libc_hidden_proto.
454         * libio/stdio.h (fscanf, scanf, sscanf, vfscanf, vscanf,
455         vsscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
456         conformance requested.
457         * wcsmbs/wchar.h (fwscanf, wscanf, swscanf, vfwscanf, vwscanf,
458         vswscanf): Redirect to __isoc99_* if strict ISO C99 or POSIX
459         conformance requested.
460         * libio/bits/stdio-ldbl.h (fscanf, scanf, sscanf, vfscanf, vscanf,
461         vsscanf): Redirect to __nldbl___isoc99_* if strict ISO C99 or POSIX
462         conformance requested.
463         * wcsmbs/bits/wchar-ldbl.h (fwscanf, wscanf, swscanf, vfwscanf,
464         vwscanf, vswscanf): Redirect to __nldbl___isoc99_* if strict
465         ISO C99 or POSIX conformance requested.
466         * stdio-common/Versions (libc): Export __isoc99_scanf@@GLIBC_2.7,
467         __isoc99_vscanf@@GLIBC_2.7, __isoc99_fscanf@@GLIBC_2.7,
468         __isoc99_vfscanf@@GLIBC_2.7, __isoc99_sscanf@@GLIBC_2.7
469         and __isoc99_vsscanf@@GLIBC_2.7.
470         * stdio-common/Makefile (routines): Add isoc99_scanf, isoc99_vscanf,
471         isoc99_fscanf, isoc99_vfscanf, isoc99_sscanf and isoc99_vsscanf.
472         (tests): Add scanf14.
473         (CFLAGS-vfprintf.c, CFLAGS-fprintf.c, CFLAGS-printf.c,
474         CFLAGS-vfwprintf.c, CFLAGS-vfscanf.c, CFLAGS-vfwscanf.c,
475         CFLAGS-fscanf.c, CFLAGS-scanf.c, CFLAGS-isoc99_vfscanf.c,
476         CFLAGS-isoc99_vscanf.c, CFLAGS-isoc99_fscanf.c,
477         CFLAGS-isoc99_scanf.c): Add $(exceptions).
478         (CFLAGS-scanf15.c): Add various -I paths to prevent the compiler
479         from using internal headers.
480         * wcsmbs/Versions (libc): Export __isoc99_wscanf@@GLIBC_2.7,
481         __isoc99_vwscanf@@GLIBC_2.7, __isoc99_fwscanf@@GLIBC_2.7,
482         __isoc99_vfwscanf@@GLIBC_2.7, __isoc99_swscanf@@GLIBC_2.7
483         and __isoc99_vswscanf@@GLIBC_2.7.
484         * wcsmbs/Makefile (routines): Add isoc99_wscanf, isoc99_vwscanf,
485         isoc99_fwscanf, isoc99_vfwscanf, isoc99_swscanf and isoc99_vswscanf.
486         (CFLAGS-isoc99_wscanf.c, CFLAGS-isoc99_fwscanf.c,
487         CFLAGS-isoc99_vwscanf.c, CFLAGS-isoc99_vfwscanf.c): Add $(exceptions).
488         (CPPFLAGS): Add -D_IO_MTSAFE_IO if needed.
489         * stdio-common/isoc99_scanf.c: New file.
490         * stdio-common/isoc99_vsscanf.c: New file.
491         * stdio-common/isoc99_vscanf.c: New file.
492         * stdio-common/isoc99_vfscanf.c: New file.
493         * stdio-common/isoc99_fscanf.c: New file.
494         * stdio-common/isoc99_sscanf.c: New file.
495         * wcsmbs/isoc99_fwscanf.c: New file.
496         * wcsmbs/isoc99_vswscanf.c: New file.
497         * wcsmbs/isoc99_swscanf.c: New file.
498         * wcsmbs/isoc99_wscanf.c: New file.
499         * wcsmbs/isoc99_vwscanf.c: New file.
500         * wcsmbs/isoc99_vfwscanf.c: New file.
501         * libio/libio.h (_IO_FLAGS2_SCANF_STD): Define.
502         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Also
503         clear _IO_FLAGS2_SCANF_STD bit from _flags2.
504         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Don't
505         handle %as, %aS and %a[ if _IO_FLAGS2_SCANF_STD is set in _flags2.
506         * stdio-common/scanf14.c: New test.
507         * stdio-common/scanf15.c: New test.
508         * sysdeps/ieee754/ldbl-opt/Makefile (libnldbl-calls): Add
509         isoc99_scanf, isoc99_fscanf, isoc99_sscanf,
510         isoc99_vscanf, isoc99_vfscanf, isoc99_vsscanf,
511         isoc99_wscanf, isoc99_fwscanf, isoc99_swscanf,
512         isoc99_vwscanf, isoc99_vfwscanf and isoc99_vswscanf.
513         * sysdeps/ieee754/ldbl-opt/Versions (libc): Export
514         __nldbl___isoc99_scanf@@GLIBC_2.7,
515         __nldbl___isoc99_fscanf@@GLIBC_2.7,
516         __nldbl___isoc99_sscanf@@GLIBC_2.7,
517         __nldbl___isoc99_vscanf@@GLIBC_2.7,
518         __nldbl___isoc99_vfscanf@@GLIBC_2.7,
519         __nldbl___isoc99_vsscanf@@GLIBC_2.7,
520         __nldbl___isoc99_wscanf@@GLIBC_2.7,
521         __nldbl___isoc99_fwscanf@@GLIBC_2.7,
522         __nldbl___isoc99_swscanf@@GLIBC_2.7,
523         __nldbl___isoc99_vwscanf@@GLIBC_2.7,
524         __nldbl___isoc99_vfwscanf@@GLIBC_2.7
525         and __nldbl___isoc99_vswscanf@@GLIBC_2.7.
526         * sysdeps/ieee754/ldbl-opt/nldbl-compat.h (__isoc99_scanf,
527         __isoc99_fscanf, __isoc99_sscanf, __isoc99_vscanf,
528         __isoc99_vfscanf, __isoc99_vsscanf, __isoc99_wscanf,
529         __isoc99_fwscanf, __isoc99_swscanf, __isoc99_vwscanf,
530         __isoc99_vfwscanf, __isoc99_vswscanf): Add NLDBL_DECL.
531         * sysdeps/ieee754/ldbl-opt/nldbl-compat.c
532         (__nldbl___isoc99_scanf, __nldbl___isoc99_fscanf,
533         __nldbl___isoc99_sscanf, __nldbl___isoc99_vscanf,
534         __nldbl___isoc99_vfscanf, __nldbl___isoc99_vsscanf,
535         __nldbl___isoc99_wscanf, __nldbl___isoc99_fwscanf,
536         __nldbl___isoc99_swscanf, __nldbl___isoc99_vwscanf,
537         __nldbl___isoc99_vfwscanf, __nldbl___isoc99_vswscanf): New
538         functions.
539         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfscanf.c: New file.
540         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_swscanf.c: New file.
541         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vwscanf.c: New file.
542         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_wscanf.c: New file.
543         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_scanf.c: New file.
544         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_sscanf.c: New file.
545         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vsscanf.c: New file.
546         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fwscanf.c: New file.
547         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vfwscanf.c: New file.
548         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vswscanf.c: New file.
549         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_vscanf.c: New file.
550         * sysdeps/ieee754/ldbl-opt/nldbl-isoc99_fscanf.c: New file.
551
552         * stdio-common/Makefile (tests): Add scanf13.
553         (scanf13-ENV): New.
554         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Handle
555         m modifier followed by l.
556         (STRING_ARG): Add width argument.
557         (_IO_vfscanf_internal) <case L_('c')>: Handle %mc.
558         <case L_('C')>: Handle %mlc and %mC.
559         <case L_('s'), case L_('S'), case L_('[')>: Adjust STRING_ARG
560         arguments.
561         * stdio-common/scanf13.c: New test.
562
563         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): Clear
564         the _IO_FLAGS2_FORTIFY bit from _flags2 rather than _flags.
565
566 2007-09-18  Ulrich Drepper  <drepper@redhat.com>
567
568         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Correct return value
569         type and __THROW marker of splice, vmsplice, and tee.
570         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
571         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
572         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
573         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
574         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
575         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
576         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
577         * sysdeps/unix/sysv/linux/syscalls.list: Mark splice, vmsplice, and tee
578         as cancellation points.
579
580 2003-11-01  Daniel Jacobowitz  <dan@debian.org>
581
582         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion): Don't
583         parse more than three parts of the version number.
584
585 2007-09-15  Ulrich Drepper  <drepper@redhat.com>
586
587         * stdio-common/vfscanf.c (_IO_vfwscanf): Add support for 'm'
588         modifier.  Patch by Jakub Jelinek.
589
590 2007-08-26  Jakub Jelinek  <jakub@redhat.com>
591
592         * sysdeps/unix/sysv/linux/i386/Makefile (sysdep_routines): Add
593         call_fallocate in misc subdir.
594         * sysdeps/unix/sysv/linux/i386/call_fallocate.S: New file.
595         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate64): Remove.
596         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: Use __call_fallocate
597         instead of __fallocate64.
598         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: Likewise.
599
600 2007-09-15  Jakub Jelinek  <jakub@redhat.com>
601
602         * rt/Versions (librt): Export __mq_open_2@@GLIBC_2.7.
603         * rt/Makefile (headers): Add bits/mqueue2.h.
604         * rt/mqueue.h: Include bits/mqueue2.h if -D_FORTIFY_SOURCE=2,
605         optimizing with GCC and __va_arg_pack_len is defined.
606         * rt/bits/mqueue2.h: New file.
607         * rt/mq_open.c (__mq_open): Renamed from mq_open.
608         (mq_open): New strong_alias.
609         (__mq_open_2): New function.
610         * sysdeps/unix/sysv/linux/mq_open.c (__mq_open): Renamed from mq_open.
611         (mq_open): New strong_alias.
612         (__mq_open_2): New function.
613         * debug/Versions (libc): Export __fortify_fail@@GLIBC_PRIVATE.
614         * Versions.def (librt): Add GLIBC_2.7 version.
615         * debug/fortify_fail.c (__fortify_fail): Add libc_hidden_def.
616         * include/stdio.h (__fortify_fail): Add libc_hidden_proto.
617
618         * misc/sys/cdefs.h (__errordecl, __va_arg_pack_len): Define.
619         * io/fcntl.h: Include bits/fcntl2.h when __va_arg_pack_len
620         is defined rather than when not C++.
621         * io/bits/fcntl2.h (__open_alias, __open64_alias, __openat_alias,
622         __openat64_alias): New redirects.
623         (__open_too_many_args, __open_missing_mode, __open64_too_many_args,
624         __open64_missing_mode, __openat_too_many_args, __openat_missing_mode,
625         __openat64_too_many_args, __openat64_missing_mode): New __errordecls.
626         (open, open64, openat, openat64): Rewrite as __extern_always_inline
627         functions instead of function-like macros.
628
629 2007-09-14  H.J. Lu  <hongjiu.lu@intel.com>
630
631         * sysdeps/i386/i586/memcpy.S (__memcpy_chk): New definition.
632         * sysdeps/i386/i586/mempcpy.S (__memcpy_chk): New definition.
633         * sysdeps/i386/i586/memset.S (__memset_chk): New definition.
634
635 2007-09-15  Mike Frysinger  <vapier@gentoo.org>
636
637         * inet/inet_net.c: Reset digit to 0 for inputs starting with "0x".
638         * inet/tst-network.c (tests): Add edge case tests for "0", "0x", "0x0".
639
640 2007-09-14  Mike Frysinger  <vapier@gentoo.org>
641
642         * inet/tst-network.c: Increment ERRORS for failing tests.
643
644 2007-09-07  Jakub Jelinek  <jakub@redhat.com>
645
646         * misc/sys/cdefs.h (__va_arg_pack): Define for GCC 4.3+.
647         * misc/bits/syslog.h (syslog): When __va_arg_pack is defined,
648         implement as __extern_always_inline function.
649         (vsyslog): Define as __extern_always_inline function unconditionally.
650         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf):
651         When __va_arg_pack is defined, implement as __extern_always_inline
652         functions.
653         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
654         __extern_always_inline functions unconditionally.
655         * libio/bits/stdio.h (vprintf): Ifdef out the inline when
656         bits/stdio2.h will be included.
657         * wcsmbs/bits/wchar2.h (__swprintf_alias): New redirect.
658         (swprintf, wprintf, fwprintf): When __va_arg_pack is defined,
659         implement as __extern_always_inline functions.
660         (vswprintf, vwprintf, vfwprintf): Define as
661         __extern_always_inline functions unconditionally.
662         * debug/tst-chk1.c (do_test): Enable remaining tests for C++.
663
664 2007-09-03  Jakub Jelinek  <jakub@redhat.com>
665
666         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Only
667         define in C++ for GCC 4.3+, in C++ always use __gnu_inline__
668         attribute.
669         * include/features.h (__USE_EXTERN_INLINES): Define only when
670         __extern_inline is defined.
671         * stdlib/stdlib.h: Include bits/stdlib.h when __extern_always_inline
672         is defined instead of when not __cplusplus.
673         * misc/sys/syslog.h: Include bits/syslog.h when __extern_always_inline
674         is defined instead of when not __cplusplus.
675         * socket/sys/socket.h: Include bits/socket2.h when
676         __extern_always_inline is defined instead of when not __cplusplus.
677         * libio/stdio.h: Include bits/stdio2.h when __extern_always_inline
678         is defined instead of when not __cplusplus.
679         * posix/unistd.h: Include bits/unistd.h when __extern_always_inline
680         is defined instead of when not __cplusplus.
681         * string/string.h: Include bits/string3.h when __extern_always_inline
682         is defined instead of when not __cplusplus.
683         * wcsmbs/wchar.h: Include bits/wchar2.h when __extern_always_inline
684         is defined instead of when not __cplusplus.
685         (btowc, wctob): Don't guard the inlines with ifndef __cplusplus.
686         * io/fcntl.h: Don't include bits/fcntl2.h if __extern_always_inline
687         is not defined.
688         * misc/bits/syslog-ldbl.h: Guard *_chk stuff with
689         defined __extern_always_inline instead of !defined __cplusplus.
690         * libio/bits/stdio-ldbl.h: Likewise.
691         * wcsmbs/bits/wchar-ldbl.h: Likewise.
692         * misc/bits/syslog.h (syslog): Don't define for C++.
693         (vsyslog): Use __extern_always_inline function for C++ instead of
694         a macro.
695         * libio/bits/stdio.h (__STDIO_INLINE): Define to __extern_inline
696         whenever that macro is defined.
697         (vprintf): Don't provide the inline for C++.
698         (fread_unlocked, fwrite_unlocked): Don't define the macros for C++.
699         * libio/bits/stdio2.h (sprintf, snprintf, printf, fprintf): Don't
700         define the macros for C++.
701         (vsprintf, vsnprintf, vprintf, vfprintf): Define as
702         __extern_always_inline functions for C++.
703         * io/sys/stat.h (stat, lstat, fstat, fstatat, mknod, mknodat,
704         stat64, lstat64, fstat64, fstatat64): Don't define if not
705         __USE_EXTERN_INLINES.
706         * wcsmbs/bits/wchar2.h: Fix #error message.
707         (swprintf, wprintf, fwprintf): Don't define the macros for C++.
708         (vswprintf, vwprintf, vfwprintf): Define using
709         __extern_always_inline functions for C++.
710         * string/bits/string3.h: Don't #undef macros if __cplusplus.
711         (memcpy, memmove, mempcpy, memset, bcopy, bzero, strcpy, stpcpy,
712         strncpy, strcat, strncat): Define as __extern_always_inline
713         functions instead of macros for C++.
714         * math/bits/cmathcalls.h: Guard __extern_inline routines with
715         defined __extern_inline.
716         * sysdeps/alpha/fpu/bits/mathinline.h (__MATH_INLINE): Define
717         to __extern_inline whenever that macro is defined.
718         * sysdeps/ia64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
719         * sysdeps/i386/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
720         * sysdeps/i386/i486/bits/string.h (__STRING_INLINE): Likewise.
721         * sysdeps/s390/bits/string.h (__STRING_INLINE): Likewise.
722         * sysdeps/s390/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
723         * sysdeps/powerpc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
724         * sysdeps/x86_64/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
725         * sysdeps/sparc/fpu/bits/mathinline.h (__MATH_INLINE): Likewise.
726         * sysdeps/unix/sysv/linux/sys/sysmacros.h (gnu_dev_major,
727         gnu_dev_minor, gnu_dev_makedev): Remove __extern_inline from
728         prototypes.  Only provide __extern_inline routines if
729         __USE_EXTERN_INLINES.
730         * debug/Makefile: Add rules to build and run tst-{,lfs}chk{4,5,6}
731         tests.
732         * debug/tst-chk1.c (do_prepare, do_test): Allow compilation as C++.
733         For now avoid some *printf tests in C++.  Skip all testing
734         if __USE_FORTIFY_LEVEL is defined, but __extern_always_inline macro
735         is not.
736         * debug/tst-chk4.cc: New file.
737         * debug/tst-chk5.cc: New file.
738         * debug/tst-chk6.cc: New file.
739         * debug/tst-lfschk4.cc: New file.
740         * debug/tst-lfschk5.cc: New file.
741         * debug/tst-lfschk6.cc: New file.
742         * include/wchar.h (__vfwprintf_chk, __vswprintf_chk): Avoid
743         prototypes in C++.
744         * include/stdio.h (__sprintf_chk, __snprintf_chk, __vsprintf_chk,
745         __vsnprintf_chk, __printf_chk, __fprintf_chk, __vprintf_chk,
746         __vfprintf_chk, __fgets_unlocked_chk, __fgets_chk): Likewise.
747
748 2007-09-13  Ulrich Drepper  <drepper@redhat.com>
749
750         * po/cs.po: Update from translation team.
751
752 2007-09-11  Roland McGrath  <roland@redhat.com>
753
754         * posix/Makefile ($(objpfx)getconf.speclist): Make it empty if cross
755         compiling.
756
757 2007-09-07  Samuel Thibault  <samuel.thibault@ens-lyon.org>
758
759         * sysdeps/mach/hurd/bits/ioctls.h (TAB3): New macro.
760
761 2007-09-05  Roland McGrath  <roland@redhat.com>
762
763         * manual/signal.texi (Signaling Another Process): Typo fix.
764         From Karl Berry <karl@freefriends.org>.
765
766 2007-08-29  Ulrich Drepper  <drepper@redhat.com>
767
768         * sysdeps/unix/sysv/linux/check_pf.c (IFA_F_OPTIMISTIC): Define to
769         zero if not defined.
770         (make_request): Recognize optimistic addresses and treat them like
771         deprecated addresses.
772         Reported by Neil Horman <nhorman@redhat.com>.
773
774 2007-08-28  Ulrich Drepper  <drepper@redhat.com>
775
776         * nscd/connections.c (send_ro_fd): Also transfer file size.
777         * nscd/nscd_helper.c (get_mapping): If nscd also transfers the
778         file size don't call fstat.
779
780         * nscd/nscd_helper.c (get_mapping): Avoid the pread call, just go
781         ahead and map the file.  This should always be correct and we can
782         catch problems later.
783
784 2007-08-28  Jakub Jelinek  <jakub@redhat.com>
785
786         * libio/bits/stdio2.h (__fread_chk, __fread_unlocked_chk): New
787         prototypes.
788         (__fread_alias, __fread_unlocked_alias): New aliases.
789         (fread): New extern inline.
790         (fread_unlocked): Likewise.  Undef macro before definition of
791         the inline function.
792         * debug/Makefile (routines): Add fread_chk and fread_u_chk.
793         (CFLAGS-fread_chk.c, CFLAGS-fread_u_chk.c): Add.
794         * debug/Versions (libc): Export __fread_chk@@GLIBC_2.7
795         and __fread_unlocked_chk@@GLIBC_2.7.
796         * debug/fread_chk.c: New file.
797         * debug/fread_u_chk.c: New file.
798         * debug/tst-chk1.c (do_test): Add fread and fread_unlocked tests.
799
800 2007-08-27  Jakub Jelinek  <jakub@redhat.com>
801
802         * sysdeps/unix/sysv/linux/syscalls.list
803         (personality): Change caller to EXTRA.
804
805 2007-08-25  Ulrich Drepper  <drepper@redhat.com>
806
807         * iconvdata/iso-2022-kr.c (BODY): Fake initialization of array buf
808         to keep gcc quiet.
809         * iconvdata/iso-2022-cn.c (BODY): Likewise.
810
811         * locale/programs/ld-collate.c (collate_output): Avoid warning if
812         NDEBUG is defined.
813
814         * Makerules: Use -p option with mkdir.
815
816         * sunrpc/key_prot.c (xdr_unixcred): Work around gcc alias warning.
817         * nis/nis_xdr.c (_xdr_nis_server): Likewise.
818         (_xdr_directory_obj): Likewise.
819         (xdr_entry_obj): Likewise.
820         (xdr_group_obj): Likewise.
821         (xdr_link_obj): Likewise.
822         (xdr_table_obj): Likewise.
823         (_xdr_nis_result): Likewise.
824         (_xdr_ns_request): Likewise.
825         (_xdr_ib_request): Likewise.
826         (_xdr_nis_taglist): Likewise.
827         (xdr_cback_data): Likewise.
828         * nis/yp_xdr.c (xdr_ypmaplist): Likewise.
829         (xdr_ypresp_maplist): Likewise.
830
831         * stdio-common/Makefile: Avoid format string warning for tst-sprint.
832
833         * posix/regex_internal.h: Prevent some declarations and definitions
834         to be seen when used in tests.
835
836         * posix/tst-rfc3484.c (__idna_to_unicode_lzlz): Initialize *OUTPUT.
837         * posix/tst-rfc3484-2.c (__idna_to_unicode_lzlz): Likewise.
838
839         * debug/Makefile: Disable format checking when compiling tst-chk?.c.
840
841         * config.make.in (datarootdir): Add to shut up configure.
842
843         * sysdeps/x86_64/cacheinfo.c (handle_amd): Fix computation of
844         associativity for fully-associative caches.
845
846         * sysdeps/x86_64/cacheinfo.c (handle_amd): Handle L3 cache
847         requests.  Fill on more associativity values for L2.
848         Patch mostly by Evandro Menezes.
849
850 2007-08-24  Ulrich Drepper  <drepper@redhat.com>
851
852         * sysdeps/unix/sysv/linux/x86_64/init-first.c
853         (_libc_vdso_platform_setup): Avoid using exported variable by using
854         alias.
855
856         * resolv/arpa/nameser.h (NS_OPT_DNSSEC_OK): Define.
857
858         * sysdeps/unix/sysv/linux/i386/syscalls.list: No reason to mark
859         fallocate64 as EXTRA.  It is not referenced if the symbol isn't
860         defined.
861
862 2007-08-23  Ulrich Drepper  <drepper@redhat.com>
863
864         * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Correctly
865         align stack for call if pltexit is to be used.
866
867         [BZ #3924]
868         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Correctly
869         align for function call in case pltexit has to be called later.
870
871         * sysdeps/i386/dl-trampoline.S (_dl_runtime_resolve): Avoid
872         implicit atomic operation when storing function pointer.
873         (_dl_runtime_profile): Likewise.
874
875 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
876
877         * nis/nis_table.c (nis_list): Don't fail if __follow_path returned
878         NIS_NOTFOUND.
879
880 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
881
882         [BZ #4566]
883         * string/strtok.c: Fix typo in comment.
884
885         [BZ #4582]
886         * debug/segfault.c: Fix typos in comments.
887
888         [BZ #4588]
889         * stdio-common/tempnam.c: Fix comment, it is not checked that
890         TMPDIR points to a writable directory.
891
892         [BZ #4726]
893         * resolv/res_send.c (__libc_res_nsend): Initialize all of the
894         memory allocated for the name server address.
895
896         [BZ #4946]
897         * nscd/connections.c (handle_request): Using sendfile always
898         requires that mmap is used for the database.
899         Patch by Petr Baudis <pasky@suse.cz>.
900
901         [BZ #4905]
902         * nscd/hstcache.c (cache_addhst): When reloading an entry which
903         suddenly has two or more addresses, ignore it and remove the old
904         entry.
905
906         [BZ #4814]
907         * resolv/res_hconf.c: Prepare for compiling outside libc.
908         * nscd/res_hconf.c: New file.
909         * nscd/Makefile (nscd-modules): Add res_hconf.  Add rules to build
910         the new file.
911         * nscd/gethstbynm2_r.c (NEED__RES_HCONF): Define.
912         * nscd/gethstbyad_r.c (NEED__RES_HCONF): Likewise.
913
914         * nscd/hstcache.c (cache_addhst): Minimal optimization.
915
916         [BZ #4925]
917         * debug/pcprofiledump.c: Turn on internationalization by calling
918         setlocale.  Patch mostly by Benno Schulenberg.
919
920         [BZ #4936]
921         * iconv/gconv.c (__gconv): If flush was successful, clear rest of
922         the state.
923         * iconvdata/Makefile: Add rules to build and run bug-iconv5.
924         * iconvdata/bug-iconv5.c: New file.
925
926 2007-08-04  Carlos O'Donell  <carlos@systemhalted.org>
927
928         [BZ #4896]
929         * elf/elf.h: Define R_PARISC_PLABEL21L, R_PARISC_PLABEL14R,
930         R_PARISC_GNU_VTENTRY, R_PARISC_GNU_VTINHERIT, R_PARISC_TLS_GD21L,
931         R_PARISC_TLS_GD14R, R_PARISC_TLS_GDCALL, R_PARISC_TLS_LDM21L,
932         R_PARISC_TLS_LDM14R, R_PARISC_TLS_LDMCALL, R_PARISC_TLS_LDO21L,
933         R_PARISC_TLS_LDO14R, R_PARISC_TLS_DTPMOD32, R_PARISC_TLS_DTPMOD64,
934         R_PARISC_TLS_DTPOFF32, R_PARISC_TLS_DTPOFF64, R_PARISC_TLS_LE21L,
935         R_PARISC_TLS_LE14R, R_PARISC_TLS_IE21L, R_PARISC_TLS_IE14R,
936         R_PARISC_TLS_TPREL32, R_PARISC_TLS_TPREL64.
937
938 2007-08-21  Ulrich Drepper  <drepper@redhat.com>
939
940         [BZ #4937]
941         * elf/do-lookup.h (do_lookup_x): Minimal improvement in hash
942         lookup loop.  Suggested by John Reiser.
943
944 2007-08-21  Jakub Jelinek  <jakub@redhat.com>
945
946         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Include tls.h.
947
948 2007-08-20  Ulrich Drepper  <drepper@redhat.com>
949
950         * csu/libc-start.c: Don't handle VDSO_SETUP here.
951         * sysdeps/unix/sysv/linux/init-first.c: Handle it here instead.
952         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: Renamed to...
953         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...this.  New file.
954         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Move VDSO_SETUP code
955         to...
956         * sysdeps/unix/sysv/linux/x86_64/init-first.c: ...here.  New file.
957
958 2007-08-18  Ulrich Drepper  <drepper@redhat.com>
959
960         * po/nl.po: Update from translation team.
961
962 2007-08-16  Andreas Jaeger  <aj@suse.de>
963
964         * locale/localeinfo.h: Make _nl_category_name_idxs extern.
965         Reported by Peter Festner <peter.festner@ewetel.net>.
966
967 2007-08-17  Jakub Jelinek  <jakub@redhat.com>
968
969         * login/tst-grantpt.c (test_einval): Add 3rd argument to open.
970
971 2007-08-16  Jakub Jelinek  <jakub@redhat.com>
972
973         * elf/Makefile ($(objpfx)ld.so): Use readelf -s and awk instead of nm -u
974         to check for undefined symbols.
975
976         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone):
977         If the syscall fails, set errno to the actual returned error number
978         rather than EINVAL.
979         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone): If
980         arguments are incorrect, set errno to EINVAL, if the syscall
981         fails, set errno to the actual returned error number.
982
983         * stdlib/bits/stdlib-ldbl.h (__strtold_internal): Remove.
984         * wcsmbs/bits/wchar-ldbl.h (__wcstold_internal): Remove.
985
986         * sysdeps/sparc/sparc32/sparcv9b/memcpy.S: Moved to...
987         * sysdeps/sparc/sparc32/sparcv9/sparcv9b/memcpy.S: ... here.  New
988         file.
989         (ASI_PNF, ASI_BLK_P): Don't define.
990         * sysdeps/sparc/sparc32/sparcv9v/memcpy.S: Moved to...
991         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memcpy.S: ... here.  New
992         file.
993         * sysdeps/sparc/sparc32/sparcv9v/memset.S: Moved to...
994         * sysdeps/sparc/sparc32/sparcv9/sparcv9v/memset.S: ... here.  New
995         file.
996
997 2007-08-15  Jakub Jelinek  <jakub@redhat.com>
998
999         * sysdeps/sparc/fpu/fraiseexcpt.c (__feraiseexcept): Fix raising
1000         FE_UNDERFLOW on Niagara CPUs.
1001
1002         * sysdeps/sparc/fpu/feholdexcpt.c (feholdexcept): Clear all
1003         exceptions.
1004
1005 2007-08-14  Jakub Jelinek  <jakub@redhat.com>
1006
1007         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_runtime_setup): No
1008         need to check GLRO(dl_hwcap) & HWCAP_SPARC_FLUSH on sparcv9.
1009         (sparc_fixup_plt): Add do_flush argument instead of figuring whether
1010         flush should be used or not inside of the function.
1011         (elf_machine_fixup_plt, elf_machine_rela): Adjust caller.
1012
1013         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone,
1014         __thread_start): Use HIDDEN_JUMPTARGET.
1015         * sysdeps/unix/sysv/linux/sparc/sparc64/clone.S (__clone,
1016         __thread_start): Likewise.
1017         * sysdeps/unix/sysv/linux/sparc/sysdep.h (JUMPTARGET): Define.
1018
1019         * sysdeps/ieee754/ldbl-64-128/strtold_l.c (__STRTOF): Declare.
1020         Add libc_hidden_proto.
1021         (STRTOF): Add libc_hidden_proto.
1022         (___new_strtold_l, ___new_wcstold_l): New weak aliases.
1023         (strtold_l, wcstold_l): Use them as second argument for
1024         long_double_symbol.
1025
1026 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
1027
1028         * elf/dl-misc.c: Undo last change.  The kernel won't allow it.
1029
1030 2007-08-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1031
1032         * stdlib/strtold_l.c: Include wchar.h if needed.  Add libc_hidden_def.
1033
1034 2007-08-14  Ulrich Drepper  <drepper@redhat.com>
1035
1036         * po/bg.po: New file.  From the translation team.
1037
1038 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
1039
1040         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PSELECT,
1041         __ASSUME_PPOLL, __ASSUME_ATFCTS, __ASSUME_SET_ROBUST_LIST,
1042         __ASSUME_UTIMENSAT, __ASSUME_FALLOCATE): Update per-arch conditions
1043         when each feature was introduced.
1044
1045         * sysdeps/unix/sysv/linux/dl-vdso.c: Don't include dl-hash.h.
1046         * sysdeps/unix/sysv/linux/dl-vdso.h: Don't include dl-hash.h if NDEBUG.
1047         (CHECK_HASH): New macro.
1048         (PREPARE_VERSION): Use it.
1049
1050         * sysdeps/unix/sysv/linux/pselect.c (__generic_pselect): Only provide
1051         prototype if not __ASSUME_PSELECT.
1052         * sysdeps/unix/sysv/linux/ppoll.c (__generic_ppoll): Only provide
1053         prototype if not __ASSUME_PPOLL.
1054
1055         * sysdeps/unix/sysv/linux/dl-osinfo.h (ROUND): #undef after use.
1056
1057         * sysdeps/unix/clock_settime.c (freq, __pthread_clock_settime,
1058         hp_timing_settime): Don't define or declare if HANDLED_CPUTIME
1059         is defined.
1060
1061 2007-08-13  Ulrich Drepper  <drepper@redhat.com>
1062
1063         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
1064         (_libc_vdso_platform_setup): If vDSO is not available point
1065         __vdso_gettimeofday to the vsyscall.
1066         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S [SHARED]: Use
1067         __vdso_gettimeofday instead of vsyscall.
1068
1069 2007-08-13  Jakub Jelinek  <jakub@redhat.com>
1070
1071         * nscd/servicescache.c: Include kernel-features.h.
1072         * nscd/gai.c: Likewise.
1073         * sysdeps/unix/sysv/linux/statfs64.c: Likewise.
1074         * sysdeps/unix/sysv/linux/fstatfs64.c: Likewise.
1075         * sysdeps/unix/sysv/linux/fxstatat.c: Likewise.
1076         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S: Likewise.
1077         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S: Likewise.
1078         * sysdeps/unix/sysv/linux/xstatconv.c: Likewise.
1079         * sysdeps/unix/sysv/linux/if_index.c: Likewise.
1080         * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: Likewise.
1081         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
1082
1083 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
1084
1085         * elf/dl-dst.h: No need for _dl_dst_count, _dl_dst_substitute,
1086         and _dl_get_origin defines anymore.
1087
1088         * sysdeps/unix/sysv/linux/clock_gettime.c (maybe_syscall_gettime_cpu):
1089         Build fix for systems which might lack POSIX timer support.
1090
1091         * sysdeps/unix/sysv/linux/x86_64/libc-start.c
1092         (_libc_vdso_platform_setup): Mangle function pointers before storing
1093         them.
1094         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INLINE_VSYSCALL):
1095         Demangle vdso pointer before use.
1096         (INTERNAL_VSYSCALL): Likewise.
1097
1098         * elf/cache.c (primes): Mark as const.
1099         Noted by Roland McGrath.
1100
1101 2007-08-01  Andreas Jaeger  <aj@suse.de>
1102             Jakub Jelinek  <jakub@redhat.com>
1103
1104         * elf/ldconfig.c (opt_ignore_aux_cache): Add new option.
1105         (options): Add option.
1106         (parse_opt): Handle option.
1107         (manual_link): Adjust process_file caller.  Call implicit_soname.
1108         (search_dir): Formatting.  Use and populate auxiliary cache.
1109         (main): Load and save auxiliary cache.
1110         * elf/readlib.c (process_file): Add stat_buf argument.  Pass struct
1111         stat64 from fstat64 to caller.
1112         (implicit_soname): New function.
1113         * elf/readelflib.c (process_elf_file): If DT_SONAME is not present,
1114         leave *soname as NULL.
1115         * elf/cache.c: Include libgen.h.
1116         (print_entry, print_cache, compare, save_cache, add_to_cache):
1117         Formatting and cleanups.
1118         (aux_cache_entry_id, aux_cache_entry, aux_cache_file_entry,
1119         aux_cache_file): New structures.
1120         (AUX_CACHEMAGIC): Define.
1121         (primes): New array.
1122         (aux_hash_size, aux_hash): New variables.
1123         (aux_cache_entry_id_hash, nextprime, init_aux_cache,
1124         search_aux_cache, insert_to_aux_cache, add_to_aux_cache,
1125         load_aux_cache, save_aux_cache): New functions.
1126         * sysdeps/generic/ldconfig.h (_PATH_LDCONFIG_AUX_CACHE): Define.
1127         (init_aux_cache, search_aux_cache, add_to_aux_cache,
1128         load_aux_cache, save_aux_cache, implicit_soname): New prototypes.
1129         (process_file): Adjust prototype.
1130
1131 2007-08-12  Jakub Jelinek  <jakub@redhat.com>
1132
1133         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Include stddef.h
1134         with __need_size_t.
1135
1136 2007-08-12  Ulrich Drepper  <drepper@redhat.com>
1137
1138         * sysdeps/unix/sysv/linux/dl-vdso.c (_dl_vdso_vsym): Expect
1139         r_found_version structure as second parameter.
1140         * sysdeps/unix/sysv/linux/dl-vdso.h (PREPARE_VERSION): Define.
1141         (_dl_vdso_vsym): Change type of second parameter accordingly.
1142         * sysdeps/unix/sysv/linux/x86-64/libc-start.c
1143         (_libc_vdso_platform_setup): Adjust.
1144         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
1145         (_libc_vdso_platform_setup): Likewise.
1146
1147         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.c: Move to...
1148         * sysdeps/unix/sysv/linux/dl-vdso.c: ...here.
1149         * sysdeps/unix/sysv/linux/powerpc/dl-vdso.h: Move to...
1150         * sysdeps/unix/sysv/linux/dl-vdso.h: ...here.
1151         * csu/libc-start.c: Pretty printing.
1152         Use VDSO_SETUP if defined.
1153         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Define VDSO_SETUP
1154         and let generic code call into _libc_vdso_platform_setup.
1155         * sysdeps/unix/sysv/linux/x86_64/libc-start.c: New file.
1156         * sysdeps/unix/sysv/linux/x86_64/bits/libc-vdso.h: New file.
1157         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Pretty printing.
1158         Define INLINE_VSYSCALL and INTERNAL_VSYSCALL.
1159         * sysdeps/unix/sysv/linux/x86_64/Versions: Export __vdso_clock_gettime
1160         for GLIBC_PRIVATE.
1161         * sysdeps/unix/sysv/linux/x86_64/Makefile [subdir=elf]
1162         (sysdep_rountines): Add dl-vdso.
1163
1164         * sysdeps/unix/sysv/linux/powerpc/Makefile: Use sysdep_routines instead
1165         of routines.
1166
1167         * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h: Add
1168         attribute_hidden to __vdso_gettimeofday prototype.
1169
1170 2007-08-12  Roland McGrath  <roland@redhat.com>
1171
1172         * manual/stdio.texi (Variable Arguments Output): Fix xref to gcc manual.
1173         From: Karl Berry <karl@freefriends.org>.
1174
1175 2007-08-11  Ulrich Drepper  <drepper@redhat.com>
1176
1177         * elf/dl-misc.c (_dl_sysdep_read_whole_file): We really don't need
1178         an atime update for the files we read.
1179
1180 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
1181
1182         * shadow/lckpwdf.c (__lckpwdf): Use O_CLOEXEC if possible.
1183
1184         * nscd/connections.c: Use O_CLOEXEC if possible.  Use mkostemp
1185         instead of mkstemp.
1186
1187         * misc/Makefile (routines): Add mkostemp and mkostemp64.
1188         * misc/Versions: Export mkostemp and mkostemp64 for GLIBC_2.7.
1189         * misc/mkostemp.c: New file.
1190         * misc/mkostemp64.c: New file.
1191         * stdlib/stdlib.h: Declare the new functions.
1192         * sysdeps/posix/tempname.c: Add new parameter which is added to
1193         the flags for open.  Remove __GT_BIGFILE handling.
1194         * stdio-common/tempname.c: Likewise.
1195         * include/stdio.h: Adjust __gen_tempname prototype.
1196         Renumber __GT_* constants.
1197         * libio/oldtmpfile.c: Adjust for __gen_tempname interface change.
1198         * misc/mkdtemp.c: Likewise.
1199         * misc/mkstemp.c: Likewise.
1200         * misc/mkstemp64.c: Likewise.
1201         * misc/mktemp.c: Likewise.
1202         * stdio-common/tempnam.c: Likewise.
1203         * stdio-common/tmpfile.c: Likewise.
1204         * stdio-common/tmpfile64.c: Likewise.
1205         * stdio-common/tmpnam.c: Likewise.
1206         * stdio-common/tmpnam_r.c: Likewise.
1207
1208 2007-08-10  Roland McGrath  <roland@frob.com>
1209
1210         * sysdeps/mach/hurd/bits/ioctls.h (NLDLY, TABDLY, BSDLY, VTDLY):
1211         New macros.
1212         (NLDELAY, CRDELAY, TBDELAY, BSDELAY, VTDELAY): Define to those.
1213         Reported by Samuel Thibault <samuel.thibault@ens-lyon.org>.
1214
1215 2007-08-10  Ulrich Drepper  <drepper@redhat.com>
1216
1217         * nss/nss_files/files-XXX.c (internal_setent): Use O_CLOEXEC if
1218         possible.
1219         * nss/nss_files/files-alias.c (internal_setent): Likewise.
1220         * nss/Makefile (libnss_files-routines): Add files-have_o_cloexec.
1221         * nss/nss_files/files-have_o_cloexec.c: New file.
1222
1223         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Use O_CLOEXEC if
1224         available.
1225
1226 2007-08-10  Jakub Jelinek  <jakub@redhat.com>
1227
1228         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c (___new_strtold_l,
1229         ___new_wcstold_l): New weak aliases.
1230         (strtold_l, wcstold_l): Use them as second argument for
1231         long_double_symbol.
1232
1233 2007-08-09  Ulrich Drepper  <drepper@redhat.com>
1234
1235         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: Use correct
1236         register in test for error.
1237
1238         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_CLOEXEC): Define.
1239         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_CLOEXEC): Likewise.
1240
1241         * po/sv.po: Update from translation team.
1242
1243 2007-08-06  Roland McGrath  <roland@redhat.com>
1244
1245         * include/stdlib.h: Add libc_hidden_proto for strto*, __strto*_l.
1246         Remove __strto*_l inlines.
1247         * include/wchar.h: Add libc_hidden_proto for wcsto*, __wcsto*_l.
1248         * stdlib/strtod.c: Add libc_hidden_def.
1249         * stdlib/strtod_l.c: Likewise.
1250         * stdlib/strtold.c [__LONG_DOUBLE_MATH_OPTIONAL]: Add libc_hidden_proto
1251         for __new_strtold and __new_wcstold.
1252         * sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Add libc_hidden_proto for
1253         __STRTOF, STRTOF.
1254         * stdlib/strtol.c: Add libc_hidden_def.
1255         * stdlib/strtol_l.c: Likewise.
1256         * sysdeps/wordsize-64/strtol.c: Add libc_hidden_ver for strtoll and
1257         strtoq.
1258
1259         * scripts/data/localplt-powerpc-linux-gnu.data: New file.
1260
1261         * scripts/data/localplt-x86_64-linux-gnu.data: File renamed to ...
1262         * scripts/data/localplt-generic.data: ... here.
1263         * elf/Makefile (check-data): Get generic file if no other.
1264         ($(objpfx)check-localplt.out): Make target unconditional.
1265
1266         * sysdeps/unix/sysv/linux/dl-osinfo.h (_dl_discover_osversion):
1267         Use ElfW(Nhdr).
1268
1269 2007-08-05  Ulrich Drepper  <drepper@redhat.com>
1270
1271         * po/zh_CN.po: Updated translation from translation team.
1272
1273 2007-08-05  Jakub Jelinek  <jakub@redhat.com>
1274
1275         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket):
1276         Don't use CGOTSETUP and CGOTRESTORE macros.
1277
1278 2007-08-04  Roland McGrath  <roland@redhat.com>
1279
1280         * posix/Makefile ($(objpfx)getconf.speclist): Fix typo.
1281
1282 2007-08-04  Jakub Jelinek  <jakub@redhat.com>
1283
1284         * io/bits/fcntl2.h (open, open64, openat, openat64): Add
1285         __extension__ around the whole statement expression.
1286
1287 2007-08-04  Ulrich Drepper  <drepper@redhat.com>
1288
1289         * sysdeps/unix/opendir.c (__alloc_dir): Correct order of DIR
1290         elements during initialization.
1291
1292         * po/pl.po: Updated translation from translation team.
1293         * po/tr.po: Likewise.
1294         * po/nl.po: Likewise.
1295
1296 2007-08-03  Ulrich Drepper  <drepper@redhat.com>
1297
1298         * rt/aio.h: Add __nonnull attributes.
1299
1300 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
1301
1302         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Properly handle -0.
1303         * stdlib/Makefile (tests): Add tst-strtod5.
1304         (tst-strtod5-ENV): New.
1305         * stdlib/tst-strtod5.c: New file.
1306
1307         * intl/dcigettext.c (_nl_find_msg): Free encoding if __gconv_open
1308         failed.
1309         * intl/finddomain.c (_nl_find_domain): Free normalized_codeset
1310         on failure.
1311
1312         * elf/dl-load.c (decompose_rpath): Free copy if result couldn't be
1313         allocated.
1314
1315 2007-08-03  Jakub Jelinek  <jakub@redhat.com>
1316
1317         * rt/mqueue.h (mq_timedreceive, mq_timedsend): Fix nonnull argument
1318         numbers.
1319
1320 2007-08-02  Ulrich Drepper  <drepper@redhat.com>
1321
1322         * io/Makefile (aux): Add have_o_cloexec.
1323         * include/fcntl.h: Declare __have_o_cloexec.
1324         * io/have_o_cloexec.c: New file.
1325         * sysdeps/unix/opendir.c (__opendir): Use O_CLOEXEC is available.
1326         (__alloc_dir): If O_CLOEXEC has been used, don't duplicate the
1327         fcntl call if not necessary.
1328         * login/utmp_file.c (setutent_file): Use __have_o_cloexec instead
1329         of local variable.
1330
1331         * sysdeps/unix/opendir.c (__alloc_dir): Don't initialize ->data.
1332         Avoid memset, add explicit initialization.
1333         * sysdeps/unix/dirstream.h (struct __dirstream): Move data elemtn
1334         to the end and change into zero-sized array.
1335         Move lock member to fill a hole on 64-bit platforms.
1336
1337         * stdlib/stdlib.h: Remove __strto*_internal prototypes and strto*
1338         inline functions.
1339         * include/stdlib.h: Add __strto*_internal prototypes here.
1340         * wcsmbs/wchar.h: Remove __wcsto*_internal prototypes and wcsto*
1341         inline functions.
1342         * include/wchar.h: Add __wcsto*_internal prototypes.
1343         * sysdeps/generic/inttypes.h: No need to protect the declaration
1344         of the __strto*_internal and __wcsto*_internal members here.
1345
1346         * rt/mqueue.h: Change const to __const and add nonnull attributes.
1347
1348 2007-08-02  Roland McGrath  <roland@redhat.com>
1349
1350         * posix/Makefile ($(inst_libexecdir)/getconf): Make hard links to
1351         $(inst_bindir)/getconf if possible.
1352
1353         * posix/Makefile ($(objpfx)getconf.speclist): New target.
1354         (generated): Add it.
1355         ($(inst_libexecdir)/getconf): Use it.
1356
1357 2007-08-01  Ulrich Drepper  <drepper@redhat.com>
1358
1359         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Using
1360         /proc is faster and sufficient.  /sys is still needed for
1361         __get_nprocs_conf.
1362
1363 2007-08-01  Jakub Jelinek  <jakub@redhat.com>
1364
1365         * sysdeps/unix/sysv/linux/i386/syscalls.list (fallocate): Add fallocate
1366         syscall as __fallocate64.
1367         * sysdeps/unix/sysv/linux/i386/posix_fallocate.c: New file.
1368         * sysdeps/unix/sysv/linux/i386/posix_fallocate64.c: New file.
1369
1370 2007-07-30  Jakub Jelinek  <jakub@redhat.com>
1371
1372         * stdlib/tst-strtod2.c (do_test): Use %tu in fmt string for ptrdiff_t
1373         value.
1374
1375         * stdio-common/tst-fmemopen2.c (do_test): Avoid fmt string warning
1376         if off_t is different rank from size_t.
1377
1378         * sysdeps/generic/unwind-dw2.c (extract_cie_info, execute_cfa_program,
1379         uw_frame_state_for): Avoid type punning warnings.
1380         * sysdeps/generic/unwind-dw2-fde-glibc.c
1381         (_Unwind_IteratePhdrCallback): Likewise.
1382         * sysdeps/generic/unwind-dw2-fde.c (_Unwind_Find_FDE): Likewise.
1383         (binary_search_single_encoding_fdes, binary_search_mixed_encoding_fdes,
1384         get_cie_encoding, linear_search_fdes): Don't mix char and unsigned char
1385         pointers.
1386
1387 2007-07-31  Ulrich Drepper  <drepper@redhat.com>
1388
1389         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs_conf): Count
1390         total processors using sysfs.
1391         (__get_nprocs): Use sysfs to determine which processors are online.
1392
1393 2007-07-31  Jakub Jelinek  <jakub@redhat.com>
1394
1395         * sysdeps/unix/sysv/linux/posix_fallocate.c (posix_fallocate): Fix
1396         syscall arguments count.
1397
1398         * stdio-common/tfformat.c (sprint_doubles): Add 12 new tests.
1399
1400 2007-07-30  Roland McGrath  <roland@redhat.com>
1401
1402         * manual/libc.texinfo: Update copyrights, formatting magic, and
1403         @dircategory.  From Karl Berry <karl@freefriends.org>.
1404
1405 2007-07-29  Ulrich Drepper  <drepper@redhat.com>
1406
1407         [BZ #4860]
1408         * io/Makefile (headers): Add bits/fcntl2.h.
1409
1410         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO_S): Optimize
1411         using gcc builtin.
1412         (__CPU_EQUAL_S): Likewise.
1413
1414         * posix/Makefile (routines): Add sched_cpualloc and sched_cpufree.
1415         (tests): Add tst-cpuset.
1416         * posix/sched_cpualloc.c: New file.
1417         * posix/sched_cpufree.c: New file.
1418         * posix/tst-cpuset.c: New file.
1419         * posix/Versions: Export __sched_cpualloc and __sched_cpufree for
1420         GLIBC_2.7.
1421         * sysdeps/unix/sysv/linux/bits/sched.h: Define __CPU_*_S macros.
1422         * posix/sched.h: Define old CPU_* macros in temers of __CPU_*_S
1423         macros.  Define CPU_*_S macros.
1424
1425 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
1426
1427         * posix/getconf.c (vars): Add missing _SC_LEVEL4_CACHE_LINESIZE
1428         entry.
1429
1430         [BZ #4858]
1431         * stdio-common/printf_fp.c (___printf_fp): Fix special case of
1432         #.0g and value rounded to 1.0.
1433         * stdio-common/tfformat.c (sprint_doubles): Add two new tests.
1434
1435 2007-07-26  Jakub Jelinek  <jakub@redhat.com>
1436
1437         * locale/programs/ld-monetary.c (monetary_finish): Avoid range check
1438         for int_frac_digits and frac_digits.
1439
1440         * login/logout.c (logout): Avoid aliasing violation.
1441         * login/logwtmp.c (logwtmp): Likewise.
1442
1443         * libio/genops.c (_IO_un_link): Avoid aliasing violation.
1444
1445         * nscd/selinux.c (preserve_capabilities): Initialize new_caps
1446         to avoid warning.
1447         * iconv/gconv_open.c (__gconv_open): Initialize ptr to avoid
1448         warning.
1449         * nis/nis_subr.c (nis_getnames): Initialize saveptr to avoid
1450         warning.
1451         * resolv/inet_ntop.c (inet_ntop6): Initialize best.len and cur.len
1452         to avoid warnings.
1453
1454         * nss/nsswitch.c (__nss_lookup_function): Don't cast &ni->known to
1455         void **.
1456         * nss/nsswitch.h (service_user): Use void * type for KNOWN field.
1457
1458         * nss/nss_files/files-hosts.c (LINE_PARSER): Cast host_addr to
1459         char * to avoid warning.
1460         * nis/nss_nis/nis-hosts.c (LINE_PARSER): Likewise.
1461
1462         * timezone/Makefile (CFLAGS-zdump.c): Add -fwrapv.
1463
1464         * locale/programs/ld-ctype.c (ctype_finish, set_class_defaults,
1465         allocate_arrays): Cast second argument to charmap_find_symbol
1466         to char * to avoid warnings.
1467
1468         * locale/programs/repertoire.c (repertoire_new_char): Change
1469         from_nr, to_nr and cnt to unsigned long, adjust printf format
1470         string.
1471
1472         * locale/programs/ld-collate.c (insert_value, handle_ellipsis):
1473         Cast second argument to new_element to char * to avoid warnings.
1474
1475         * locale/weightwc.h (findidx): Cast &extra[-i] to const int32_t *.
1476
1477         * intl/gettextP.h (struct loaded_domain): Change plural to const
1478         struct expression *.
1479         * intl/plural-eval.c (plural_eval): Change first argument to
1480         const struct expression *.
1481         * intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Change first
1482         argument to const struct expression **.
1483         * intl/plural-exp.h (EXTRACT_PLURAL_EXPRESSION, plural_eval): Adjust
1484         prototypes.
1485         * intl/loadmsgcat (_nl_unload_domain): Cast away const
1486         in call to __gettext_free_exp.
1487
1488         * posix/fnmatch.c (fnmatch): Rearrange code to avoid maybe
1489         unitialized wstring/wpattern var warnings.
1490
1491         * posix/runtests.c (struct a_test): Make data field const char *.
1492
1493         * stdio-common/tst-sprintf2.c (main): Don't declere u, v and buf
1494         vars if not LDBL_MANT_DIG >= 106.
1495
1496         * stdio-common/Makefile (CFLAGS-vfwprintf.c): Add -Wno-unitialized.
1497
1498         * stdio-common/vfprintf.c (vfprintf): Cast first arugment to
1499         __find_specmb to avoid warning.
1500
1501         * rt/tst-mqueue1.c (do_one_test): Add casts to avoid warnings.
1502
1503         * debug/test-strcpy_chk.c (do_tests, do_random_tests): Add casts
1504         to avoid warnings.
1505
1506         * sysdeps/ieee754/ldbl-96/s_roundl.c (huge): Add L suffix to
1507         initializer.
1508
1509         * sysdeps/unix/clock_gettime.c (clock_gettime): Only define
1510         tv var when it will be actually used.
1511
1512         * sunrpc/rpc_cmsg.c (xdr_callmsg): Cast IXDR_PUT_* to void
1513         to avoid warnings.
1514
1515         * iconvdata/gbk.c (BODY): Make buf and cp char instead of unsigned
1516         char array resp. pointer.
1517         * iconvdata/iso-2022-kr.c (BODY): Make buf unsigned char instead of
1518         char array.
1519         * iconvdata/cns11643.h (cns11643_to_ucs4): Change first argument
1520         to const unsigned char **.
1521         (ucs4_to_cns11643): Change second argument to unsigned char *.
1522         * iconvdata/euc-tw.c (BODY): Change endp type to
1523         const unsigned char *.
1524         * iconvdata/iso-ir-165.h (ucs4_to_isoir165): Change second argument
1525         to unsigned char *.
1526         * iconvdata/ibm1008_420.c (LOOP_NEED_FLAGS): Don't define.
1527         * iconvdata/iso-2022-cn.c (BODY): Change buf to unsigned char array.
1528         * iconvdata/iso-2022-cn-ext.c (BODY): Change buf, tmpbuf, tmp
1529         types to unsigned char pointers/arrays instead of char.
1530         * iconvdata/jis0201.h (ucs4_to_jisx0201): Change second argument
1531         to unsigned char *.
1532         * iconvdata/jis0208.h (ucs4_to_jisx0208): Likewise.
1533         * iconvdata/jis0212.h: Include assert.h.
1534         (ucs4_to_jisx0212): Change second argument to unsigned char *.
1535         assert that if cp[0] is not '\0', cp[1] is not '\0' either instead
1536         of trying to handle that.
1537         * iconvdata/euc-kr.c (euckr_from_ucs4): Initialize also cp[1] to
1538         shut up a warning.
1539         * iconvdata/euc-jp-ms.c (from_ucs4_lat1, from_ucs4_greek,
1540         from_ucs4_cjk, from_ucs4_cjkcpt, from_ucs4_extra): Change type to
1541         two dimensional const unsigned char arrays.
1542         (BODY): Cast "" to (const unsigned char *) for assignment to cp.
1543         Initialize endp to inptr to shut up a warning.
1544
1545 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
1546
1547         [BZ #4772]
1548         * time/strptime_l.c (__strptime_internal): Silently ignore
1549         strftime modifiers and field width in recursive calls.
1550
1551         * include/time.h (enum ptime_locale_status): Remove.
1552         (__strptime_internal): Remove decided and era_cnt arguments,
1553         add statep argument.
1554         * time/strptime_l.c (__strptime_internal): Remove decided
1555         and era_cnt arguments, add statep argument.  Don't recompute
1556         any fields in recursive calls, only update caller's tm
1557         and state, if recursive call fails, don't change tm nor
1558         any state.
1559         (get_alt_number): Adjust.
1560         (recursive): Adjust caller.
1561         (strptime): Likewise.
1562         * time/strptime.c (strptime): Likewise.
1563
1564 2007-07-19  Jakub Jelinek  <jakub@redhat.com>
1565
1566         * iconv/gconv_int.h (__GCONV_NULCONV): New internal only error code.
1567         * iconv/gconv_cache.c (__gconv_lookup_cache): Return __GCONV_NULCONV
1568         if from and to charsets are the same.
1569         * iconv/gconv_db.c (__gconv_find_transform): Likewise.
1570         * intl/dcigettext.c (_nl_find_msg): Return NULL even if __gconv_open
1571         returns __GCONV_NOCONV, but not for __GCONV_NULCONV.
1572
1573 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
1574
1575         * wcsmbs/wchar.h: Only define wint_t if __need_wint_t.
1576         Don't define wint_t when __need_mbstate_t unless it
1577         is necessary.
1578         (__mbstate_t): Use __WINT_TYPE__ rather than wint_t
1579         in the typedef if possible.
1580         * wctype/wctype.h (wint_t): Define by including
1581         wchar.h with __need_wint_t instead of including stddef.h
1582         with __need_wint_t and as fallback definining it ourselves.
1583         * iconv/gconv.h (__need_wint_t): Define before including
1584         wchar.h.
1585         * sysdeps/gnu/_G_config.h: Don't include gconv.h if not _LIBC
1586         or _GLIBCPP_USE_WCHAR_T.
1587         (__need_wchar_t): Don't define
1588         if not _LIBC or _GLIBCPP_USE_WCHAR_T.
1589         (__need_wint_t): Don't define before including stddef.h,
1590         define before including wchar.h only if _LIBC or
1591         _GLIBCPP_USE_WCHAR_T.
1592         (_G_iconv_t): Don't define if not _LIBC or _GLIBCPP_USE_WCHAR_T.
1593         * sysdeps/mach/hurd/_G_config.h: Likewise.
1594         * sysdeps/generic/_G_config.h: Likewise.
1595         * libio/libio.h (__wunderflow, __wuflow, __woverflow): Only
1596         prototype if _LIBC or _GLIBCPP_USE_WCHAR_T.
1597         (_IO_getwc_unlocked, _IO_putwc_unlocked): Only define
1598         if _LIBC or _GLIBCPP_USE_WCHAR_T.
1599
1600 2007-07-28  Ulrich Drepper  <drepper@redhat.com>
1601
1602         * sysdeps/posix/posix_fallocate64.c: Undefine
1603         __posix_fallocate64_l64 before alias handling.
1604         * sysdeps/unix/sysv/linux/posix_fallocate.c: New file.
1605         * sysdeps/unix/sysv/linux/posix_fallocate64.c: New file.
1606         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate.c: New file.
1607         * sysdeps/unix/sysv/linux/wordsize-64/posix_fallocate64.c: New file.
1608
1609         * io/tst-posix_fallocate.c: Include <fcntl.h>.
1610
1611 2007-07-23  Jakub Jelinek  <jakub@redhat.com>
1612
1613         * locale/programs/ld-collate.c (atwc): New variable.
1614         (add_to_tablewc): New toplevel function, moved from collate_output.
1615         (collate_output): Remove add_to_tablewc nested function.
1616
1617         * iconv/iconvconfig.c (hash_table, hash_size): New toplevel vars.
1618         (name_insert): New function.
1619         (write_output): Remove hash_table and hash_size vars and name_insert
1620         nested function.
1621
1622 2007-07-24  Roland McGrath  <roland@redhat.com>
1623
1624         * Makerules (install-others-programs-nosubdir): New target.
1625         (install-no-libc.a-nosubdir): Depend on it.
1626
1627         * iconv/Makefile (install-others-programs): Set this instead of
1628         install-others.
1629         * login/Makefile (install-others-programs): Likewise.
1630         * posix/Makefile (install-others-programs): Likewise.
1631
1632         * Makerules (install-no-libc.a-nosubdir): Clean up conditional
1633         dependencies.
1634
1635 2007-07-23  Ulrich Drepper  <drepper@redhat.com>
1636
1637         * io/Makefile (tests): Add tst-posix_fallocate.
1638         * io/tst-posix_fallocate.c: New file.
1639
1640         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1641         __ASSUME_FALLOCATE.
1642
1643 2007-07-22  Roland McGrath  <roland@frob.com>
1644
1645         * hurd/getdport.c: Add missing copyright year update.
1646
1647         * sysdeps/mach/hurd/bits/fcntl.h [__USE_GNU] (O_CLOEXEC): New macro.
1648         * hurd/port2fd.c (_hurd_port2fd): Implement O_CLOEXEC.
1649
1650 2007-07-22  Ulrich Drepper  <drepper@redhat.com>
1651
1652         * login/utmp_file.c (setutent_file): Use O_CLOEXEC if possible.
1653
1654         * libio/fileops.c (_IO_new_file_fopen): Recognize 'e' flag and set
1655         O_CLOEXEC is needed.
1656         * nis/nss_compat/compat-grp.c: Use 'e' flag when opening file.
1657         Avoid additional fcntl to set O_CLOEXEC if not needed.
1658         * nis/nss_compat/compat-initgroups.c: Likewise.
1659         * nis/nss_compat/compat-pwd.c: Likewise.
1660         * nis/nss_compat/compat-spwd.c: Likewise.
1661
1662 2007-07-21  Samuel Thibault  <samuel.thibault@ens-lyon.org>
1663
1664         [BZ #3665]
1665         * manual/errno.texi: Change ECANCELED value to 119.
1666
1667         [BZ #4610]
1668         * mach/lock-intern.h: Include <sys/cdefs.h>.
1669
1670         [BZ #4178]
1671         * sysdeps/mach/hurd/sigaction.c (__sigaction): Check ACT != NULL before
1672         reading A.
1673
1674         [BZ #4126]
1675         * sysdeps/mach/hurd/sigsuspend.c (sigsuspend_not_cancel): Define alias
1676         to __sigsuspend.
1677
1678         * sysdeps/mach/i386/sysdep.h: Include <dl-sysdep.h> and <tls.h>.
1679
1680 2006-06-13  Thomas Schwinge  <tschwinge@gnu.org>
1681
1682         * sysdeps/mach/hurd/tls.h: Change `ASSEMBLER' conditional to
1683         `__ASSEMBLER__'.
1684         * sysdeps/mach/hurd/i386/tls.h: Likewise.
1685
1686 2007-07-21  Ulrich Drepper  <drepper@redhat.com>
1687
1688         * nscd/nscd_helper.c (get_mapping): Use MSG_CMSG_CLOEXEC for
1689         descriptor received from nscd.
1690
1691         * sysdeps/unix/sysv/linux/bits/socket.h: Define MSG_CMSG_CLOEXEC.
1692
1693         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Define O_CLOEXEC.
1694         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1695         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1696         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1697         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1698         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1699
1700 2007-07-20  Jakub Jelinek  <jakub@redhat.com>
1701
1702         [BZ #4816]
1703         * manual/signal.texi (Non-atomic Example): Make memory var volatile.
1704
1705         [BZ #4813]
1706         * login/forkpty.c (forkpty): Close master and slave fds on
1707         fork failure.  Patch by
1708         Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>.
1709
1710 2007-07-18  Jakub Jelinek  <jakub@redhat.com>
1711
1712         * include/features.h (__USE_ISOC95): New define.
1713         * wcsmbs/wchar.h (fwprintf, fwscanf, wprintf, wscanf, swprintf,
1714         swscanf, vfwprintf, vwprintf, vswprintf, fwide): Define even
1715         for -std=iso9899:199409.
1716         * CONFORMANCE: Remove comments about unsupported AMD1.
1717
1718 2007-07-17  Jakub Jelinek  <jakub@redhat.com>
1719
1720         * sysdeps/ia64/sched_cpucount.c: New file.
1721         * sysdeps/powerpc/sched_cpucount.c: New file.
1722
1723         * sysdeps/unix/sysv/linux/bits/sched.h (__sched_cpucount): Add
1724         __BEGIN_DECLS/__END_DECLS around the prototype.
1725         * bits/sched.h (__sched_cpucount): Likewise.  Make second argument
1726         pointer to const cpu_set_t.
1727
1728         * bits/types.h: Don't include stddef.h, don't define __need_size_t.
1729         * signal/signal.h <__USE_BSD || __USE_XOPEN_EXTENDED>: Define
1730         __need_size_t and include stddef.h.
1731         * sysvipc/sys/msg.h: Likewise.
1732         * posix/sched.h: Likewise.
1733         * hurd/hurd/signal.h (__need_size_t): Define.
1734
1735         * CONFORMANCE: ctype.h and wctype.h no longer define size_t,
1736         neither does signal.h in pedantic ISO C namespaces.  stdio.h
1737         no longer defines wint_t or wchar_t.
1738
1739         * libio/libioP.h (_IO_acquire_lock_clear_flags2_fct): New function.
1740         * debug/vfwprintf_chk.c (__vfwprintf_chk): Use
1741         _IO_acquire_lock_clear_flags2 instead of _IO_acquire_lock.
1742         * debug/vprintf_chk.c (__vprintf_chk): Likewise.
1743         * debug/vwprintf_chk.c (__vwprintf_chk): Likewise.
1744         * debug/vfprintf_chk.c (__vfprintf_chk): Likewise.
1745         * debug/fwprintf_chk.c (__fwprintf_chk): Likewise.
1746         * debug/printf_chk.c (__printf_chk): Likewise.
1747         * debug/fprintf_chk.c (__fprintf_chk): Likewise.
1748         * debug/wprintf_chk.c (__wprintf_chk): Likewise.
1749
1750         * sysdeps/pthread/bits/stdio-lock.h (_IO_acquire_lock_clear_flags2):
1751         Define.
1752
1753         * bits/confname.h (_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS): Define.
1754         * posix/getconf.c (vars): Add POSIX_V6_WIDTH_RESTRICTED_ENVS.
1755
1756 2007-07-16  Jakub Jelinek  <jakub@redhat.com>
1757
1758         [BZ #4792]
1759         * stdlib/stdlib.h (realloc): Remove __attribute_malloc__.
1760         * malloc/malloc.h (realloc): Likewise.
1761
1762         * libio/iopopen.c (_IO_new_proc_open): Don't close child_std_end
1763         if one of proc_file_chain streams has that fileno.
1764         * stdio-common/Makefile (tests): Add tst-popen2.
1765         * stdio-common/tst-popen2.c: New test.
1766
1767 2007-07-14  Jakub Jelinek  <jakub@redhat.com>
1768
1769         * elf/ldconfig.c: Allow GPLv2 or any later version.
1770         * elf/readlib.c: Likewise.
1771         * elf/chroot_canon.c: Likewise.
1772         * elf/cache.c: Likewise.
1773         * nscd/mem.c: Likewise.
1774         * nscd/getpwuid_r.c: Likewise.
1775         * nscd/grpcache.c: Likewise.
1776         * nscd/aicache.c: Likewise.
1777         * nscd/getsrvbynm_r.c: Likewise.
1778         * nscd/nscd.c: Likewise.
1779         * nscd/servicescache.c: Likewise.
1780         * nscd/getsrvbypt_r.c: Likewise.
1781         * nscd/initgrcache.c: Likewise.
1782         * nscd/gethstbyad_r.c: Likewise.
1783         * nscd/gethstbynm2_r.c: Likewise.
1784         * nscd/getgrnam_r.c: Likewise.
1785         * nscd/nscd_setup_thread.c: Likewise.
1786         * nscd/getpwnam_r.c: Likewise.
1787         * nscd/gai.c: Likewise.
1788         * nscd/connections.c: Likewise.
1789         * nscd/dbg_log.c: Likewise.
1790         * nscd/cache.c: Likewise.
1791         * nscd/hstcache.c: Likewise.
1792         * nscd/nscd_conf.c: Likewise.
1793         * nscd/getgrgid_r.c: Likewise.
1794         * nscd/pwdcache.c: Likewise.
1795         * catgets/gencat.c: Likewise.
1796         * locale/programs/linereader.h: Likewise.
1797         * locale/programs/locarchive.c: Likewise.
1798         * locale/programs/ld-paper.c: Likewise.
1799         * locale/programs/locfile-kw.h: Likewise.
1800         * locale/programs/ld-address.c: Likewise.
1801         * locale/programs/xmalloc.c: Likewise.
1802         * locale/programs/ld-time.c: Likewise.
1803         * locale/programs/localedef.c: Likewise.
1804         * locale/programs/simple-hash.c: Likewise.
1805         * locale/programs/xstrdup.c: Likewise.
1806         * locale/programs/ld-numeric.c: Likewise.
1807         * locale/programs/locfile-kw.gperf: Likewise.
1808         * locale/programs/ld-collate.c: Likewise.
1809         * locale/programs/charmap-kw.gperf: Likewise.
1810         * locale/programs/charmap.h: Likewise.
1811         * locale/programs/charmap-kw.h: Likewise.
1812         * locale/programs/config.h: Likewise.
1813         * locale/programs/locfile.c: Likewise.
1814         * locale/programs/ld-ctype.c: Likewise.
1815         * locale/programs/charmap.c: Likewise.
1816         * locale/programs/ld-messages.c: Likewise.
1817         * locale/programs/repertoire.h: Likewise.
1818         * locale/programs/locale.c: Likewise.
1819         * locale/programs/ld-name.c: Likewise.
1820         * locale/programs/linereader.c: Likewise.
1821         * locale/programs/locfile.h: Likewise.
1822         * locale/programs/3level.h: Likewise.
1823         * locale/programs/ld-monetary.c: Likewise.
1824         * locale/programs/ld-measurement.c: Likewise.
1825         * locale/programs/charmap-dir.c: Likewise.
1826         * locale/programs/ld-identification.c: Likewise.
1827         * locale/programs/localedef.h: Likewise.
1828         * locale/programs/charmap-dir.h: Likewise.
1829         * locale/programs/repertoire.c: Likewise.
1830         * locale/programs/simple-hash.h: Likewise.
1831         * locale/programs/ld-telephone.c: Likewise.
1832         * locale/programs/locale-spec.c: Likewise.
1833         * locale/programs/locfile-token.h: Likewise.
1834         * posix/getconf.c: Likewise.
1835         * iconv/dummy-repertoire.c: Likewise.
1836         * iconv/iconv_charmap.c: Likewise.
1837         * iconv/iconvconfig.c: Likewise.
1838         * iconv/iconv_prog.c: Likewise.
1839         * malloc/memusagestat.c: Likewise.
1840         * sysdeps/unix/sysv/linux/nscd_setup_thread.c: Likewise.
1841
1842 2007-07-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1843
1844         * sysdeps/sh/bsd-setjmp.S (setjmp): Use correct argument registers.
1845         * sysdeps/sh/bsd-_setjmp.S (_setjmp): Likewise.
1846         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Do correct sanity
1847         check for the first argument.
1848
1849 2007-07-12  Jakub Jelinek  <jakub@redhat.com>
1850
1851         [BZ #4775]
1852         * math/tgmath.h (__tgmath_real_type_sub): Formatting.
1853         (__tgmath_real_type): Fix if expr is const int or other const
1854         qualified integral type.
1855         (__TGMATH_UNARY_REAL_ONLY): Rewritten to avoid using statement
1856         expressions and handle const qualified arguments.
1857         (__TGMATH_BINARY_FIRST_REAL_ONLY, __TGMATH_UNARY_REAL_IMAG,
1858         __TGMATH_UNARY_REAL_IMAG_RET_REAL): Likewise.
1859         (__TGMATH_UNARY_REAL_RET_ONLY): Rewritten to avoid using
1860         statement expressions.
1861         (__TGMATH_BINARY_REAL_ONLY, __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY,
1862         __TGMATH_TERNARY_REAL_ONLY, __TGMATH_BINARY_REAL_IMAG): Likewise.
1863         (__TGMATH_UNARY_IMAG): Define.
1864         (conj, cproj): Use __TGMATH_UNARY_IMAG macro.
1865         * math/Makefile (tests): Add test-tgmath2.
1866         (CFLAGS-test-tgmath2.c): Add.
1867         * math/test-tgmath.c (fy, dy, ly, fz, dz, lz, count_cdouble,
1868         count_cfloat, count_cldouble): New variables.
1869         (NCCALLS): Define.
1870         (main): Check number of complex calls as well.
1871         (F(compile_test)): Add complex tests and tests with const qualified
1872         arguments.
1873         (y, z, ccount): Define.
1874         (F(cacos), F(casin), F(catan), F(ccos), F(csin), F(ctan), F(cacosh),
1875         F(casinh), F(catanh), F(ccosh), F(csinh), F(ctanh), F(cexp), F(clog),
1876         F(csqrt), F(cpow), F(cabs), F(carg), F(creal), F(cimag), F(conj),
1877         F(cproj)): New functions.
1878         * math/test-tgmath2.c: New test.
1879
1880 2007-07-11  Jakub Jelinek  <jakub@redhat.com>
1881
1882         [BZ #4776]
1883         * elf/dl-load.c (_dl_rtld_di_serinfo): Output / in LD_LIBRARY_PATH,
1884         RPATH etc. as "/" rather than "", don't segfault on empty paths,
1885         instead output ".".
1886         * dlfcn/Makefile (distribute): Add glreflib3.c.
1887         (module-names): Add glreflib3.
1888         ($(objpfx)tst-dlinfo.out): Depend on glreflib3.so rather than
1889         glreflib1.so.
1890         (LDFLAGS_glreflib3.so): New.
1891         * dlfcn/tst-dlinfo.c (do_test): Load glreflib3.so instead of
1892         glreflib1.so.
1893         * dlfcn/glreflib3.c: New file.
1894
1895         * intl/finddomain.c (_nl_find_domain): If _nl_explode_name
1896         returned -1, return NULL.
1897         * intl/explodename.c (_nl_explode_name): Return -1 if
1898         _nl_normalize_codeset failed.
1899
1900 2007-07-07  Steven Munroe  <sjmunroe@us.ibm.com>
1901
1902         * sysdeps/powerpc/powerpc32/power6/memset.S: Update comments.
1903         Specify .machine power6 to get ISA-V2.0 branch hints.  Unroll loops
1904         and avoid branch misspredicts for > 31 bytes memset case.
1905         * sysdeps/powerpc/powerpc64/power6/memset.S: Likewise.
1906         Remove toc ref to __cache_line_size.
1907
1908         * sysdeps/powerpc/powerpc32/power4/memcmp.S: Specify .machine power4
1909         to get ISA-V2.0 branch hints.
1910         * sysdeps/powerpc/powerpc32/power4/memcpy.S: Likewise
1911         * sysdeps/powerpc/powerpc32/power4/memset.S: Likewise
1912         * sysdeps/powerpc/powerpc32/power6/memcpy.S: Likewise.
1913         * sysdeps/powerpc/powerpc64/power4/memcmp.S: Likewise.
1914         * sysdeps/powerpc/powerpc64/power4/memcpy.S: Likewise.
1915         * sysdeps/powerpc/powerpc64/power4/memset.S: Likewise.
1916         Remove toc ref to __cache_line_size.
1917
1918         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S:
1919         Include math_ldbl_opt.h.
1920
1921 2007-07-10  Ulrich Drepper  <drepper@redhat.com>
1922
1923         [BZ #4773]
1924         * time/strptime_l.c (__strptime_internal): Implement greedy
1925         matching of weekday and month names.
1926
1927 2007-07-09  Roland McGrath  <roland@redhat.com>
1928
1929         * elf/elf.h (NT_GNU_ABI_TAG): New macro.
1930         (ELF_NOTE_ABI): Use it.
1931         (NT_GNU_HWCAP, NT_GNU_BUILD_ID): New macros.
1932
1933 2007-07-09  Ulrich Drepper  <drepper@redhat.com>
1934
1935         * sysdeps/x86_64/cacheinfo.c (intel_02_known): Add new entries.
1936         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Likewise.
1937
1938 2007-07-07  Ulrich Drepper  <drepper@redhat.com>
1939
1940         [BZ #4745]
1941         * stdio-common/vfscanf.c (_IO_vfscanf): Add additional test for EOF
1942         in loop to look for conversion specifier to avoid testing of
1943         wrong errno value.
1944         * stdio-common/Makefile (tests): Add bug18, bug18a, bug19, bug19a.
1945         * stdio-common/bug18.c: New file.
1946         * stdio-common/bug18a.c: New file.
1947         * stdio-common/bug19.c: New file.
1948         * stdio-common/bug19a.c: New file.
1949
1950 2007-07-05  Mike Frysinger  <vapier@gentoo.org>
1951
1952         * Makeconfig ($(common-objpfx)gnu/lib-names.stmp): Use LC_ALL=C when
1953         running awk script.
1954
1955 2007-07-01  Jakub Jelinek  <jakub@redhat.com>
1956
1957         * elf/dl-sysdep.c (_dl_important_hwcaps): Add integer overflow check.
1958         * elf/dl-minimal.c (__libc_memalign): Likewise.  Handle malloc (0).
1959         Return NULL if mmap failed instead of asserting it does not.
1960         (calloc): Check for integer overflow.
1961
1962         * elf/dl-minimal.c (__strtoul_internal): Fix parsing of numbers bigger
1963         than LONG_MAX / 10.
1964
1965 2007-07-03  Jakub Jelinek  <jakub@redhat.com>
1966
1967         [BZ #4702]
1968         * nis/nss-default.c: Include errno.h.
1969         (init): Preserve errno.
1970
1971 2007-07-02  Ulrich Drepper  <drepper@redhat.com>
1972
1973         * sysdeps/unix/sysv/linux/bits/socket.h (PF_UNIX): Update comment.
1974
1975 2007-06-30  Ulrich Drepper  <drepper@redhat.com>
1976
1977         * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_RXRPC and AF_RXRPC.
1978
1979 2007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1980
1981         * sysdeps/unix/sysv/linux/bits/socket.h: Add PF_IUCV and AF_IUCV.
1982
1983 2007-06-29  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1984
1985         * sysdeps/s390/dl-procinfo.c: New file.
1986         * sysdeps/s390/dl-procinfo.h: New file.
1987         * sysdeps/unix/sysv/linux/s390/dl-procinfo.h: New file.
1988
1989 2007-06-29  Jakub Jelinek  <jakub@redhat.com>
1990
1991         * elf/dl-load.c (open_verify): Find .note.ABI-tag notes even
1992         in PT_NOTE segments with multiple notes.
1993         * elf/readelflib.c (process_elf_file): Likewise.
1994
1995 2007-06-22  Ulrich Drepper  <drepper@redhat.com>
1996
1997         * nis/nis_domain_of.c (__nis_domain_of): Make the code a bit more
1998         ISO C compliant.
1999
2000 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
2001
2002         * elf/dl-close.c (free_mem): Free _dl_scope_free_list.
2003
2004 2007-06-13  Jakub Jelinek  <jakub@redhat.com>
2005
2006         * include/link.h: Don't include rtld-lowlevel.h.
2007         (struct link_map): Remove l_scope_lock.
2008         * sysdeps/generic/ldsodefs.h: Don't include rtld-lowlevel.h.
2009         (_dl_scope_free_list): New field (variable) in _rtld_global.
2010         (DL_LOOKUP_SCOPE_LOCK): Remove.
2011         (_dl_scope_free): New prototype.
2012         * elf/dl-runtime.c (_dl_fixup): Don't use __rtld_mrlock_*lock.
2013         Don't pass DL_LOOKUP_SCOPE_LOCK to _dl_lookup_symbol_x.
2014         (_dl_profile_fixup): Likewise.
2015         * elf/dl-sym.c (do_sym): Likewise.  Use wrapped _dl_lookup_symbol_x
2016         whenever !RTLD_SINGLE_THREAD_P, use THREAD_GSCOPE_SET_FLAG and
2017         THREAD_GSCOPE_RESET_FLAG around it.
2018         * elf/dl-close.c (_dl_close_worker): Don't use
2019         __rtld_mrlock_{change,done}.  Call _dl_scope_free on the old
2020         scope.  Make sure THREAD_GSCOPE_WAIT () happens if any old
2021         scopes were queued or if l_scope_mem has been abandoned.
2022         * elf/dl-open.c (_dl_scope_free): New function.
2023         (dl_open_worker): Use it.  Don't use __rtld_mrlock_{change,done}.
2024         * elf/dl-support.c (_dl_scope_free_list): New variable.
2025         * elf/dl-lookup.c (add_dependency): Remove flags argument.
2026         Remove DL_LOOKUP_SCOPE_LOCK handling.
2027         (_dl_lookup_symbol_x): Adjust caller.  Remove DL_LOOKUP_SCOPE_LOCK
2028         handling.
2029         * elf/dl-object.c (_dl_new_object): Don't use
2030         __rtld_mrlock_initialize.
2031
2032 2007-06-19  Ulrich Drepper  <drepper@redhat.com>
2033
2034         * sysdeps/generic/ldsodefs.h (rtld_global): Reorder some elements
2035         to fill in holes
2036         (rtld_global_ro): Likewise.
2037
2038 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
2039
2040         * elf/dl-addr.c (_dl_addr): Skip PT_LOAD checking if l_contiguous.
2041         Move PT_LOAD checking to...
2042         (_dl_addr_inside_object): ... here, new function.
2043         * elf/dl-sym.c (do_sym): If not l_contiguous,
2044         call _dl_addr_inside_object.
2045         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Likewise.
2046         * dlfcn/dlinfo.c (dlinfo_doit): Likewise.
2047         * elf/dl-open.c (dl_open_worker): Likewise.
2048         (_dl_addr_inside_object): New function if IS_IN_rtld.
2049         * elf/dl-load.c (_dl_map_object_from_fd): Set l_contiguous if no
2050         holes are present or are PROT_NONE protected.
2051         * include/link.h (struct link_map): Add l_contiguous field.
2052         * sysdeps/generic/ldsodefs.h (_dl_addr_inside_object): New prototype.
2053
2054 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
2055             Tomas Janousek  <tjanouse@redhat.com>
2056             Ulrich Drepper  <drepper@redhat.com>
2057
2058         [BZ #4647]
2059         * resolv/res_send.c (send_dg): Remove socket_pf.  Use ipv6_unavail
2060         member in __res_state, only convaddr4to6 if nssocks[ns] is a PF_INET6
2061         socket.
2062         * resolv/resolv.h (__res_state): Add ipv6_unavail member.  Make
2063         unused member a bitmap.
2064         * resolv/res_init.c (__res_vinit): Reset ipv6_unavail if IPv6
2065         servers are configured.
2066
2067 2007-06-18  Jakub Jelinek  <jakub@redhat.com>
2068
2069         * elf/rtld.c (dl_main): Don't call init_tls more than once.
2070
2071 2007-06-17  Andreas Schwab  <schwab@suse.de>
2072
2073         * sysdeps/generic/initfini.c: Tell gcc about the nonstandard sections.
2074
2075 2007-06-16  Andreas Jaeger  <aj@suse.de>
2076
2077         [BZ #4125]
2078         * sysdeps/unix/sysv/linux/sys/ptrace.h
2079         (PTRACE_O_TRACESYSGOOD, PTRACE_O_TRACEFORK,
2080         PTRACE_O_TRACEVFORK, PTRACE_O_TRACECLONE, PTRACE_O_TRACEEXEC,
2081         PTRACE_O_TRACEVFORKDONE, PTRACE_O_TRACEEXIT, PTRACE_O_MASK,
2082         PTRACE_EVENT_FORK, PTRACE_EVENT_VFORK, PTRACE_EVENT_CLONE,
2083         PTRACE_EVENT_EXEC, PTRACE_EVENT_VFORK_DONE, PTRACE_EVENT_EXIT):
2084         Define.
2085         * sysdeps/unix/sysv/linux/powerpc/sys/ptrace.h: Likewise.
2086         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Likewise.
2087         * sysdeps/unix/sysv/linux/sparc/sys/ptrace.h: Likewise.
2088         * sysdeps/unix/sysv/linux/s390/sys/ptrace.h: Likewise.
2089
2090 2007-06-16  Ulrich Drepper  <drepper@redhat.com>
2091
2092         [BZ #4599]
2093         * sysdeps/unix/sysv/linux/check_pf.c (make_request): When
2094         determining whether there are IPv4/IPv6 addresses, ignore loopback
2095         addresses.
2096
2097 2007-06-14 Uros Bizjak <ubizjak@gmail.com>
2098
2099         * soft-fp/soft-fp.h (CMPtype): Define to "int" if undefined.
2100         * soft-fp/eqdf2.c (__eqdf2): Use CMPtype instead of int
2101         as the return type.  Change type of "r" variable to CMPtype.
2102         * soft-fp/eqsf2.c (__eqsf2): Likewise.
2103         * soft-fp/eqtf2.c (__eqtf2): Likewise.
2104         * soft-fp/gedf2.c (__gedf2): Likewise.
2105         * soft-fp/gesf2.c (__gesf2): Likewise.
2106         * soft-fp/getf2.c (__getf2): Likewise.
2107         * soft-fp/ledf2.c (__ledf2): Likewise.
2108         * soft-fp/lesf2.c (__lesf2): Likewise.
2109         * soft-fp/letf2.c (__letf2): Likewise.
2110         * soft-fp/unorddf2 (__unorddf2): Likewise.
2111         * soft-fp/unordsf2 (__unordsf2): Likewise.
2112         * soft-fp/unordtf2 (__unordtf2): Likewise.
2113
2114 2007-06-09  Ulrich Drepper  <drepper@redhat.com>
2115
2116         * elf/do-lookup.h (do_lookup_x): Read r_nlist before r_list and
2117         make sure gcc doesn't mess around with this.
2118
2119 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
2120
2121         * elf/dl-lookup.c (_dl_lookup_symbol_x): Remove use of r_nlist.
2122
2123 2007-06-08  Jakub Jelinek  <jakub@redhat.com>
2124
2125         * elf/dl-close.c (_dl_close_worker): Remove all to be removed
2126         libraries from the global scope at once and call THREAD_GSCOPE_WAIT
2127         at most once per _dl_close_worker.
2128
2129 2007-06-08  Ulrich Drepper  <drepper@redhat.com>
2130
2131         * sysdeps/unix/sysv/linux/bits/sched.h: Make second parameter of
2132         __sched_cpucount as const.
2133         * posix/sched_cpucount.c: Adjust.
2134
2135         * posix/sched_cpucount.c (__sched_cpucount): Allow using special
2136         instruction for counting bits.
2137         * sysdeps/x86_64/sched_cpucount.c: New file.
2138
2139 2007-06-07  Ulrich Drepper  <drepper@redhat.com>
2140
2141         * configure.in: Avoid variable named BASH.
2142         * config.make.in: Likewise.
2143         Patch in part by Mike Frysinger.
2144
2145 2007-06-06  Jakub Jelinek  <jakub@redhat.com>
2146
2147         [BZ #4586]
2148         * sysdeps/i386/ldbl2mpn.c (__mpn_extract_long_double): Treat
2149         pseudo-zeros as zero.
2150         * sysdeps/x86_64/ldbl2mpn.c: New file.
2151         * sysdeps/ia64/ldbl2mpn.c: New file.
2152
2153 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
2154
2155         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Remove
2156         unused ily variable.  Fix nextafterl on +-__LDBL_MAX__ and +-Inf.
2157         Remove unreachable code at the end.
2158
2159 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
2160
2161         * sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c: Correct description of
2162         ldbl-128ibm in comment.
2163         (fpclassifyl): Correct classification of denormals.
2164         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (nextafterl): Correct
2165         return value for MIN denormal. Rewrite using long double math too
2166         correctly handle denormals and canonicalize the results.
2167
2168 2007-06-05  Jakub Jelinek  <jakub@redhat.com>
2169
2170         * sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
2171         (__mpn_construct_long_double): Fix conversion where result ought
2172         to be smaller than __LDBL_MIN__, or the low double should be
2173         denormal.  Fix decision where to negate low double - honor round
2174         to even rules.
2175         * stdio-common/tst-sprintf2.c: Include string.h.
2176         (COMPARE_LDBL): Define.
2177         (TEST): Also test whether a string hexadecimal float representation
2178         can be parsed back to the number.
2179         (main): Add a couple of further tests.
2180
2181 2007-06-04  Jakub Jelinek  <jakub@redhat.com>
2182
2183         * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
2184         (PRINT_FPHEX_LONG_DOUBLE): Fix printing numbers where lower double
2185         is non-zero, but smaller than 2 * __DBL_MIN__.
2186         * stdio-common/tst-sprintf2.c: New test.
2187         * stdio-common/Makefile (tests): Add tst-sprintf2.
2188
2189         * math/test-misc.c (main): Don't run last batch of tests with
2190         IBM long double format.
2191
2192 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
2193
2194         * sysdeps/powerpc/powerpc32/970/fpu/Implies: New file.
2195         * sysdeps/powerpc/powerpc32/power5/fpu/Implies: New file.
2196         * sysdeps/powerpc/powerpc32/power5+/fpu/Implies: New file.
2197         * sysdeps/powerpc/powerpc32/power6/fpu/Implies: New file.
2198         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
2199         * sysdeps/powerpc/powerpc64/970/fpu/Implies: New file.
2200         * sysdeps/powerpc/powerpc64/power5/fpu/Implies: New file.
2201         * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: New file.
2202         * sysdeps/powerpc/powerpc64/power6/fpu/Implies: New file.
2203         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
2204         * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: New file.
2205         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies:
2206         New file.
2207         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies:
2208         New file.
2209         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies:
2210         New file.
2211         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies:
2212         New file.
2213         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies:
2214         New file.
2215         * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: New file.
2216         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies:
2217         New file.
2218         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies:
2219         New file.
2220         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies:
2221         New file.
2222         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies:
2223         New file.
2224         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies:
2225         New file.
2226
2227 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
2228
2229         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: Move.
2230         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: To here.
2231         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: Move.
2232         * sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: To here.
2233         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: Move.
2234         * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: To here.
2235         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: Move.
2236         * sysdeps/powerpc/powerpc32/power4/fpu/s_llroundf.S: To here.
2237
2238 2007-05-22  Steven Munroe  <sjmunroe@us.ibm.com>
2239
2240         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S
2241         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
2242         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S
2243         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
2244         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S
2245         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
2246         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S
2247         (LONG_DOUBLE_COMPAT): Specify correct version, GLIBC_2_1.
2248
2249 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
2250
2251         * sysdeps/powerpc/powerpc32/power4/fpu/slowexp.c: New file.
2252         * sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.c: New file.
2253         * sysdeps/powerpc/powerpc64/power4/fpu/slowexp.c: New file.
2254         * sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c: New file.
2255
2256 2007-03-15  Steven Munroe  <sjmunroe@us.ibm.com>
2257
2258         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S
2259         [LONG_DOUBLE_COMPAT]: Add compat_symbol for llrintl@@GLIBC_2_1.
2260
2261 2006-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
2262
2263         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: New File
2264         * sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: New File
2265         * sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: New File
2266         * sysdeps/powerpc/powerpc32/power6/fpu/s_llroundf.S: New File
2267
2268 2006-10-20  Steven Munroe  <sjmunroe@us.ibm.com>
2269
2270         * sysdeps/powerpc/powerpc32/power4/fpu/slowpow.c: New file.
2271         * sysdeps/powerpc/powerpc64/power4/fpu/slowpow.c: New file.
2272
2273 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
2274
2275         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llround.S: New file.
2276         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llroundf.S: New file.
2277
2278         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: Moved.
2279         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: Likewise.
2280         * sysdeps/powerpc/powerpc32/power4/fpu/Makefile: To here.
2281         * sysdeps/powerpc/powerpc32/power4/fpu/mpa.c: Likewise.
2282
2283 2006-09-29  Steven Munroe  <sjmunroe@us.ibm.com>
2284
2285         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S: New file.
2286         * sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S: New file.
2287         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S: New file.
2288         * sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S: New file.
2289
2290 2006-09-28  Steven Munroe  <sjmunroe@us.ibm.com>
2291
2292         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: New file.
2293         * sysdeps/powerpc/powerpc32/power5+/fpu/s_llroundf.S: New file.
2294         * sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: New file.
2295         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: New file.
2296         * sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S: New file.
2297         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: New file.
2298
2299 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
2300
2301         * sysdeps/powerpc/powerpc32/powerpc64/fpu/Makefile: New file.
2302         * sysdeps/powerpc/powerpc32/powerpc64/fpu/mpa.c: New file.
2303         * sysdeps/powerpc/powerpc64/power4/fpu/Makefile: New file.
2304         * sysdeps/powerpc/powerpc64/power4/fpu/mpa.c: New file.
2305
2306 2006-06-15  Steven Munroe  <sjmunroe@us.ibm.com>
2307
2308         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S: New file.
2309         * sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S: New file.
2310         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S: New file.
2311         * sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S: New file.
2312         * sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S: New file.
2313         * sysdeps/powerpc/powerpc32/power5+/fpu/s_roundf.S: New file.
2314         * sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S: New file.
2315         * sysdeps/powerpc/powerpc32/power5+/fpu/s_truncf.S: New file.
2316         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S: New file.
2317         * sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S: New file.
2318         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S: New file.
2319         * sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S: New file.
2320         * sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S: New file.
2321         * sysdeps/powerpc/powerpc64/power5+/fpu/s_roundf.S: New file.
2322         * sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S: New file.
2323         * sysdeps/powerpc/powerpc64/power5+/fpu/s_truncf.S: New file.
2324
2325 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
2326
2327         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrint.S: New file.
2328         * sysdeps/powerpc/powerpc32/powerpc64/fpu/s_llrintf.S: New file.
2329
2330 2007-06-01  Steven Munroe  <sjmunroe@us.ibm.com>
2331
2332         * sysdeps/powerpc/powerpc32/power6/memset.S: New file.
2333         * sysdeps/powerpc/powerpc64/power6/memset.S: New file.
2334
2335 2007-05-31  Steven Munroe  <sjmunroe@us.ibm.com>
2336
2337         * sysdeps/powerpc/powerpc32/970/Implies: New file.
2338         * sysdeps/powerpc/powerpc32/power5/Implies: New file.
2339         * sysdeps/powerpc/powerpc32/power5+/Implies: New file.
2340         * sysdeps/powerpc/powerpc32/power6/Implies: New file.
2341         * sysdeps/powerpc/powerpc32/power6x/Implies: New file.
2342         * sysdeps/powerpc/powerpc64/970/Implies: New file.
2343         * sysdeps/powerpc/powerpc64/power5/Implies: New file.
2344         * sysdeps/powerpc/powerpc64/power5+/Implies: New file.
2345         * sysdeps/powerpc/powerpc64/power6/Implies: New file.
2346         * sysdeps/powerpc/powerpc64/power6x/Implies: New file.
2347
2348 2007-05-21  Steven Munroe  <sjmunroe@us.ibm.com>
2349
2350         * sysdeps/powerpc/powerpc32/power4/memset.S: New file
2351
2352 2007-03-13  Steven Munroe  <sjmunroe@us.ibm.com>
2353
2354         * sysdeps/powerpc/powerpc64/memcpy.S: Improve aligned loop to minimize
2355         branch miss-predicts. Ensure that cache line crossing does not impact
2356         dispatch grouping.
2357
2358 2006-12-13  Steven Munroe  <sjmunroe@us.ibm.com>
2359
2360         * sysdeps/powerpc/powerpc64/power4/memcopy.h: Replace with include
2361         "../../powerpc32/power4/memcopy.h".
2362         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: Replace with include
2363         "../../powerpc32/power4/wordcopy.c".
2364
2365 2006-10-03  Steven Munroe  <sjmunroe@us.ibm.com>
2366
2367         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: Moved.
2368         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: Likewise.
2369         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: Likewise.
2370         * sysdeps/powerpc/powerpc32/power4/Makefile: To here.
2371         * sysdeps/powerpc/powerpc32/power4/memcopy.h: Likewise.
2372         * sysdeps/powerpc/powerpc32/power4/wordcopy.c: Likewise.
2373
2374 2006-09-10  Steven Munroe  <sjmunroe@us.ibm.com>
2375
2376         * sysdeps/powerpc/powerpc32/power6/memcpy.S: New file.
2377
2378 2006-08-31  Steven Munroe  <sjmunroe@us.ibm.com>
2379
2380         * sysdeps/powerpc/powerpc32/power6/wordcopy.c: New file.
2381         * sysdeps/powerpc/powerpc32/powerpc64/Makefile: New file.
2382         * sysdeps/powerpc/powerpc32/powerpc64/memcopy.h: New file.
2383         * sysdeps/powerpc/powerpc32/powerpc64/wordcopy.c: New file.
2384         * sysdeps/powerpc/powerpc64/power4/Makefile: New file.
2385         * sysdeps/powerpc/powerpc64/power4/memcopy.h: New file.
2386         * sysdeps/powerpc/powerpc64/power4/wordcopy.c: New file.
2387         * sysdeps/powerpc/powerpc64/power6/wordcopy.c: New file.
2388
2389 2006-07-06  Steven Munroe  <sjmunroe@us.ibm.com>
2390
2391         * sysdeps/powerpc/powerpc64/power6/memcpy.S: New file.
2392
2393 2006-03-20  Steven Munroe  <sjmunroe@us.ibm.com>
2394
2395         * sysdeps/powerpc/powerpc32/power4/memcmp.S: New file.
2396         * sysdeps/powerpc/powerpc32/power4/memcpy.S: New file.
2397         * sysdeps/powerpc/powerpc32/power4/memset.S: New file.
2398         * sysdeps/powerpc/powerpc32/power4/strncmp.S: New file.
2399         * sysdeps/powerpc/powerpc64/power4/memcmp.S: New file.
2400         * sysdeps/powerpc/powerpc64/power4/memcpy.S: New file.
2401         * sysdeps/powerpc/powerpc64/power4/strncmp.S: New file.
2402
2403 2007-05-29  Roland McGrath  <roland@redhat.com>
2404
2405         * po/Makefile (po-sed-cmd): New variable.
2406         (libc.pot.files): Move sed command text in there, avoid \ inside ''.
2407
2408 2007-05-29  Ulrich Drepper  <drepper@redhat.com>
2409
2410         * crypt/md5-crypt.c: Fix comment.
2411
2412         * nscd/nscd_helper.c (get_mapping): Handle short replies instead
2413         of crashing.  When this is the case or if the reply is malformed,
2414         don't try to close the new file descriptor since it does not
2415         exist.
2416         Patch in part by Guillaume Chazarain <guichaz@yahoo.fr>.
2417
2418 2007-05-28  Jakub Jelinek  <jakub@redhat.com>
2419
2420         * sysdeps/unix/sysv/linux/futimes.c (miss_utimensat): Don't define
2421         if __NR_utimensat is not defined.
2422
2423 2007-05-26  Ulrich Drepper  <drepper@redhat.com>
2424
2425         * sysdeps/unix/sysv/linux/powerpc/libc-start.c: Include <sysdep.h>.
2426
2427 2007-05-25  Jakub Jelinek  <jakub@redhat.com>
2428
2429         * io/bits/fcntl2.h (__open_2): Add nonnull attribute.
2430         (open): Fix comment typos.  Don't call __open_2 if flags
2431         is a compile time constant without O_CREAT.
2432         (__open64_2): Add nonnull attribute.
2433         (open64): Fix comment typos.  Don't call __open64_2 if flags
2434         is a compile time constant without O_CREAT.
2435         (__openat_2): Add nonnull attribute, fix nonnull attribute
2436         on redirect.
2437         (openat): Fix comment typos.  Don't call __openat_2 if flags
2438         is a compile time constant without O_CREAT.
2439         (__openat64_2): Add nonnull attribute, fix nonnull attribute
2440         on redirect.
2441         (openat64): Fix comment typos.  Don't call __openat64_2 if flags
2442         is a compile time constant without O_CREAT.
2443
2444 2007-05-24  Ulrich Drepper  <drepper@redhat.com>
2445
2446         * Makerules (sysd-rules): Define PTW for ptw-* files.
2447         * Versions: Define GLIBC_2.7 for libc.
2448         * include/stdio.h: Declare __fortify_fail.
2449         * debug/fortify_fail.c: New file.
2450         * debug/Makefile (routines): Add fortify_fail.
2451         * debug/chk_fail.c: Use __fortify_fail.
2452         * debug/stack_chk_fail.c: Likewise.
2453         * io/Versions: Export __open_2, __open64_2, __openat_2, and
2454         __openat64_2 for GLIBC_2.7.
2455         * io/fcntl.h: When compiling with fortification, include bits/fcntl2.h.
2456         * io/open.c: Define *_2 variant of function which checks for O_CREAT
2457         and fails if necessary.
2458         * io/open64.c: Likewise.
2459         * io/openat.c: Likewise.
2460         * io/openat64.c: Likewise.
2461         * sysdeps/unix/sysv/linux/open64.c: Likewise.
2462         * sysdeps/unix/sysv/linux/openat.c: Likewise.
2463         * sysdeps/unix/sysv/linux/openat64.c: Likewise.
2464         * io/bits/fcntl2.h: New file.
2465         * include/fcntl.h: Declare __open_2, __open64_2, __openat_2, and
2466         __openat64_2.
2467         * include/bits/fcntl2.h: New file.
2468         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
2469         Add open_2.
2470         * sysdeps/unix/sysv/linux/open_2.c: New file.
2471
2472 2007-05-21  Ulrich Drepper  <drepper@redhat.com>
2473
2474         * sysdeps/x86_64/cacheinfo.c (init_cacheinfo): Pass correct value
2475         as second parameter to handle_intel.
2476
2477         * nscd/aicache.c (addhstaiX): If reported TTL is zero don't cache
2478         the entry.
2479
2480         * sysdeps/unix/sysv/linux/x86_64/sysconf.c: Move cache information
2481         handling to ...
2482         * sysdeps/x86_64/cacheinfo.c: ... here.  New file.
2483         * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
2484         cacheinfo.
2485         * sysdeps/x86_64/memcpy.S: Complete rewrite.
2486         * sysdeps/x86_64/mempcpy.S: Adjust appropriately.
2487         Patch by Evandro Menezes <evandro.menezes@amd.com>.
2488
2489         * sysdeps/unix/sysv/linux/i386/epoll_pwait.S: New file.
2490
2491 2007-05-21  Jakub Jelinek  <jakub@redhat.com>
2492
2493         [BZ #4525]
2494         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add epoll_pwait.
2495         * sysdeps/unix/sysv/linux/epoll_pwait.c: New file.
2496         * sysdeps/unix/sysv/linux/syscalls.list (epoll_pwait): Remove.
2497
2498         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h (epoll_pwait): Declare.
2499
2500         [BZ #4514]
2501         * stdio-common/vfprintf.c (vfprintf): Don't shadow workstart variable,
2502         reinitialize workend at the start of each do_positional format spec
2503         loop, free workstart before do_positional loops.
2504         (printf_unknown): Fix size of work_buffer.
2505         * stdio-common/tst-sprintf.c (main): Add 3 new testcases.
2506
2507         * malloc/hooks.c (MALLOC_STATE_VERSION): Bump.
2508         (public_sET_STATe): If ms->version < 3, put all chunks into
2509         unsorted chunks and clear {fd,bk}_nextsize fields of largebin
2510         chunks.
2511
2512         * malloc/malloc.c [MALLOC_DEBUG]: Revert 2007-05-13 changes.
2513         * malloc/hooks.c: Likewise.
2514         * malloc/arena.c: Likewise.
2515         * malloc/malloc.c (do_check_malloc_state): Don't assert
2516         n_mmaps is not greater than n_mmaps_max.  This removes the need
2517         for the previous change.
2518
2519         * malloc/Makefile (CFLAGS-malloc.c): Revert accidental
2520         2007-05-07 commit.
2521
2522 2007-05-19  Ulrich Drepper  <drepper@redhat.com>
2523
2524         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_PRIVATE_FUTEX):
2525         Define for kernel >= 2.6.22.
2526
2527 2007-05-18  Ulrich Drepper  <drepper@redhat.com>
2528
2529         * elf/dl-close.c (_dl_close_worker): When removing object from
2530         global scope, wait for all lookups to finish afterwards.
2531         * elf/dl-open.c (add_to_global): When global scope array must
2532         grow, allocate a new one and free old array only after all
2533         lookups finish.
2534         * elf/dl-runtime.c (_dl_fixup): Protect using global scope.
2535         (_dl_lookup_symbol_x): Likewise.
2536         * elf/dl-support.c: Define _dl_wait_lookup_done.
2537         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add
2538         _dl_wait_lookup_done.
2539
2540         * malloc/malloc.c (do_check_chunk): Correct check for mmaped block
2541         not overlapping with arena.
2542
2543         * malloc/mcheck.c (reallochook): If size==0, free the block.
2544
2545         * rt/tst-shm.c: Use fstat64 instead of fstat.
2546
2547         * sysdeps/unix/sysv/linux/i386/sync_file_range.S: Fix case where
2548         __NR_sync_file_range is not defined.
2549
2550 2007-05-17  Ulrich Drepper  <drepper@redhat.com>
2551
2552         Dummy files to prevent stub versions from being used.
2553         * sysdeps/x86_64/fpu/k_cosl.c: New file.
2554         * sysdeps/x86_64/fpu/k_rem_pio2l.c: New file.
2555         * sysdeps/x86_64/fpu/k_sinl.c: New file.
2556         * sysdeps/x86_64/fpu/k_tanl.c: New file.
2557
2558         * version.h (VERSION): Set to 2.6.90.
2559
2560 2007-05-14  Ulrich Drepper  <drepper@redhat.com>
2561
2562         * version.h (VERSION): Define to 2.6.
2563         * include/features.h (__GLIBC_MINOR__): Define to 6.
2564
2565         * malloc/malloc.c: Use all small bin slots on 64-bit archs.
2566
2567         * malloc/malloc.c (largebin_index): Really have 32 buckets with 64
2568         sizes.
2569
2570 2007-05-13  Ulrich Drepper  <drepper@redhat.com>
2571
2572         * malloc/malloc.c [MALLOC_DEBUG]: Keep track of current maximum
2573         number of mmaps.  n_mmaps_max is the target.
2574         * malloc/hooks.c: Likewise.
2575         * malloc/arena.c: Likewise.
2576
2577 2007-05-12  Andreas Jaeger  <aj@suse.de>
2578
2579         * sysdeps/unix/sysv/linux/tst-getcpu.c: Include <unistd.h> for
2580         getpid.
2581
2582 2007-05-11  Ulrich Drepper  <drepper@redhat.com>
2583
2584         * elf/dl-close.c (_dl_close_worker): Help gcc to optimize by
2585         adding new variables.
2586
2587         * elf/dl-open.c (add_to_global): Introduce variable ns to help gcc
2588         optimize.  Completely extend global scope array before making the
2589         new entries visible.
2590
2591 2007-05-10  Ulrich Drepper  <drepper@redhat.com>
2592
2593         * sysdeps/unix/sysv/linux/tst-getcpu.c: New file.
2594         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (tests): Add
2595         tst-getcpu.
2596
2597         * include/link.h: Move l_version and l_nversion members around to
2598         fill gaps.
2599
2600         * scripts/check-c++-types.sh: Don't use -fnu89-inline option.
2601
2602         * sysdeps/unix/sysv/linux/sched_setaffinity.c
2603         (__sched_setaffinity_new): If syscall was successful and
2604         RESET_VGETCPU_CACHE is defined, use it before returning.
2605         * sysdeps/unix/sysv/linux/x86_64/sched_setaffinity.c: New file.
2606
2607         * io/sys/stat.h: Make sure struct timespec is defined for
2608         __USE_ATFILE.
2609
2610         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Define UTIME_NOW and
2611         UTIME_OMIT.
2612         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
2613         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
2614         * sysdeps/unix/sysv/linux/alpha/bits/stat.h: Likewise.
2615         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
2616         * sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
2617         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
2618         * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_UTIMENSAT.
2619         * io/sys/stat.h: Declare utimensat, futimens.
2620         * io/utimensat.c: New file.
2621         * io/futimens.c: New file.
2622         * sysdeps/unix/sysv/linux/utimensat.c: New file.
2623         * sysdeps/unix/sysv/linux/futimens.c: New file.
2624         * io/Makefile (routines): Add utimensat, futimens.
2625         * io/Versions: Add utimensat, futimens to GLIBC_2.6.
2626         * sysdeps/unix/sysv/linux/lutimes.c: New file.
2627         * sysdeps/unix/sysv/linux/futimes.c: Use utimensat syscall if
2628         available.
2629
2630         * include/sys/cdefs.h: Redefine __nonnull so that test for
2631         incorrect parameters in the libc code itself are not omitted.
2632
2633 2007-05-09  Jakub Jelinek  <jakub@redhat.com>
2634
2635         * sysdeps/ia64/fpu/fraiseexcpt.c (feraiseexcept): Don't raise overflow
2636         exception in addition to inexact when asked to raise only FE_INEXACT.
2637
2638         [BZ #3427]
2639         * sysdeps/s390/fpu/feholdexcpt.c (feholdexcept): Don't clear exceptions
2640         in *envp.
2641
2642 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
2643
2644         [BZ #4403]
2645         * string/strfry.c (strfry): Make result more random.
2646
2647 2007-05-07  Richard Henderson  <rth@redhat.com>
2648
2649         * sysdeps/alpha/fpu/bits/mathinline.h (__isnanl): Don't define
2650         if __NO_LONG_DOUBLE_MATH.
2651         * sysdeps/unix/sysv/linux/alpha/ioperm.c: If BWX insns not
2652         available in the compiler, add .arch directive to the assembly.
2653
2654 2007-05-07  Jakub Jelinek  <jakub@redhat.com>
2655
2656         * sysdeps/alpha/fpu/s_nearbyint.c (nearbyintl): Fix version on
2657         compat_symbol to GLIBC_2_1.
2658         * sysdeps/alpha/fpu/s_fmin.S (fminl): Likewise.
2659         * sysdeps/alpha/fpu/s_trunc.c (truncl): Likewise.
2660         * sysdeps/alpha/fpu/s_fmax.S (fmaxl): Likewise.
2661         * sysdeps/alpha/fpu/s_lrint.c (lrintl, llrintl): Likewise.
2662         * sysdeps/alpha/fpu/s_lround.c (lroundl, llroundl): Likewise.
2663         * sysdeps/alpha/fpu/s_round.c (roundl): Likewise.
2664         * sysdeps/alpha/fpu/s_isnan.c (isnanl): Provide compat_symbol in
2665         libc, not libm.
2666         (__isnanl): New compat_symbol.
2667
2668 2007-05-07  Ulrich Drepper  <drepper@redhat.com>
2669             Jakub Jelinek  <jakub@redhat.com>
2670
2671         * malloc/arena.c (heap_info): Add mprotect_size field, adjust pad.
2672         (new_heap): Initialize mprotect_size.
2673         (grow_heap): When growing, only mprotect from mprotect_size till
2674         new_size if mprotect_size is smaller.  When shrinking, use PROT_NONE
2675         MMAP for __libc_enable_secure only, otherwise use MADV_DONTNEED.
2676
2677 2007-04-30  Steven Munroe  <sjmunroe@us.ibm.com>
2678             Peter Bergner  <bergner@us.ibm.com>
2679
2680         * sysdeps/powerpc/bits/fenv.h: Declare __fe_mask_env extern.
2681         Define FE_NOMASK_ENV as FE_EANBLED_ENV.  Define FE_MASK_ENV.
2682         * sysdeps/powerpc/fpu/Makefile: Add fe_mask to libm-support.
2683         * sysdeps/powerpc/fpu/fe_mask.c: New file.
2684         * sysdeps/powerpc/fpu/fe_nomask.c: Correct comment.
2685         * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept):
2686         Call __fe_mask_env() if all FP exceptions disabled.
2687         * sysdeps/powerpc/fpu/feholdexcpt.c (feholdexcept): Copy high 32-bits
2688         from old FPSCR to new fenv to propagate DFP rounding modes.
2689         Call __fe_mask_env() if FP exceptions previously enabled.
2690         * sysdeps/powerpc/fpu/fesetenv.c (fesetenv): Change mask to merge
2691         exceptions from env.  Use __fe_nomask_env() or __fe_mask_env() when
2692         transitioning from all exceptions disabled to any exception enabled
2693         or visa versa.
2694         * sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Change mask to
2695         merge exceptions from env.  Call __fe_nomask_env or __fe_mask_env
2696         when transitioning from all exceptions disabled to any exception
2697         enabled or visa versa.
2698         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Moved to...
2699         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c: ...here.
2700         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: Moved to...
2701         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c: ...here.
2702         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_mask.c: New file.
2703         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c: New file.
2704
2705 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
2706
2707         [BZ #4465]
2708         * posix/unistd.h: Remove __THROW from fdatasync.
2709
2710 2007-05-06  Mike Frysinger  <vapier@gentoo.org>
2711
2712         [BZ #4465]
2713         * sysdeps/unix/sysv/linux/syscalls.list (fdatasync): Add "C" to args.
2714
2715 2007-05-06  Ulrich Drepper  <drepper@redhat.com>
2716
2717         * stdio-common/vfprintf.c (process_string_arg): Optimize
2718         ridiculous precision in wide char code printing multi-byte string.
2719         Reported by Jim Meyering <jim@meyering.net>.
2720
2721         [BZ #4131]
2722         * elf/dl-addr.c (_dl_addr): Compare address with actual segment
2723         boundaries to work around systems with overlapping binary loading.
2724         Based on a patch by Suzuki <suzuki@in.ibm.com>.
2725
2726 2007-05-04  Ulrich Drepper  <drepper@redhat.com>
2727
2728         * stdio-common/vfprintf.c (process_string_arg): Adjust call to
2729         __mbsnrtowcs after last change.
2730
2731         * locale/programs/linereader.c (get_symname): Fix adding final NUL.
2732         (get_ident): Likewise.
2733
2734 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
2735
2736         * soft-fp/op-common.h (FP_TRUNC): Replace raising of FP_EX_INEXACT
2737         with setting the sticky bit.
2738         * math/test-misc.c (main): Add more truncation tests.
2739
2740 2007-04-14  Uros Bizjak  <ubizjak@gmail.com>
2741
2742         * soft-fp/floatunsidf.c (__floatunsidf): Use DFtype instead of
2743         double in the function declaration.
2744         * soft-fp/floatundidf.c (__floatundidf): Use DFtype instead of
2745         double in the function declaration.
2746         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
2747         float in the function declaration.
2748         * soft-fp/floatunsisf.c (__floatunsisf): Use SFtype instead of
2749         float in the function declaration.
2750
2751         * soft-fp/extended.h (FP_UNPACK_RAW_E): Do not increase X##_e for
2752         denormal operands.  Do not generate FP_EX_DENORM exception.
2753         (FP_UNPACK_RAW_EP): Ditto.
2754         (FP_UNPACK_SEMIRAW_E): Use FP_UNPACK_RAW_E instead of
2755         undefined _FP_UNPACK_RAW_E.
2756         (FP_UNPACK_SEMIRAW_EP): Use FP_UNPACK_RAW_EP instead of
2757         undefined _FP_UNPACK_RAW_EP.
2758         (FP_PACK_SEMIRAW_E): Use FP_PACK_RAW_E instead of
2759         undefined _FP_PACK_RAW_E.
2760         (FP_PACK_SEMIRAW_EP): Use FP_PACK_RAW_EP instead of
2761         undefined _FP_PACK_RAW_EP.
2762
2763         * soft-fp/op-2.h (_FP_FRAC_COPY_2_2): Define as alias to
2764         _FP_FRAC_COPY_2.
2765         * soft-fp/op-4.h (_FP_FRAC_COPY_2_2): Define as alias to
2766         _FP_FRAC_COPY_4.
2767
2768 2007-04-16  Uros Bizjak  <ubizjak@gmail.com>
2769             Jakub Jelinek  <jakub@redhat.com>
2770
2771         * soft-fp/op-common.h (FP_EXTEND): Do not abort when
2772         _FP_EXPBIAS_##dfs == _FP_EXPBIAS_##sfs.  Handle denormals for
2773         this case.
2774         * soft-fp/op-common.h (FP_TRUNC): Ditto.
2775
2776 2007-05-03  Jakub Jelinek  <jakub@redhat.com>
2777
2778         * math/test-misc.c (main): Add tests for rounding long double
2779         values close to smallest double denormalized value to double.
2780
2781 2007-04-30  Joseph Myers  <joseph@codesourcery.com>
2782
2783         * soft-fp/op-common.h (FP_TRUNC): Correct off-by-one error in
2784         condition for truncating to 0.  Set sticky bit for such
2785         truncation.
2786
2787 2007-05-02  Jakub Jelinek  <jakub@redhat.com>
2788
2789         * stdio-common/vfprintf.c (process_string_arg): Use a VLA rather than
2790         fixed length array for ignore.
2791
2792 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
2793
2794         [BZ #4438]
2795         * stdio-common/vfprintf.c (process_string_arg): Don't overflow the
2796         stack for large precisions.
2797         * stdio-common/test-vfprintf.c (main): Add test for large
2798         precision.
2799
2800 2007-04-30  Jakub Jelinek  <jakub@redhat.com>
2801
2802         * stdio-common/printf_fp.c (___printf_fp): Don't print negative sign
2803         for exponent 0.
2804         * stdio-common/tfformat.c (sprint_doubles): Add a new test.
2805
2806         [BZ #4439]
2807         * resolv/inet_ntop.c (inet_ntop4): Take terminating '\0' into
2808         account in the size check.
2809         * resolv/tst-inet_ntop.c: New test.
2810         * resolv/Makefile (tests): Add tst-inet_ntop.
2811
2812 2007-04-30  Ulrich Drepper  <drepper@redhat.com>
2813             Jakub Jelinek  <jakub@redhat.com>
2814
2815         [BZ #4349]
2816         * malloc/malloc.c: Keep separate list for first blocks on the bin
2817         lists with a given size.  This helps skipping over list elements
2818         we know won't fit in two places.
2819         Inspired by a patch by Tomash Brechko <tomash.brechko@gmail.com>.
2820
2821 2007-04-28  Ulrich Drepper  <drepper@redhat.com>
2822
2823         [BZ #4102]
2824         * sysdeps/posix/getaddrinfo.c (default_labels): Assign separate
2825         label to Teredo tunnel addresses 2001://32.
2826
2827 2007-04-27  Ulrich Drepper  <drepper@redhat.com>
2828
2829         * locale/programs/ld-collate.c (collate_read): Allow order_start
2830         after copy.
2831
2832         * locale/programs/ld-collate.c (collate_read): Fix printing of
2833         error message.
2834
2835         [BZ #3213]
2836         * locale/C-translit.h.in: Add entry for U2044.
2837
2838         [BZ #4342]
2839         * stdio-common/vfscanf.c (_IO_vfscanf_internal): Allow
2840         hexa-decimal floats without exponent.
2841         * stdio-common/tstscanf.c (main): Adjust Test 8 test for success.
2842
2843 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
2844
2845         * sysdeps/unix/sysv/linux/bits/sched.h: Declare sched_getcpu.
2846         * sysdeps/unix/sysv/linux/sched_getcpu.c: New file.
2847         * sysdeps/unix/sysv/linux/x86_64/sched_getcpu.S: New file.
2848         * sysdeps/unix/sysv/linux/Versions: Export sched_getcpu for
2849         GLIBC_2.6.
2850         * sysdeps/unix/sysv/linux/Makefile [subdir=posix] (sysdep_routines):
2851         Add sched_getcpu.
2852
2853 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
2854
2855         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Return -1 instead
2856         of 0 after the out_fail label.
2857
2858 2007-04-25  Ulrich Drepper  <drepper@redhat.com>
2859
2860         [BZ #4406]
2861         * iconv/gconv_charset.h (strip): Allow ':'.
2862         * iconv/iconv_open.c (iconv_open): Adjust comment.
2863
2864 2007-04-25  Jakub Jelinek  <jakub@redhat.com>
2865
2866         * libio/bits/stdio.h (fgetc_unlocked): Add extern inline optimized
2867         version.
2868
2869 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
2870
2871         [BZ #4381]
2872         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Ensure sufficient
2873         alignment of buffer and tmp_buffer.
2874         * nis/nss_nis/nis-hosts.c (internal_nis_gethostent_r,
2875         internal_gethostbyname2_r, _nss_nis_gethostbyaddr_r): Ensure sufficient
2876         alignment of buffer.
2877         * resolv/nss_dns/dns-hosts.c (getanswer_r): Likewise.  Handle buflen
2878         bigger than INT_MAX.
2879         * resolv/nss_dns/dns-network.c (getanswer_r): Likewise.  Add errnop and
2880         h_errnop arguments.  Fail if buflen is too small.
2881         (_nss_dns_getnetbyname_r, _nss_dns_getnetbyaddr_r): Adjust callers.
2882
2883 2007-04-23  Jakub Jelinek  <jakub@redhat.com>
2884
2885         [BZ #4405]
2886         * iconvdata/gconv-modules (E13B): Add a missing slash to the alias
2887         name.  Patch by Aurelien Jarno <aurelien@aurel32.net>.
2888
2889 2007-04-22  Roland McGrath  <roland@redhat.com>
2890
2891         * elf/elf.h (NT_PRXFPREG): New macro.
2892
2893 2007-04-19  Andreas Jaeger  <aj@suse.de>
2894
2895         [BZ #3905]
2896         * bits/in.h (IPV6_ROUTER_ALERT, IPV6_MTU_DISCOVER, IPV6_MTU,
2897         IPV6_RECVERR, IPV6_V6ONLY, IPV6_JOIN_ANYCAST, IPV6_LEAVE_ANYCAST):
2898         Added.
2899
2900 2007-04-19  Ulrich Drepper  <drepper@redhat.com>
2901
2902         * include/sys/mman.h: Mark madvise hidden.
2903         * misc/madvise.c: Add libc_hidden_def.
2904
2905 2007-04-06  Jakub Jelinek  <jakub@redhat.com>
2906
2907         * nis/nis_domain_of.c (__nis_domain_of): New function.
2908         * include/rpcsvc/nislib.h (__nis_domain_of): New prototype.
2909         * nis/nis_lookup.c (nis_lookup): Use __nis_domain_of.
2910         * nis/nis_call.c (rec_dirsearch): Likewise.
2911         (first_shoot): Likewise.  Remove search_parent_first argument.
2912         (struct nis_server_cache): Rename search_parent_first field
2913         to search_parent.
2914         (nis_server_cache_search, nis_server_cache_add): Rename
2915         search_parent_first argument to search_parent.
2916         (__nisfind_server): Likewise.  If search_parent, call
2917         __nis_domain_of.
2918
2919 2007-04-18  Ulrich Drepper  <drepper@redhat.com>
2920
2921         * sysdeps/posix/getaddrinfo.c: Remove commented-out code.
2922
2923 2007-04-17  Ulrich Drepper  <drepper@redhat.com>
2924
2925         [BZ #4368]
2926         * stdlib/stdlib.h: Remove obsolete part of comment for realpath.
2927
2928 2007-04-16  Ulrich Drepper  <drepper@redhat.com>
2929
2930         [BZ #4364]
2931         * posix/unistd.h (_XOPEN_VERSION): Define appropriately for SUSv3.
2932
2933 2007-04-15  Jakub Jelinek  <jakub@redhat.com>
2934
2935         * locale/programs/locarchive.c (INITIAL_NUM_NAMES,
2936         INITIAL_SIZE_STRINGS, INITIAL_NUM_LOCREC): Update to accomodate
2937         current number of locales in SUPPORTED.
2938         (create_archive): Initialize serial.
2939         (enlarge_archive): Preserve aliases rather than duplicating
2940         their locrecs.
2941
2942 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
2943
2944         * libio/genops.c (_IO_default_finish): Call _IO_lock_fini
2945         after _IO_un_link, not before it.
2946
2947         * stdio-common/printf_fp.c (___printf_fp): Fix exponent -4
2948         special case handling when wcp == wstartp + 1.  Fix a comment typo.
2949         * stdio-common/tfformat.c (sprint_doubles): Add a new testcase.
2950
2951 2007-03-30  Jakub Jelinek  <jakub@redhat.com>
2952
2953         * libio/libio.h (__underflow, __uflow, __overflow, __wunderflow,
2954         __wuflow, __woverflow, _IO_getc, _IO_putc, _IO_peekc_locked, _IO_padn,
2955         _IO_sgetn, _IO_seekoff, _IO_seekpos, _IO_getwc, _IO_putwc, _IO_wpadn):
2956         Remove __THROW.
2957         * libio/fileops.c (new_do_write, _IO_file_xsgetn_mmap,
2958         _IO_file_xsgetn_maybe_mmap): Likewise.
2959         * libio/oldfileops.c (old_do_write): Likewise.
2960         * libio/libioP.h (_IO_switch_to_get_mode, _IO_switch_to_wget_mode,
2961         _IO_init_marker, _IO_init_wmarker, _IO_default_uflow,
2962         _IO_wdefault_uflow, _IO_default_setbuf, _IO_default_seekpos,
2963         _IO_do_write, _IO_new_do_write, _IO_old_do_write, _IO_wdo_write,
2964         _IO_flush_all_lockp, _IO_flush_all, _IO_cleanup,
2965         _IO_flush_all_linebuffered, _IO_new_fgetpos, _IO_old_fgetpos,
2966         _IO_new_fsetpos, _IO_old_fsetpos, _IO_new_fgetpos64,
2967         _IO_old_fgetpos64, _IO_new_fsetpos64, _IO_old_fsetpos64,
2968         _IO_file_setbuf, _IO_file_seekoff, _IO_file_xsputn, _IO_file_xsgetn,
2969         _IO_file_underflow, _IO_file_underflow_mmap,
2970         _IO_file_underflow_maybe_mmap, _IO_file_overflow, _IO_file_attach,
2971         _IO_file_open, _IO_file_fopen, _IO_file_write, _IO_file_read,
2972         _IO_file_sync, _IO_file_close_it, _IO_file_finish,
2973         _IO_new_file_attach, _IO_new_file_close_it, _IO_new_file_finish,
2974         _IO_new_file_fopen, _IO_new_file_setbuf, _IO_file_setbuf_mmap,
2975         _IO_new_file_sync, _IO_new_file_underflow, _IO_new_file_overflow,
2976         _IO_new_file_seekoff, _IO_new_file_write, _IO_new_file_xsputn,
2977         _IO_old_file_setbuf, _IO_old_file_seekoff, _IO_old_file_xsputn,
2978         _IO_old_file_underflow, _IO_old_file_overflow, _IO_old_file_attach,
2979         _IO_old_file_fopen, _IO_old_file_write, _IO_old_file_sync,
2980         _IO_old_file_close_it, _IO_old_file_finish, _IO_wfile_xsputn,
2981         _IO_wfile_setbuf, _IO_wfile_sync, _IO_wfile_underflow,
2982         _IO_wfile_overflow, _IO_wfile_seekoff, _IO_old_proc_open,
2983         _IO_old_proc_close, _IO_getdelim, _IO_flush_all_internal,
2984         _IO_adjust_column_internal, _IO_default_uflow_internal,
2985         _IO_default_xsgetn_internal, _IO_wdefault_xsputn_internal,
2986         _IO_wdefault_xsgetn_internal, _IO_wdefault_uflow_internal,
2987         _IO_file_setbuf_internal, _IO_file_seekoff_internal,
2988         _IO_file_xsputn_internal, _IO_file_xsgetn_internal,
2989         _IO_file_close_it_internal, _IO_file_underflow_internal,
2990         _IO_file_overflow_internal, _IO_file_attach_internal,
2991         _IO_file_fopen_internal, _IO_file_sync_internal,
2992         _IO_file_finish_internal, _IO_wfile_xsputn_internal,
2993         _IO_wfile_seekoff_internal, _IO_wfile_sync_internal,
2994         _IO_switch_to_wget_mode_internal, _IO_padn_internal,
2995         _IO_switch_to_get_mode_internal, _IO_seekoff_unlocked,
2996         _IO_seekpos_unlocked): Likewise.
2997         (_IO_strtod, _IO_dtoa, _IO_outfloat, _IO_read, _IO_write,
2998         _IO_lseek, _IO_close, _IO_fstat): Remove unused prototypes.
2999
3000 2007-04-16  Jakub Jelinek  <jakub@redhat.com>
3001
3002         * locale/programs/locarchive.c (show_archive_content): Fix sizeof
3003         argument in xmalloc size computation.
3004
3005 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
3006
3007         * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Use
3008         math_opt_barrier and math_force_eval macros.
3009
3010 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
3011
3012         [BZ #3306]
3013         * math/math_private.h (math_opt_barrier, math_force_eval): Define.
3014         * sysdeps/i386/fpu/math_private.h: New file.
3015         * sysdeps/x86_64/fpu/math_private.h: New file.
3016         * math/s_nexttowardf.c (__nexttowardf): Use math_opt_barrier and
3017         math_force_eval macros.  Use "+m" constraint on asm rather than
3018         "=m" and "m".
3019         * math/s_nextafter.c (__nextafter): Likewise.
3020         * sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c (__nexttoward):
3021         Likewise.
3022         * sysdeps/ieee754/flt-32/s_nextafterf.c (__nextafterf): Likewise.
3023         * sysdeps/ieee754/ldbl-128/s_nexttoward.c (__nexttoward): Likewise.
3024         * sysdeps/ieee754/ldbl-96/s_nexttoward.c (__nexttoward): Likewise.
3025         * sysdeps/i386/fpu/s_nextafterl.c (__nextafterl): Use
3026         math_opt_barrier and math_force_eval macros.
3027         * sysdeps/ieee754/ldbl-128/s_nextafterl.c (__nextafterl): Likewise.
3028         * sysdeps/ieee754/ldbl-96/s_nextafterl.c (__nextafterl): Likewise.
3029         * sysdeps/i386/fpu/s_nexttoward.c: Include float.h.
3030         (__nexttoward): Use math_opt_barrier and
3031         math_force_eval macros.  Use "+m" constraint on asm rather than
3032         "=m" and "m".  Only use asm to force double result if
3033         FLT_EVAL_METHOD is 2.
3034         * sysdeps/i386/fpu/s_nexttowardf.c: Include float.h.
3035         (__nexttowardf): Use math_opt_barrier and
3036         math_force_eval macros.  Use "+m" constraint on asm rather than
3037         "=m" and "m".  Only use asm to force double result if
3038         FLT_EVAL_METHOD is not 0.
3039         * sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c: Include float.h.
3040         (__nexttowardf): Use math_opt_barrier and
3041         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
3042         x to float using asm.
3043         * sysdeps/ieee754/ldbl-opt/s_nexttowardfd.c: Include float.h.
3044         (__nldbl_nexttowardf): Use math_opt_barrier and
3045         math_force_eval macros.  If FLT_EVAL_METHOD is not 0, force
3046         x to float using asm.
3047         * sysdeps/ieee754/ldbl-96/s_nexttowardf.c: Include float.h.
3048         (__nexttowardf): Use math_opt_barrier and math_force_eval
3049         macros.  If FLT_EVAL_METHOD is not 0, force x to float using asm.
3050         * math/bug-nextafter.c (zero, inf): New variables.
3051         (main): Add new tests.
3052         * math/bug-nexttoward.c (zero, inf): New variables.
3053         (main): Add new tests.
3054
3055 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
3056
3057         [BZ #3427]
3058         * sysdeps/x86_64/fpu/feholdexcpt.c (feholdexcept): Clear all
3059         exceptions both in SW and MXCSR.
3060         * sysdeps/x86_64/fpu/feupdateenv.c: New file.
3061         * sysdeps/x86_64/fpu/feenablxcpt.c (feenableexcept): Remove dead code.
3062         * sysdeps/x86_64/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
3063         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
3064         in MXCSR if SSE is available.
3065         * sysdeps/i386/fpu/feupdateenv.c: Include unistd.h, dl-procinfo.h
3066         and ldsodefs.h.
3067         (__feupdateenv): Query exceptions also from MXCSR if SSE is available.
3068         Fix comment typo.
3069         * sysdeps/ia64/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions.
3070         Return 0 rather than 1.
3071         * sysdeps/ia64/fpu/feupdateenv.c (feupdateenv): Fix comment typo.
3072         Remove incorrect part of a comment.  Fix argument to feraiseexcept.
3073         * math/test-fenv.c (feholdexcept_tests): New function.
3074         (main): Call it.
3075
3076 2007-01-05  Richard B. Kreckel  <kreckel@ginac.de>
3077
3078         [BZ #3427]
3079         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Clear all exceptions
3080         in SW.
3081
3082 2007-04-13  Jakub Jelinek  <jakub@redhat.com>
3083
3084         [BZ #4344]
3085         * elf/ldconfig.c (search_dir): Fix 2 off-by-2 errors.
3086         Reported by David Anderson <davea42@earthlink.net>.
3087
3088 2007-04-07  Ulrich Drepper  <drepper@redhat.com>
3089
3090         * posix/sys/wait.h: Remove unnecessary forward declaration.
3091
3092 2007-04-05  Jakub Jelinek  <jakub@redhat.com>
3093
3094         * nis/nis_call.c (__nisfind_server): Replace (*dir)->do_servers
3095         with obj->do_servers after first_shoot.
3096
3097 2007-04-03  Ulrich Drepper  <drepper@redhat.com>
3098
3099         * posix/Makefile (routines): Add sched_cpucount.
3100         (tests): Add tst-cpucount.
3101         * posix/sched_cpucount.c: New file.
3102         * posix/tst-cpucount.c: New file.
3103         * posix/Versions: Export __sched_cpucount with version GLIBC_2.6.
3104         * bits/sched.h: Define __CPU_COUNT.  Declare __sched_cpucount.
3105         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
3106         * posix/sched.h: Define CPU_COUNT.
3107
3108 2007-03-27  Jakub Jelinek  <jakub@redhat.com>
3109
3110         * posix/fnmatch.c (STRUCT): Define.
3111         (fnmatch): Pass NULL as last argument to internal_fn{,w}match.
3112         * posix/fnmatch_loop.c (struct STRUCT): New type.
3113         (FCT): Add ends argument.  If ends != NULL and normal * is
3114         seen in the pattern, store current pattern and string pointers
3115         and return.  Adjust recursive calls.
3116         (EXT): Adjust FCT callers.
3117         (STRUCT): Undef at the end of the file.
3118         * posix/Makefile (tests): Add tst-fnmatch2.
3119         * posix/tst-fnmatch2.c: New test.
3120
3121 2007-04-01  Jakub Jelinek  <jakub@redhat.com>
3122
3123         * sysdeps/ia64/fpu/fesetround.c (fesetround): Return 0 on success
3124         and 1 on failure.
3125
3126         * sysdeps/unix/sysv/linux/sync_file_range.c (sync_file_range):
3127         Change last argument to unsigned int.
3128
3129 2007-03-23  Jakub Jelinek  <jakub@redhat.com>
3130
3131         * scripts/check-local-headers.sh: Filter out sys/capability.h.
3132
3133 2007-03-22  Jakub Jelinek  <jakub@redhat.com>
3134
3135         * config.h.in (HAVE_LIBCAP): Add.
3136         * nscd/selinux.h: Include sys/capability.h rather than non-existent
3137         sys/capabilities.h.
3138         * nscd/selinux.c (preserve_capabilities): Use cap_free instead of
3139         free_caps.  Cast away const from 4th cap_set_flag argument.
3140
3141 2007-03-26  Ulrich Drepper  <drepper@redhat.com>
3142
3143         * sysdeps/unix/sysv/linux/Versions: Move sync_file_range to
3144         GLIBC_2.6.
3145         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
3146         Add sync_file_range.
3147         Reported by Atsushi Nemoto <anemo@mba.ocn.ne.jp>.
3148
3149 2007-03-19  Steven Munroe  <sjmunroe@us.ibm.com>
3150
3151         * sysdeps/powerpc/bits/atomic.h
3152         [!MUTEX_HINT_ACQ]: Define MUTEX_HINT_ACQ.
3153         [!MUTEX_HINT_REL]: Define MUTEX_HINT_REL.
3154         (__arch_compare_and_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
3155         (__arch_compare_and_exchange_val_32_rel): Add MUTEX_HINT_REL to lwarx.
3156         (__arch_atomic_exchange_val_32_acq): Add MUTEX_HINT_ACQ to lwarx.
3157         (__arch_atomic_exchange_rel_32_rel): Add MUTEX_HINT_REL to lwarx.
3158         * sysdeps/powerpc/powerpc32/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6X]:
3159         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
3160         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
3161         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
3162         * sysdeps/powerpc/powerpc64/bits/atomic.h [_ARCH_PWR6 || _ARCH_PWR6D]:
3163         Define MUTEX_HINT_ACQ as ",1" and MUTEX_HINT_REL as ",0".
3164         (__arch_compare_and_exchange_bool_32_acq): Add MUTEX_HINT_ACQ to lwarx.
3165         (__arch_compare_and_exchange_bool_32_rel): Add MUTEX_HINT_REL to lwarx.
3166         (__arch_compare_and_exchange_bool_64_acq): Add MUTEX_HINT_ACQ to lwarx.
3167         (__arch_compare_and_exchange_bool_64_rel): Add MUTEX_HINT_REL to lwarx.
3168         (__arch_compare_and_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
3169         (__arch_compare_and_exchange_val_64_rel): Add MUTEX_HINT_REL to lwarx.
3170         (__arch_atomic_exchange_val_64_acq): Add MUTEX_HINT_ACQ to lwarx.
3171         (__arch_atomic_exchange_rel_64_rel): Add MUTEX_HINT_REL to lwarx.
3172
3173 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
3174
3175         * sysdeps/unix/sysv/linux/powerpc/libc-start.c
3176         (__cache_line_size): Define the variable here.  Add
3177         attribute_hidden, remove weak_extern.
3178         (__libc_start_main): Set __cache_line_size
3179         unconditionally.
3180         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
3181         (__cache_line_size): Define the variable here.  Add
3182         attribute_hidden, remove weak_extern.
3183         (DL_PLATFORM_AUXV): Set __cache_line_size
3184         unconditionally.
3185         * sysdeps/powerpc/powerpc32/dl-machine.c (__cache_line_size): Remove
3186         weak_extern, add attribute_hidden.
3187         (__elf_machine_runtime_setup): Assume __cache_line_size is always
3188         defined in ld.so.
3189         * sysdeps/powerpc/powerpc32/memset.S (__cache_line_size): Remove
3190         definition.
3191         * sysdeps/powerpc/powerpc64/memset.S (__cache_line_size): Likewise.
3192
3193 2007-03-26  Jakub Jelinek  <jakub@redhat.com>
3194
3195         [BZ #4276]
3196         * timezone/africa: Update from tzdata2007d.
3197         * timezone/asia: Likewise.
3198         * timezone/australasia: Likewise.
3199         * timezone/backward: Likewise.
3200         * timezone/europe: Likewise.
3201         * timezone/iso3166.tab: Likewise.
3202         * timezone/leapseconds: Likewise.
3203         * timezone/northamerica: Likewise.
3204         * timezone/southamerica: Likewise.
3205         * timezone/zone.tab: Likewise.
3206
3207         * timezone/private.h: Update from tzcode2007d.
3208         * timezone/zdump.c: Likewise.
3209         * timezone/zic.c: Likewise.
3210
3211 2007-03-21  Jakub Jelinek  <jakub@redhat.com>
3212
3213         * nis/nis_call.c: Include bits/libc-lock.h, sys/stat.h, unistd.h.
3214         (nis_server_cache, nis_server_cache_lock, nis_cold_start_mtime): New
3215         variables.
3216         (nis_server_cache_search, nis_server_cache_add): New functions.
3217         (__nisfind_server): Use them.  Add dbp and flags argument, if
3218         call __nisbind_create.
3219         (__nisbind_create): Add server_used and current_ep arguments,
3220         only call __nis_findfastest if server_used is ~0.
3221         (__do_niscall2, __prepare_niscall): Adjust callers.
3222         (ckey_cache, ckey_cache_size, ckey_cache_allocated, ckey_cache_pid,
3223         ckey_cache_euid, ckey_cache_lock): New variables.
3224         (get_ckey): New function.
3225         (__nisbind_connect): If not dbp->use_udp, pass IPPROTO_TCP to
3226         __pmap_getnisport.  Save __pmap_getnisport result in
3227         dbp->addr.sin_port if non-zero.  Use get_ckey to create conversation
3228         key.
3229         * nis/nis_lookup.c (nis_lookup): Likewise.
3230         * nis/nis_table.c (nis_list): Likewise.
3231         * nis/rpcsvc/nislib.h (__nisbind_create, __nisfind_server): Adjust
3232         prototypes.
3233
3234         * nis/nss_nisplus/nisplus-pwd.c (_nss_nisplus_getpwnam_r,
3235         _nss_nisplus_getpwuid_r): Pass USE_DGRAM flag to nis_list.
3236         * nis/nss_nisplus/nisplus-service.c (_nss_nisplus_getservbyname_r,
3237         _nss_nisplus_getservbyport_r): Likewise.
3238         * nis/nss_nisplus/nisplus-network.c (_nss_nisplus_getnetbyname_r,
3239         _nss_nisplus_getnetbyaddr_r): Likewise.
3240         * nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_getspnam_r): Likewise.
3241         * nis/nss_nisplus/nisplus-ethers.c (_nss_nisplus_gethostton_r,
3242         _nss_nisplus_getntohost_r): Likewise.
3243         * nis/nss_nisplus/nisplus-rpc.c (_nss_nisplus_getrpcbyname_r,
3244         _nss_nisplus_getrpcbynumber_r): Likewise.
3245
3246 2007-03-20  Jakub Jelinek  <jakub@redhat.com>
3247
3248         * configure.in (libc_cv_gnu89_inline): Only do compile test.
3249         * configure: Rebuilt.
3250
3251         * soft-fp/double.h (_FP_UNION_D): Use _FP_W_TYPE for frac
3252         bit-fields.
3253         * soft-fp/extended.h (_FP_UNION_E): Likewise.
3254
3255 2006-06-07  Joseph Myers  <joseph@codesourcery.com>
3256
3257         [BZ #2831]
3258         * soft-fp/quad.h (_FP_UNION_Q): Use _FP_W_TYPE for frac
3259         bit-fields.
3260
3261 2007-03-18  Jakub Jelinek  <jakub@redhat.com>
3262
3263         * nscd/gai.c: Include alloca.h.
3264         (__libc_use_alloca): Define.
3265
3266 2007-03-16  Jakub Jelinek  <jakub@redhat.com>
3267
3268         * elf/dl-open.c (dl_open_worker): Declare l in 2 different
3269         smaller scopes.
3270         * elf/dl-dst.h (DL_DST_REQ_STATIC): Add l as macro argument.
3271         (DL_DST_REQUIRED): Adjust user.
3272
3273         * include/dlfcn.h (struct link_map): New forward decl.
3274
3275         * inet/getnameinfo.c: Include stddef.h.
3276         (getnameinfo): Use offsetof.
3277
3278         * time/tst-mktime2.c (do_test): Don't rely on signed wrap.
3279
3280         * stdio-common/vfprintf.c (_itoa): Undef before redefining.
3281
3282         * string/strerror_l.c: Include stdlib.h.
3283
3284         * configure.in (libc_cv_gnu89_inline): Test for -fgnu89-inline.
3285         * config.make.in (gnu89-inline-CFLAGS): New variable.
3286         * Makeconfig (CFLAGS): Use $(gnu89-inline-CFLAGS) together with
3287         -std=gnu99.
3288         * misc/sys/cdefs.h (__extern_inline, __extern_always_inline): Define.
3289         * argp/argp.h: Use it.
3290         * bits/mathinline.h: Likewise.
3291         * bits/sigset.h: Likewise.
3292         * bits/string.h: Likewise.
3293         * ctype/ctype.h: Likewise.
3294         * hurd/hurd.h: Likewise.
3295         * hurd/hurd/fd.h: Likewise.
3296         * hurd/hurd/port.h: Likewise.
3297         * hurd/hurd/signal.h: Likewise.
3298         * hurd/hurd/threadvar.h: Likewise.
3299         * hurd/hurd/userlink.h: Likewise.
3300         * io/sys/stat.h: Likewise.
3301         * libio/bits/stdio.h: Likewise.
3302         * libio/bits/stdio2.h: Likewise.
3303         * mach/lock-intern.h: Likewise.
3304         * mach/mach/mig_support.h: Likewise.
3305         * math/bits/cmathcalls.h: Likewise.
3306         * posix/bits/unistd.h: Likewise.
3307         * socket/bits/socket2.h: Likewise.
3308         * stdlib/bits/stdlib.h: Likewise.
3309         * stdlib/stdlib.h: Likewise.
3310         * string/argz.h: Likewise.
3311         * string/bits/string2.h: Likewise.
3312         * string/bits/string3.h: Likewise.
3313         * sysdeps/alpha/fpu/bits/mathinline.h: Likewise.
3314         * sysdeps/generic/inttypes.h: Likewise.
3315         * sysdeps/generic/machine-lock.h: Likewise.
3316         * sysdeps/generic/machine-sp.h: Likewise.
3317         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
3318         * sysdeps/i386/i486/bits/string.h: Likewise.
3319         * sysdeps/ia64/fpu/bits/mathinline.h: Likewise.
3320         * sysdeps/mach/alpha/machine-lock.h: Likewise.
3321         * sysdeps/mach/alpha/machine-sp.h: Likewise.
3322         * sysdeps/mach/i386/machine-lock.h: Likewise.
3323         * sysdeps/mach/powerpc/machine-lock.h: Likewise.
3324         * sysdeps/mach/powerpc/machine-sp.h: Likewise.
3325         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
3326         * sysdeps/s390/bits/string.h: Likewise.
3327         * sysdeps/s390/fpu/bits/mathinline.h: Likewise.
3328         * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
3329         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
3330         * sysdeps/unix/sysv/linux/bits/sigset.h: Likewise.
3331         * sysdeps/unix/sysv/linux/bits/socket.h: Likewise.
3332         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Likewise.
3333         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
3334         * wcsmbs/bits/wchar2.h: Likewise.
3335         * wcsmbs/wchar.h: Likewise.
3336         * stdlib/gmp.h: Likewise.  Include <features.h> to get
3337         __extern_inline definition.
3338
3339 2007-03-15  Jakub Jelinek  <jakub@redhat.com>
3340
3341         * locale/programs/ld-ctype.c (find_translit): Return NULL if ctype is
3342         NULL.
3343
3344         [BZ #3919]
3345         * math/libm-test.inc (log_test): Test -Inf and NaN.
3346         (log10_test, log1p_test, log2_test): Test -Inf.
3347         * sysdeps/i386/fpu/e_log.S (__ieee754_log): Don't raise
3348         FE_INVALID when argument is qNaN.
3349         * sysdeps/i386/fpu/e_logl.S (__ieee754_logl): Likewise.
3350         * sysdeps/i386/fpu/e_logf.S (__ieee754_logf): Likewise.
3351         * sysdeps/x86_64/fpu/e_logl.S (__ieee754_logl): Likewise.
3352         * sysdeps/x86_64/fpu/e_log10l.S (__ieee754_log10l): Replace
3353         andb $1, %ah with testb $1, %ah, don't test for parity, instead
3354         testb $4, %ah and jump if non-zero.
3355         * sysdeps/x86_64/fpu/e_log2l.S (__ieee754_log2l): Likewise.
3356         * sysdeps/x86_64/fpu/s_log1pl.S (__log1pl): Likewise.
3357
3358         [BZ #4101]
3359         * argp/argp-help.c (hol_cluster_cmp): Fix comparisons used to find
3360         ancestors with the same depths.
3361         Patch by Niels Moeller <nisse@lysator.liu.se>.
3362         (filter_doc): Don't crash if argp is NULL.
3363         * argp/Makefile (tests): Add tst-argp2.
3364         * argp/tst-argp2.c: New test.
3365
3366         [BZ #4130]
3367         * login/utmp_file.c (setutent_file): Use O_LARGEFILE for
3368         open_not_cancel_2.
3369         (updwtmp_file): Likewise.
3370
3371         [BZ #4181]
3372         * inet/inet6_opt.c (add_padding): Only insert padding if npad > 0.
3373         (inet6_opt_append): Don't check extlen is big enough if extbuf
3374         is NULL.
3375         (inet6_opt_finish): Likewise.
3376         * inet/Makefile (tests): Add test-inet6_opt.
3377         * inet/test-inet6_opt.c: New test.
3378
3379         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Never
3380         reallocate the buffer, instead fail for MSG_TRUNC or for EBUSY
3381         NLMSG_ERR.  Instead use a page sized buffer.
3382         * sysdeps/unix/sysv/linux/check_pf.c (make_request): Use page sized
3383         buffer.
3384
3385 2007-03-14  Richard Henderson  <rth@redhat.com>
3386
3387         * sysdeps/alpha/fpu/s_llround.c: New file.
3388         * sysdeps/alpha/fpu/s_llroundf.c: New file.
3389         * sysdeps/alpha/fpu/s_lround.c: New file.
3390         * sysdeps/alpha/fpu/s_lroundf.c: New file.
3391         * sysdeps/alpha/fpu/s_round.c: New file.
3392         * sysdeps/alpha/fpu/s_roundf.c: New file.
3393         * sysdeps/alpha/fpu/s_trunc.c: New file.
3394         * sysdeps/alpha/fpu/s_truncf.c: New file.
3395
3396         * sysdeps/alpha/fpu/s_ceil.c: Rewrite without branches.
3397         * sysdeps/alpha/fpu/s_ceilf.c: Likewise.
3398         * sysdeps/alpha/fpu/s_floor.c: Likewise.
3399         * sysdeps/alpha/fpu/s_floorf.c: Likewise.
3400         * sysdeps/alpha/fpu/s_rint.c: Likewise.
3401         * sysdeps/alpha/fpu/s_rintf.c: Likewise.
3402
3403         * sysdeps/alpha/fpu/s_fmax.S: New file.
3404         * sysdeps/alpha/fpu/s_fmaxf.S: New file.
3405         * sysdeps/alpha/fpu/s_fmin.S: New file.
3406         * sysdeps/alpha/fpu/s_fminf.S: New file.
3407         * sysdeps/alpha/fpu/s_isnan.c: New file.
3408         * sysdeps/alpha/fpu/s_isnanf.c: New file.
3409         * sysdeps/alpha/fpu/s_llrint.c: New file.
3410         * sysdeps/alpha/fpu/s_llrintf.c: New file.
3411         * sysdeps/alpha/fpu/s_lrint.c: New file.
3412         * sysdeps/alpha/fpu/s_lrintf.c: New file.
3413         * sysdeps/alpha/fpu/s_nearbyint.c: New file.
3414         * sysdeps/alpha/fpu/s_nearbyintf.c: New file.
3415
3416         * sysdeps/alpha/fpu/bits/mathinline.h (__floorf, __floor): Remove.
3417         (__fdimf, fdimf, __fdim, fdim): Remove.
3418         (__signbitf, __signbit, __signbitl): Use gcc builtin if available.
3419         (__isnanf, __isnan, __isnanl): New.
3420
3421 2007-03-13  Richard Henderson  <rth@redhat.com>
3422
3423         * sysdeps/ieee754/ldbl-128/Makefile: New file.
3424
3425 2007-03-13  Richard Henderson  <rth@redhat.com>
3426
3427         * sysdeps/alpha/Makefile (sysdep-CFLAGS): Force dynamic rounding.
3428         * sysdeps/alpha/fpu/bits/mathinline.h (__signbitl): New.
3429         * sysdeps/alpha/fpu/libm-test-ulps: Regenerate.
3430         * sysdeps/unix/sysv/linux/alpha/alphaev6/fpu/Implies: New file.
3431         * sysdeps/unix/sysv/linux/alpha/alphaev67/fpu/Implies: New file.
3432         * sysdeps/unix/sysv/linux/alpha/fpu/Implies: New file.
3433
3434 2007-03-13  Richard Henderson  <rth@redhat.com>
3435
3436         * elf/dl-support.c (_dl_aux_init): Honor DL_PLATFORM_AUXV.
3437         * sysdeps/unix/sysv/linux/alpha/dl-auxv.h: New file.
3438         * sysdeps/unix/sysv/linux/alpha/dl-support.c: New file.
3439         * sysdeps/unix/sysv/linux/alpha/dl-sysdep.c (__libc_alpha_cache_shape):
3440         Move to dl-auxv.h; initialize instead of extern weak.
3441         (DL_PLATFORM_AUXV): Move to dl-auxv.h; don't test for undef
3442         weak symbol.
3443         * sysdeps/unix/sysv/linux/alpha/sysconf.c (__libc_alpha_cache_shape):
3444         Extern instead of initialized.
3445
3446 2007-03-13  Richard Henderson  <rth@redhat.com>
3447
3448         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add support for
3449         __sigsuspend_nocancel.
3450
3451 2007-03-06  Ulrich Drepper  <drepper@redhat.com>
3452
3453         * sysdeps/posix/getaddrinfo.c (get_scope): Correct test for
3454         172.16/12 address range.
3455
3456 2007-03-02  Jakub Jelinek  <jakub@redhat.com>
3457
3458         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Retry with
3459         a new netlink socket if NLMSG_ERR -EBUSY is seen after some MSG_TRUNC
3460         message.
3461
3462 2007-03-01  Jakub Jelinek  <jakub@redhat.com>
3463
3464         [BZ #4069]
3465         * sysdeps/ieee754/dbl-64/e_pow.c (__ieee754_pow): Check for NaN
3466         earlier.
3467         * math/libm-test.inc (pow_test): Add more tests involving NaNs.
3468
3469         * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Avoid invalid exception
3470         for x qNaN and y either +-inf or non-integer value.
3471         * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Likewise.
3472         * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
3473         * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
3474
3475 2007-02-10  Mike Frysinger  <vapier@gentoo.org>
3476
3477         * sysdeps/unix/sysv/linux/sh/Makefile: Remove sys/io.h
3478         from sysdep_headers.
3479
3480 2007-02-28  Jakub Jelinek  <jakub@redhat.com>
3481
3482         * time/tzfile.c (find_transition): Instead of a linear search try to
3483         guess the transition index, use a linear search if the result is at
3484         most 10 transitions away from the guess or binary search otherwise.
3485
3486 2007-02-27  Jakub Jelinek  <jakub@redhat.com>
3487
3488         * sysdeps/unix/sysv/linux/ifaddrs.c (__netlink_request): Fix
3489         memory reallocation.
3490
3491 2007-02-21  Ulrich Drepper  <drepper@redhat.com>
3492
3493         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Add branch predictions
3494         and fix some typos.
3495         Optimize use of TOLOWER.
3496
3497         [BZ #3325]
3498         * sysdeps/i386/fpu/e_fmodf.S: Revert last changes, keep using fprem.
3499         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
3500         * sysdeps/i386/fpu/e_fmod.S: Likewise.
3501
3502         [BZ #3458]
3503         * sysdeps/unix/sysv/linux/posix_madvise.c: New file.
3504         * sysdeps/unix/sysv/linux/syscalls.list: Remove posix_madvise entry.
3505
3506         [BZ #4076]
3507         * io/ftw.c (ftw_startup): Handle special case of FTW_CHDIR in /.
3508         (open_dir_stream): Likewise.
3509         * io/Makefile (tests): Add bug-ftw5.
3510         * io/bug-ftw5.c: New file.
3511
3512         * nscd/hstcache.c (cache_addhst): Remove unnecessary conditional.
3513         * nscd/servicescache.c (cache_addserv): Likewise.
3514
3515         * nscd/grpcache.c (cache_addgr): In case a record changed on
3516         refresh, adjust key_copy.
3517
3518         [BZ #4074]
3519         * nscd/pwdcache.c (cache_addpw): In case a record changed on
3520         refresh, adjust key_copy.
3521
3522         [BZ #4070]
3523         * stdio-common/printf_fp.c (___printf_fp): Handle a few more
3524         special cases.
3525         * stdio-common/tfformat.c (sprint_doubles): Some more tests.
3526
3527 2007-02-19  Ulrich Drepper  <drepper@redhat.com>
3528
3529         * stdio-common/printf_fp.c (___printf_fp): Cleanups and minor
3530         optimization.
3531
3532         * stdio-common/vfscanf.c: Small cleanups throughout.
3533
3534 2007-02-18  Ulrich Drepper  <drepper@redhat.com>
3535
3536         [BZ #3325]
3537         * sysdeps/i386/fpu/e_fmodf.S: Use fprem1 instead of fprem.
3538         * sysdeps/i386/fpu/e_fmodl.c: Likewise.
3539         * sysdeps/i386/fpu/e_fmod.S: Likewise.
3540         Patch by Jared Casper <jaredcasper@gmail.com>.
3541
3542         * sysdeps/unix/closedir.c: Outside libc don't use locking.
3543         * sysdeps/unix/opendir.c: Likewise.
3544         * sysdeps/unix/readdir.c: Likewise.
3545
3546         [BZ #2211]
3547         * stdio-common/vfscanf.c: Handle localized digits etc for floating
3548         point numbers.
3549         Patch mostly by Hamed Malek <hamed@farsiweb.info>.
3550
3551         * stdio-common/vfscanf.c: Fix problems in width accounting.
3552         * stdio-common/tst-sscanf.c (double_tests): New tests.
3553         (main): Hook them up.
3554
3555         * stdio-common/vfscanf.c: Remove unused WIDTH handling.
3556         More simplifications of floating-point reader.
3557
3558         * stdio-common/Makefile (tests): Add tst-swscanf.
3559         * stdio-common/tst-sscanf.c: Make tests usable for swscanf
3560         testing.
3561         * stdio-common/tst-swscanf.c: New file.
3562
3563 2007-02-17  Ulrich Drepper  <drepper@redhat.com>
3564
3565         [BZ #2633]
3566         * libio/stdio.h: Define struct _IO_FILE in global namespace.
3567         * setjmp/setjmp.h: Define __jmp_buf_tag in global namespace.
3568         Remove using for __jmp_buf_tag.
3569         * locale/locale.h (struct lconv): Also define in std namespace.
3570         * wcsmbs/wchar.h: Move using declaration for tm out of namespace.
3571
3572         [BZ #3842]
3573         * sysdeps/posix/euidaccess.c [_LIBC] (euidaccess): Remove shortcut
3574         using __libc_enable_secure.
3575
3576         [BZ #3818]
3577         * sysdeps/unix/sysv/linux/sys/acct.h (struct acct_v3): Define.
3578
3579         [BZ #3745]
3580         * locale/programs/ld-collate.c (handle_ellipsis): Fix generation
3581         of names for ellipsises.
3582
3583         [BZ #3348]
3584         * malloc/memusage.sh: Cleanups.
3585         * debug/xtrace.sh: Quoting and trap changes.
3586
3587 2007-02-16  Ulrich Drepper  <drepper@redhat.com>
3588
3589         * locale/iso-3166.def: Add Jersey, Guernsey, and Isle Of Man entries.
3590
3591         * locale/iso-3166.def: Update entry for Serbia.
3592         * locale/iso-4217.def: Define RSD, remove CSD.
3593
3594         * sysdeps/x86_64/bits/atomic.h: One more change, this time for 16-
3595         and 64-bit operations.
3596
3597         [BZ #4040]
3598         * sysdeps/i386/i486/bits/atomic.h: One more change, this time for
3599         16-bit operations.
3600
3601         * nscd/nscd.c (parse_opt): One more conversion to use send instead
3602         of writev.
3603
3604 2007-02-15  Ulrich Drepper  <drepper@redhat.com>
3605
3606         [BZ #3991]
3607         * assert/assert.h (assert): Simplify.
3608         (assert_perror): Likewise.
3609         Patch by Israel G. Lugo <ilugo@bridonsecurity.com>.
3610
3611         * nscd/nscd_helper.c (open_socket): Don't send padding bytes from
3612         reqdata.
3613
3614         * sysdeps/unix/sysv/linux/x86_64/send.c (__libc_send): Cosmetic
3615         change: don't pass NULL in place of an integer.
3616
3617 2007-02-02  Bruno Haible  <bruno@clisp.org>
3618
3619         [BZ #3954]
3620         * iconvdata/ksc5601.c (__ksc5601_sym_to_ucs, __ksc5601_sym_from_ucs):
3621         Add mapping for U+327E.
3622         * iconvdata/ksc5601.h (KSC5601_SYMBOL): Increment.
3623         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
3624         mapping of 0xD9 0xE8.
3625         * iconvdata/uhc.c (BODY for FROM_LOOP, BODY for TO_LOOP): Disable
3626         mapping of U+327E.
3627         Reported by Jungshik Shin <jungshik@google.com>.
3628
3629         [BZ #3955]
3630         * iconvdata/johab.c (BODY for FROM_LOOP, BODY for TO_LOOP): Enable
3631         mapping of 0xD9 0xE6 and of 0xD9 0xE7.
3632         Reported by Jungshik Shin <jungshik@google.com>.
3633
3634 2007-02-14  Ulrich Drepper  <drepper@redhat.com>
3635
3636         * sysdeps/x86_64/bits/atomic;h: Fix asm parameters for some
3637         byte variants.
3638
3639         [BZ #4040]
3640         * sysdeps/i386/i486/bits/atomic.h: Fix asm parameters for some
3641         byte variants.  Patch mostly be tom@tommay.net.
3642
3643 2007-02-14  Jakub Jelinek  <jakub@redhat.com>
3644
3645         [BZ #3996]
3646         * posix/glob.c (attribute_hidden): Define if not defined.
3647         (glob): Unescape dirname, filename or username when needed and not
3648         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
3649         is NULL.  Handle unescaped [ in pattern without closing ].
3650         Don't pass GLOB_CHECK down to recursive glob for directories.
3651         (__glob_pattern_type): New function.
3652         (__glob_pattern_p): Implement using __glob_pattern_type.
3653         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
3654         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
3655         Remove unreachable code.
3656         * posix/globtest.sh: Add a couple of new tests.
3657
3658 2007-02-13  Ulrich Drepper  <drepper@redhat.com>
3659
3660         * po/ru.po: Update from translation team.
3661
3662 2007-02-12  Jakub Jelinek  <jakub@redhat.com>
3663
3664         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __amdfam10__
3665         to the list of i486+ CPUs.
3666         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
3667
3668 2007-02-12  Ulrich Drepper  <drepper@redhat.com>
3669
3670         * elf/rtld.c (RESOLVE_MAP): Always return bootstrap_map reference.
3671         * elf/Makefile ($(objpfx)ld.so): Check that ld.so has no undefined
3672         references.
3673
3674 2007-02-09  Ulrich Drepper  <drepper@redhat.com>
3675
3676         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Remove incorrect comment.
3677
3678         * resolv/res_init.c (res_setoptions): Recognize edns0 option.
3679         * resolv/res_mkquery.c: Define __res_nopt.
3680         * resolv/res_query.c (__libc_res_nquery): If RES_USE_EDNS0 is set
3681         try adding EDNS0 record.
3682         * resolv/res_send.c (send_dg): If request failed with FORMERR and
3683         EDNS0 record was send make sure we don't try it again.
3684         * resolv/resolv.h: Define RES_F_EDNS0ERR and RES_USE_EDNS0.
3685         * include/resolv.h: Declare __res_nopt.
3686
3687 2007-02-08  Jakub Jelinek  <jakub@redhat.com>
3688
3689         [BZ #3944]
3690         * time/strptime_l.c (__strptime_internal): Set have_mon for
3691         %b/%B/%h.  Set have_mon and have_mday if tm_mon and tm_mday
3692         have been computed from tm_yday and tm_year.  Don't crash
3693         in day_of_the_week or day_of_the_year if not have_mon
3694         and tm_mon contains bogus value.
3695         * time/Makefile (tests): Add tst-strptime3.
3696         * time/tst-strptime3.c: New test.
3697
3698 2007-02-05  Jakub Jelinek  <jakub@redhat.com>
3699
3700         [BZ #3957]
3701         * posix/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
3702         bit for RE_HAT_LISTS_NOT_NEWLINE.
3703         (build_charclass_op): Remove bogus comment.
3704         * posix/Makefile (tests): Add bug-regex27 and bug-regex28.
3705         * posix/bug-regex27.c: New test.
3706         * posix/bug-regex28.c: New test.
3707
3708 2007-02-03  Ulrich Drepper  <drepper@redhat.com>
3709
3710         * po/sv.po: Update from translation team.
3711
3712 2007-02-02  Ulrich Drepper  <drepper@redhat.com>
3713
3714         * nscd/nscd_helper.c (open_socket): Minor size optimization.
3715
3716 2007-02-02  Jakub Jelinek  <jakub@redhat.com>
3717
3718         * include/locale.h (__uselocale): Add libc_hidden_proto.
3719         * locale/uselocale.c (__uselocale): Add libc_hidden_def.
3720
3721         * nscd/nscd_helper.c (open_socket): Use __gettimeofday instead of
3722         gettimeofday.
3723
3724 2007-02-01  Ulrich Drepper  <drepper@redhat.com>
3725
3726         * sysdeps/unix/sysv/linux/i386/sysdep.h (PTR_MANGLE): Roll value before
3727         returning.
3728         (PTR_DEMANGLE): Real definition now that it's not the same as
3729         PRT_MANGLE anymore.
3730         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
3731
3732         * string/strerror_l.c: New file.
3733         * string/Makefile (routines): Add strerror_l.
3734         * string/string.h: Declare strerror_l.
3735         * string/Versions: Export strerror_l for GLIBC_2.6.
3736
3737 2007-01-31  Ulrich Drepper  <drepper@redhat.com>
3738
3739         * nscd/nscd_helper.c (open_socket): Now takes request type and key
3740         as parameter.  Construct request record.  Try sending request
3741         before the first poll use, it usually succeeds.  Adjust all
3742         callers.
3743         * nscd/nscd-client.h: Define MAXKEYLEN.
3744         * nscd/connections.c (nscd_run): Don't define MAXKEYLEN here.
3745
3746 2007-01-31  Jakub Jelinek  <jakub@redhat.com>
3747
3748         * nscd/nscd-client.h (__nscd_cache_search): Remove const qualifier
3749         from return value.
3750         * nscd/nscd_helper.c: Include string.h.
3751         (__nscd_cache_search): Remove const qualifier from return value.
3752         On strict alignment architectures check hash entry and data head
3753         alignment.
3754         * nscd/nscd_getpw_r.c (nscd_getpw_r): Don't crash or fail because
3755         mmapped data during GC cycle contains garbage.  If
3756         __nscd_drop_map_ref fails, decrement mapped->counter when returning
3757         error or if retrying with NO_MAPPING, only __nscd_unmap if counter
3758         dropped to 0.
3759         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
3760         * nscd/nscd_initgroups.c (__nscd_getgrouplist): Likewise.
3761         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
3762         * nscd/nscd_getai.c (__nscd_getai): Likewise.
3763         * nscd/nscd_getserv_r.c (nscd_getserv_r): Likewise.
3764
3765 2007-01-30  Ulrich Drepper  <drepper@redhat.com>
3766
3767         * misc/hsearch_r.c (hdestroy_r): Remove unnecessary test.
3768
3769 2007-01-26  Ulrich Drepper  <drepper@redhat.com>
3770
3771         * sysdeps/i386/dl-trampoline.S (_dl_runtime_profile): Use register
3772         names not numbers in cfi_*.
3773
3774 2007-01-26  Andreas Jaeger  <aj@suse.de>
3775
3776         * sysdeps/unix/sysv/linux/sys/personality.h (ADDR_NO_RANDOMIZE,
3777         ADDR_LIMIT_3GB, PER_LINUX_32BIT, PER_LINUX32_3GB): Add.
3778         Correct values of PER_HPUX and PER_OSF4.
3779
3780 2007-01-24  Ulrich Drepper  <drepper@redhat.com>
3781
3782         * elf/dl-minimal.c: Undefine _itoa first.
3783         * stdio-common/_itoa.h: Define _itoa and _fitoa for 64-bit platforms.
3784         * malloc/mtrace.c: Revert last change.
3785         * posix/wordexp.c: Likewise.
3786
3787 2007-01-24  Jakub Jelinek  <jakub@redhat.com>
3788
3789         * sysdeps/i386/bits/byteswap.h (__bswap_32): Add __nocona__, __core2__
3790         and __geode__ to the list of i486+ CPUs.
3791         * sysdeps/x86_64/bits/byteswap.h (__bswap_32): Likewise.
3792
3793 2007-01-23  Ulrich Drepper  <drepper@redhat.com>
3794
3795         * stdio-common/_itoa.c: Include <limits.h>.
3796         * stdio-common/_itowa.c: Likewise.
3797
3798 2007-01-22  Ulrich Drepper  <drepper@redhat.com>
3799
3800         * stdio-common/_itowa.c: Don't compile _itowa for 64-bit
3801         platforms.
3802         * stdio-common/_itoa.c: Don't compile in _itoa and _fitoa for
3803         64-bit platforms.
3804         * malloc/mtrace.c (tr_where): Use _fitoa_word instead of _fitoa if
3805         possible.
3806         * posix/wordexp.c (parse_arith): Use _itoa_word instead of _itoa
3807         if possible.
3808
3809         [BZ #3902]
3810         * stdio-common/_itoa.c (_itoa): Make sure at least a zero is emitted.
3811         * stdio-common/Makefile (tests): Add bug17.
3812         * stdio-common/bug17.c: New file.
3813
3814 2007-01-19  Ulrich Drepper  <drepper@redhat.com>
3815
3816         * iconvdata/brf.c: New file.
3817         * iconvdata/testdata/BRF: New file.
3818         * iconvdata/testdata/BRF..UTF8: New file.
3819         Contributed by Samuel Thibault <samuel.thibault@ens-lyon.org>.
3820         * iconvdata/Makefile: Add rules to build BRF.
3821         * iconvdata/TESTS: Add BRF entry.
3822         * iconvdata/gconv-modules: Likewise.
3823         * iconvdata/tst-tables.sh: Likewise.
3824
3825 2007-01-18  Anton Nikishaev  <anton.nik@gmail.com>
3826
3827         * wcsmbs/wchar.h (wcstoll): Fix comment, function returns value of
3828         type `long long int', not `long int'.
3829         (wcstoq): Likewise.
3830
3831 2007-01-18  Ulrich Drepper  <drepper@redhat.com>
3832
3833         * scripts/gen-as-const.awk: Add cast to long to avoid int promotion
3834         of values on 64-bit platforms which are too large.
3835
3836 2007-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
3837             Joe Kerian  <jkerian@us.us.ibm.com>
3838
3839         [BZ #2749]
3840         * sysdeps/ieee754/ldbl-128ibm/s_copysignl.c: Include
3841         <math_ldbl_opt.h>.  Remove weak_alias.  Use long_double_symbol macro.
3842         (__copysignl): Use signbit() for comparison.
3843         * sysdeps/ieee754/ldbl-128ibm/s_fabsl.c (__fabsl): Correct parms for
3844         SET_LDOUBLE_WORDS64.
3845
3846         [BZ #2423, #2749]
3847         * sysdeps/ieee754/ldbl-128ibm/s_ceill.c: Don't include <fenv_libc.h>.
3848         (__ceill): Remove calls to fegetround(), fesetround().
3849         * sysdeps/ieee754/ldbl-128ibm/s_floorl.c: Likewise.
3850         * sysdeps/ieee754/ldbl-128ibm/s_roundl.c: Likewise.
3851         * sysdeps/ieee754/ldbl-128ibm/s_truncl.c: Likewise.
3852
3853 2007-01-17  Jakub Jelinek  <jakub@redhat.com>
3854
3855         * nscd/nscd_getserv_r.c (nscd_getserv_r): Fix pastos.
3856
3857         * sysdeps/unix/sysv/linux/getdents.c (offsetof): Remove.
3858
3859 2007-01-17  Ulrich Drepper  <drepper@redhat.com>
3860
3861         * sysdeps/unix/sysv/linux/fatal-prepare.h: Use PTHFCT_CALL to
3862         demangle pointer.
3863         * csu/libc-start.c: Likewise.
3864
3865 2007-01-16  Ulrich Drepper  <drepper@redhat.com>
3866
3867         * sysdeps/posix/system.c: Remove NO_WAITPID support, it cannot
3868         really work anyway.
3869
3870 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
3871
3872         * nscd/connections.c (servinfo): Renamed to reqinfo.  Change all
3873         users.
3874         (handle_request): Remove unnecessary tests.
3875
3876         * nscd/cache.c (cache_add): Record the failure to add to the cache.
3877
3878 2007-01-15  Jakub Jelinek  <jakub@redhat.com>
3879
3880         * soft-fp/op-common.h (FP_TRUNC): When truncating a NaN, clear
3881         workbits in semi-raw fraction.
3882
3883         * math/test-misc.c: Add new tests.
3884
3885 2007-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
3886
3887         * math/basic-test.c: Include test-skeleton.c.
3888         (TEST_TRUNC): Define.
3889         (truncdfsf_test, trunctfsf_test, trunctfdf_test): New.
3890         (main): Rename to ...
3891         (do_test): ...this.  Run new tests.
3892         (TEST_FUNCTION): Define.
3893
3894 2006-10-05  Steven Munroe  <sjmunroe@us.ibm.com>
3895             Joe Kerian  <jkerian@us.us.ibm.com>
3896
3897         [BZ #2749]
3898         * soft-fp/op-4.h (__FP_FRAC_SUB_3, __FP_FRAC_SUB_4): Correct borrow
3899         handling for high words.
3900         * soft-fp/op-common.h (_FP_OVERFLOW_SEMIRAW): Always set inexact
3901         and overflow for infinity.
3902
3903 2007-01-15  Ulrich Drepper  <drepper@redhat.com>
3904
3905         * nscd/connections.c (handle_request): Add a __builtin_expect.
3906
3907         * nscd/connections.c (serv2db): Change type into structure which
3908         also says whether this is a request for data.  Renamed to
3909         servinfo.  All users changed.
3910         (handle_request): Much simpler test whether we should search the cache.
3911
3912         * nscd/connections.c (handle_request): Fix thinko in selinux test
3913         invocation.
3914
3915         * sysdeps/generic/ldsodefs.h: Define DL_LOOKUP_SCOPE_LOCK.
3916         * elf/dl-lookup.c (add_dependency): If scope map is locked, unlock
3917         it before getting dl_load_lock and then relock.
3918         (_dl_lookup_symbol_x): Pass flags to add_dependency.
3919         When rerunning _dl_lookup_symbol_x, compute symbol_scope again in
3920         case we unlocked the scope.
3921         * elf/dl-runtime.c (_dl_fixup): Pass DL_LOOKUP_SCOPE_LOCK to
3922         _dl_lookup_symbol_x in case we locked the scope.
3923         (_dl_profile_fixup): Likewise.
3924         * elf/dl-sym.c (do_sym): In flags passed to call_dl_lookup, also
3925         set DL_LOOKUP_SCOPE_LOCK.
3926
3927 2007-01-13  Ulrich Drepper  <drepper@redhat.com>
3928
3929         * inet/Makefile: Define CFLAGS-getsrvbynm_r.c and
3930         CFLAGS-getsrvbynpt_r.c.
3931         * nscd/getsrvbynm_r.c: New file.
3932         * nscd/getsrvbypt_r.c: New file.
3933         * nscd/nscd_getserv_r.c: New file.
3934         * nscd/servicescache.c: New file.
3935         * nscd/Makefile (routines): Add nscd_getserv_r.
3936         (nscd-modules): Add getsrvbynm_r, getsrvbypt_r, and servicescache.
3937         Define CFLAGS-servicescache.c, CFLAGS-getsrvbynm_r.c, and
3938         CFLAGS-getsrvbypt_r.c.
3939         * nscd/cache.c (prune_cache): Rewrite to get re-add function from
3940         table.  Add entries for services database.
3941         * nscd/connections.c (serv2str): Mark as const.  Add entries for
3942         services database.
3943         (dbs): Add .reset_res and servdb initialization.
3944         (serv2db): Add entries for services database.
3945         (verify_persistent_db): Accept dbnr == servdb.
3946         (invalidate_cache): Rewrite database name recognition to use a table.
3947         Call res_init() if .reset_res is set for database.
3948         (handle_request): Add code to handle services database.
3949         * nscd/gai.c: Don't define __getservbyname_r.
3950         * nscd/nscd-client.h (request_type): Remove LASTDBREQ, add
3951         GETSERVBYNAME, GETSERVBYPORT, GETFDSERV.
3952         (serv_response_header): Define.
3953         (struct datahead): Add serv_response_header member.
3954         * nscd/nscd.c (parse_opt): Rewrite parsing of -i parameter value
3955         using table.
3956         * nscd/nscd.conf: Add entries for services database.
3957         * nscd/nscd.h: Adjust declaration of dbnames and serv2str.
3958         Declare serv_iov_disabled.
3959         Declare addservbyname, readdservbyname, addservbyport, and
3960         readdservbyport.
3961         * nscd/nscd_conf.c (dbnames): Mark as const.  Add services entry.
3962         (find_db): Fix error message.
3963         * nscd/nscd_proto.h: Declare __nss_not_use_nscd_services,
3964         __nscd_getservbyname_r, and __nscd_getservbyport_r.
3965         * nscd/selinux.c (perms): Add entries for services database.
3966         * nss/Versions: Export __nss_services_lookup with GLIBC_PRIVATE.
3967         * nss/nsswitch.c (__nss_disable_nscd): Also disable services database.
3968
3969         * nscd/grpcache.c: Remove obsolete code.  Cleanups.
3970         * nscd/hstcache.c: Likewise.
3971         * nscd/pwdcache.c: Likewise.
3972
3973         * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): Correct
3974         computation of keylen.
3975
3976         * include/string.h: Only redefine strndupa if this is really for
3977         libc code.
3978
3979 2007-01-12  Ulrich Drepper  <drepper@redhat.com>
3980
3981         * nscd/nscd_gethst_r.c: Minor cleanups.
3982
3983         * nscd/connections.c (handle_request): Check selinux permissions
3984         for all non-admin commands.
3985
3986         * sysdeps/i386/i486/bits/atomic.h: Define
3987         atomic_compare_and_exchange_val_acq,
3988         atomic_compare_and_exchange_bool_acq, and atomic_exchange_and_add
3989         using __sync_* built-ins for gcc >= 4.1.
3990         * sysdeps/x86_64/bits/atomic.h: Likewise.
3991
3992         [BZ #3840]
3993         * scripts/check-local-headers.sh: Restrict to testing .o.d, .os.d,
3994         and .oS.d files.
3995
3996 2007-01-05  Steven Munroe  <sjmunroe@us.ibm.com>
3997
3998         * stdlib/tst-makecontext.c: Include errno.h.  Change main()
3999         to do_test().  Define TEST_FUNCTION. Include test-skeleton.c.
4000         (do_test): Check errno and exit(0) if ENOSYS.
4001
4002 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
4003
4004         * stdlib/strtod_l.c (____STRTOF_INTERNAL): Fix handling of multi-byte
4005         thousands separators.
4006         * stdlib/Makefile: Add rules to build and run tst-strtod4.
4007         * stdlib/tst-strtod4.c: New test.
4008
4009         [BZ #3855]
4010         * stdlib/strtod_l.c (____STRTOF_INTERNAL): 0x. not followed by
4011         hexadecimal digit should accept just the initial 0.
4012         * stdlib/tst-strtod2.c (tests): New variable.
4013         (do_test): Run several tests rather than just one.
4014
4015 2007-01-11  Jakub Jelinek  <jakub@redhat.com>
4016
4017         * sysdeps/i386/soft-fp/sfp-machine.h: Remove.
4018         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
4019
4020 2007-01-10  Ulrich Drepper  <drepper@redhat.com>
4021
4022         * io/fts.c: Make sure fts_cur is always valid after return from
4023         fts_read.
4024         Patch by Miloslav Trmac <mitr@redhat.com>.
4025
4026 2006-10-27  Richard Sandiford  <richard@codesourcery.com>
4027
4028         * elf/elf.h (R_MIPS_GLOB_DAT): Define.
4029         (R_MIPS_NUM): Bump by 1.
4030
4031 2007-01-03  Jakub Jelinek  <jakub@redhat.com>
4032
4033         * posix/execvp.c: Include alloca.h.
4034         (allocate_scripts_argv): Renamed to...
4035         (scripts_argv): ... this.  Don't allocate buffer here nor count
4036         arguments.
4037         (execvp): Use alloca if possible.
4038         * posix/Makefile: Add rules to build and run tst-vfork3 test.
4039         * posix/tst-vfork3.c: New test.
4040
4041 2007-01-03  Ulrich Drepper  <drepper@redhat.com>
4042
4043         * string/Makefile (tst-strxfrm2-ENV): Define.
4044         * stdlib/Makefile (tst-strtod3-ENV): Define.
4045
4046 2007-01-02  Ulrich Drepper  <drepper@redhat.com>
4047
4048         * posix/getconf.c: Update copyright year.
4049         * nss/getent.c: Likewise.
4050         * iconv/iconvconfig.c: Likewise.
4051         * iconv/iconv_prog.c: Likewise.
4052         * elf/ldconfig.c: Likewise.
4053         * catgets/gencat.c: Likewise.
4054         * csu/version.c: Likewise.
4055         * elf/ldd.bash.in: Likewise.
4056         * elf/sprof.c (print_version): Likewise.
4057         * locale/programs/locale.c: Likewise.
4058         * locale/programs/localedef.c: Likewise.
4059         * nscd/nscd.c (print_version): Likewise.
4060         * debug/xtrace.sh: Likewise.
4061         * malloc/memusage.sh: Likewise.
4062         * malloc/mtrace.pl: Likewise.
4063         * debug/catchsegv.sh: Likewise.
4064
4065 2006-12-24  Ulrich Drepper  <drepper@redhat.com>
4066
4067         * malloc/malloc.c (sYSMALLOc): Remove some unnecessary alignment
4068         attempts.
4069
4070 2006-12-23  Ulrich Drepper  <drepper@redhat.com>
4071
4072         * posix/wordexp.c: Remove some unnecessary tests.
4073
4074 2006-12-22  Gavin Romig-Koch  <gavin@redhat.com>
4075
4076         * nis/nss_compat/compat-grp.c (internal_getgrgid_r): Don't
4077         blacklist the group till after we look it up.
4078
4079 2006-12-21  Ulrich Drepper  <drepper@redhat.com>
4080
4081         * include/atomic.h (atomic_forced_read): New macro.
4082
4083 2006-12-20  SUGIOKA Toshinobu  <sugioka@itonet.co.jp>
4084
4085         * sysdeps/unix/sysv/linux/sh/bits/shm.h: New file.
4086
4087 2006-12-19  Jakub Jelinek  <jakub@redhat.com>
4088
4089         * nss/getXXbyYY_r.c: Include atomic.h.
4090         (INTERNAL (REENTRANT_NAME)): Write startp after start_fct,
4091         add atomic_write_barrier () in between.
4092
4093         * stdlib/Makefile (tests): Add tst-makecontext.
4094         * stdlib/tst-makecontext.c: New test.
4095
4096         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
4097         (__makecontext): Don't realign uc_mcontext.uc_regs.
4098
4099 2006-11-28  Jakub Jelinek  <jakub@redhat.com>
4100
4101         * elf/dl-support.c: Include dl-procinfo.h.
4102         * sysdeps/powerpc/dl-procinfo.h (PPC_PLATFORM_POWER4,
4103         PPC_PLATFORM_PPC970, PPC_PLATFORM_POWER5, PPC_PLATFORM_POWER5_PLUS,
4104         PPC_PLATFORM_POWER6, PPC_PLATFORM_CELL_BE, PPC_PLATFORM_POWER6X):
4105         Define.
4106         (_dl_string_platform): Use PPC_PLATFORM_* macros instead of
4107         hardcoded constants.
4108         * sysdeps/powerpc/dl-procinfo.c (_dl_powerpc_platform): Use
4109         PPC_PLATFORM_* macros for array designators.
4110
4111 2006-11-11  Steven Mun