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