Commit Graph

15325 Commits

Author SHA1 Message Date
Andreas Jaeger
8a67a4b343 Fix integer overflow in sysdeps/unix/sysv/linux/bits/sched.h
[BZ #15448]
	* sysdeps/unix/sysv/linux/bits/sched.h (__CPU_SET_S)
	(__CPU_CLR_S, __CPU_ISSET_S): Avoid integer overflow.
2013-05-10 20:28:40 +02:00
Joseph Myers
51df539d98 Start converting libm tests from code to data. 2013-05-10 16:45:04 +00:00
Siddhesh Poyarekar
5c637fe5ee Fix coding style 2013-05-10 17:44:27 +05:30
Joseph Myers
ab2b94613d Fix tgamma errno setting on domain error (bug 6809). 2013-05-10 11:35:11 +00:00
Florian Weimer
4c0fe6fe42 Use *stat64 instead of *stat in installed programs
This ensures reliable operation on file systems with inode numbers
which do not fit into 32 bits.
2013-05-10 11:42:17 +02:00
Andreas Jaeger
a3375d2990 Localize rpcgen
[BZ #15395]
	* sunrpc/rpc_main.c (main): Invoke setlocale and textdomain for
	localization.
	Include <locale.h>.
2013-05-10 08:07:14 +02:00
Carlos O'Donell
3612972234 Add more comments to dlclose() algorithm.
The algorithm for scanning dependencies upon dlclose is
less than immediately obvious. This patch adds two bits
of comments that explain why you start the dependency
search at l_initfini[1], and why you need to restart
the search.

---

2013-05-09  Carlos O'Donell  <carlos@redhat.com>

	* elf/dl-close.c (_dl_close_worker): Add comments.
2013-05-09 17:37:15 -04:00
Joseph Myers
ed41ffefc3 Fix ldbl-128ibm cos range reduction near pi/2 (bug 15359). 2013-05-09 21:30:08 +00:00
Joseph Myers
d0213cd0b6 Fix ldbl-128 cos range reduction near pi/2 (bug 15429). 2013-05-09 21:28:54 +00:00
Joseph Myers
0d3e777af2 Use M_SQRT1_2l instead of local M_SQRT_2_2 in libm-test.inc. 2013-05-09 14:33:30 +00:00
Joseph Myers
24f5606614 Use M_PI_34l consistently in libm-test.inc. 2013-05-09 14:13:10 +00:00
Joseph Myers
faa7f8119f Use decimal constants in defining M_* in libm-test.inc. 2013-05-09 12:24:44 +00:00
Adhemerval Zanella
e9a5e0fd54 Update powerpc libm-test ULPs 2013-05-08 15:06:56 -05:00
Joseph Myers
a0d9f9d745 Factor out initializers for libm-test.inc constants. 2013-05-08 16:10:44 +00:00
Joseph Myers
ae08db3ba0 Use correct TEST_* macros for jn, ldexp and yn tests. 2013-05-08 16:09:54 +00:00
Joseph Myers
f44bf14a9c Move some libm-test logic for running tests from gen-libm-test.pl to libm-test.inc. 2013-05-08 12:02:22 +00:00
Joseph Myers
d8cd06db62 Improve tgamma accuracy (bugs 2546, 2560, 5159, 15426). 2013-05-08 11:58:18 +00:00
Ondrej Bilka
bb7cf681e9 Preheat CPU in benchtests.
A benchmark could be skewed by CPU initialy working on minimal
frequency and speeding up later. We first run code in loop
to partialy fix this issue.
2013-05-08 08:25:08 +02:00
Aurelien Jarno
ba85394732 Only defined DEV_BSIZE if not already defined. 2013-05-08 00:00:46 +02:00
Roland McGrath
8347c74cc5 Declare _dl_skip_args in ldsodefs.h header. 2013-05-07 14:49:26 -07:00
Carlos O'Donell
e8dd47916f manual/message.texi: Fix english and clarify.
Rewrite the first paragraph to talk about users not humans,
and to use correct English.

Clarify that it is the mapping of messages to IDs that
impacts the design of the message translation API.

---

2013-05-07  Carlos O'Donell  <carlos@redhat.com>

	* manual/message.texi (Message Translation): Talk about users.
	Message to key mapping impacts design.
2013-05-07 12:33:44 -04:00
Roland McGrath
a917305749 Fix glob64 broken by cleanup. 2013-05-06 17:11:12 -07:00
Roland McGrath
976e2f0381 Remove a dead declaration. 2013-05-06 17:06:50 -07:00
Roland McGrath
9723ffc524 Move dummy glob64.c alongside glob.c that defines glob64. 2013-05-06 16:11:11 -07:00
Roland McGrath
962e6658a3 Flesh out stub not-cancel.h file. 2013-05-06 16:03:35 -07:00
Roland McGrath
ee586a6d5c Move getlogin_r_chk to login/ subdir. 2013-05-06 15:58:44 -07:00
Roland McGrath
355f916505 Fix poll stub implementation. 2013-05-06 15:23:51 -07:00
Roland McGrath
bd9ffde61a Move ptsname_r_chk to login/ subdir. 2013-05-06 15:19:14 -07:00
Roland McGrath
8fb16a04e6 Move getlogin, getlogin_r, setlogin to login/ subdir. 2013-05-06 15:10:09 -07:00
Roland McGrath
b99b892f68 Fix stub setrlimit implementation. 2013-05-06 14:58:00 -07:00
Roland McGrath
c74058300c Clean up POSIX.1 implementation of truncate. 2013-05-06 14:56:13 -07:00
Joseph Myers
9ea3513c91 Initialize x in frexp, modf, remqou tests. 2013-05-06 20:23:40 +00:00
Joseph Myers
5bf96de5ef Consistently use TEST_f_f1 in gamma tests. 2013-05-06 20:23:01 +00:00
Adhemerval Zanella
16e616a72f PowerPC: fix hypot/hypof FP exceptions
This patch fixes hypot/hypotf spurious floating-point exceptions
generate by internal operations.
2013-05-06 14:40:17 -05:00
Roland McGrath
d5e8275481 Split _dl_writev out from _dl_debug_vdprintf. 2013-05-06 11:30:41 -07:00
Joseph Myers
b7dab1e4d7 Remove unused libm-test expected-failure mechanism. 2013-05-04 16:45:15 +00:00
Joseph Myers
a7548d41a7 Use static initializers for constant variables in libm-test.inc. 2013-05-04 13:08:34 +00:00
Roland McGrath
cc0e6ed81f Consolidate definitions of _FORTIFY_SOURCE wrappers for open{,64}{,at}. 2013-05-03 16:33:26 -07:00
Roland McGrath
60bfd54cbb Fix NEED_DL_SYSINFO{,_DSO} conditionalization in _dl_sysdep_start. 2013-05-03 15:09:48 -07:00
Adhemerval Zanella
83e7640f6b PowerPC: Add time vDSO support
PowerPC kernel now provides a vDSO implementation for time syscall
(commit fcb41a2030abe0eb716ef0798035ef9562097f42). This patch changes
time syscall wrapper to use the vDSO when available. It also changes
the default non vDSO time on PowerPC to use sysdeps/posix/time.c
(since gettimeofday is a vDSO call).
2013-05-03 15:04:54 -05:00
Joseph Myers
c31a5b1e8f Consistently use TEST_f_f1 in lgamma tests. 2013-05-03 19:05:37 +00:00
Joseph Myers
d5dc2af390 Don't use IGNORE_ZERO_INF_SIGN in hypot tests. 2013-05-03 19:04:52 +00:00
Andreas Jaeger
164fd39d05 Sync with Linux 3.9
* sysdeps/gnu/netinet/tcp.h (TCP_TIMESTAMP): New value, from
	Linux 3.9.
	* sysdeps/unix/sysv/linux/bits/socket.h (PF_VSOCK, AF_VSOCK):
	Add.
	(PF_MAX): Adjust for VSOCK change.
2013-05-03 20:52:00 +02:00
Adhemerval Zanella
8237f48c90 Update powerpc libm-test ULPs 2013-05-03 07:33:49 -05:00
Carlos O'Donell
9df02941c2 Add yesstr and nostr to en_CA, es_AR, and es_ES
We add yesstr and nostr to three more locales.
We ignore the issue of capitalization of the first
character in yesstr and nostr. All locales will need
to be revisited to make this uniform policy change.

---

2013-05-02  Carlos O'Donell  <carlos@redhat.com>

	[BZ #15264]
	* localedata/locales/en_CA (LC_MESSAGES): Define yesstr and nostr.
	* localedata/locales/es_AR (LC_MESSAGES): Copy es_ES.
	* localedata/locales/es_ES (LC_MESSAGES): Define yesstr and nostr.
2013-05-02 23:24:21 -04:00
Allan McRae
bb5f27adca Add bug 14952 to ChangeLog and NEWS
Fixed with commit 0695940b.
2013-05-03 11:14:43 +10:00
David S. Miller
d422395e31 Update Sparc ULPs.
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2013-05-02 12:25:28 -07:00
Ondrej Bilka
a07c5731d6 Remove duplicate __strcmp_cg
The __strcmp_cg code was duplicate of of __strcmp_gc. This patch unifies
these two cases into one.
2013-05-01 20:55:06 +02:00
Roland McGrath
1324e37f2e Add missing #include in sysdeps/posix/opendir.c. 2013-05-01 09:27:09 -07:00
Richard Smith
0695940b8a Use __gnu_inline__ for __extern_always_inline in g++-4.2
Use the __gnu_inline__ attribute in _FORTIFY_SOURCE's __extern_always_inline
macro whenever the compiler supports it. Previously this macro only included
the __gnu_inline__ attribute in C++ mode for gcc >= 4.3. However,
__gnu_inline__ semantics are always desired for the __extern_always_inline
functions, and are available in g++ 4.2 (and some releases of g++ 4.1, and
also in Clang, which claims to be g++ 4.2).

This change stops g++-4.2 from emitting weak definitions for the fortify
wrapper functions if they can't be inlined, and also improves Clang
compatibility.
2013-05-01 21:59:01 +10:00
Joseph Myers
10de07f5fd Fix catan, catanh spurious underflows (bug 15423). 2013-05-01 10:07:00 +00:00
Adhemerval Zanella
cb4d54147e Update powerpc libm-test ULPs 2013-04-30 08:51:02 -05:00
Joseph Myers
caf84319c1 Fix catan, catanh inaccuracy from atan2 denominators near 0 (bug 15416). 2013-04-30 11:27:35 +00:00
Siddhesh Poyarekar
6dbe713d85 Format s_sin.c 2013-04-30 14:18:57 +05:30
Siddhesh Poyarekar
f0ee064b7d Allow multiple input domains to be run in the same benchmark program
Some math functions have distinct performance characteristics in
specific domains of inputs, where some inputs return via a fast path
while other inputs require multiple precision calculations, that too
at different precision levels.  The way to implement different domains
was to have a separate source file and benchmark definition, resulting
in separate programs.

This clutters up the benchmark, so this change allows these domains to
be consolidated into the same input file.  To do this, the input file
format is now enhanced to allow comments with a preceding # and
directives with two # at the begining of a line.  A directive that
looks like:

tells the benchmark generation script that what follows is a different
domain of inputs.  The value of the 'name' directive (in this case,
foo) is used in the output.  The two input domains are then executed
sequentially and their results collated separately.  with the above
directive, there would be two lines in the result that look like:

func(): ....
func(foo): ...
2013-04-30 14:17:57 +05:30
Siddhesh Poyarekar
d569c6eeb4 Maintain runtime of each benchmark at ~10 seconds
The idea to run benchmarks for a constant number of iterations is
problematic.  While the benchmarks may run for 10 seconds on x86_64,
they could run for about 30 seconds on powerpc and worse, over 3
minutes on arm.  Besides that, adding a new benchmark is cumbersome
since one needs to find out the number of iterations needed for a
sufficient runtime.

A better idea would be to run each benchmark for a specific amount of
time.  This patch does just that.  The run time defaults to 10 seconds
and it is configurable at command line:

  make BENCH_DURATION=5 bench
2013-04-30 14:10:20 +05:30
Roland McGrath
a6a242fe7c Make stub fchdir.c define __fchdir. 2013-04-29 14:30:37 -07:00
Joseph Myers
f2da779309 Integrate errno testing better in libm-test.inc. 2013-04-29 20:36:48 +00:00
Andreas Jaeger
c3ed8088e4 BZ#15084: Apparent typos in strings in res_debug.c
[BZ #15084]
	* resolv/res_debug.c (p_option): Fix strings for RES_USEBSTRING
	and RES_USEVC.
2013-04-29 21:17:30 +02:00
Andreas Jaeger
f1a24198af BZ#15085: Fix comments/strings for RES_NOCHECKNAME
[BZ #15085]
	* resolv/resolv.h (RES_NOCHECKNAME): Mark as unimplemented.
	* resolv/res_debug.c (p_option): Mark RES_NOCHECKNAME as
	unimplemented.
2013-04-29 21:11:13 +02:00
Andreas Jaeger
9ce3b2cbd2 BZ#15380: Fix initstate error return
[BZ #15380]
	* stdlib/random.c (__initstate): Return NULL if
	__initstate fails.
2013-04-29 21:02:16 +02:00
Andreas Jaeger
b1a36ceb3b BZ#15086: Fix res_debug printing of options
[BZ# 15086]
	* resolv/res_debug.c (p_option): Handle RES_NOALIASES,
	RES_KEEPTSIG, RES_BLAST, RES_NOIP6DOTINT, RES_SNGLKUP,
	RES_SNGLKUPREOP.
2013-04-29 21:00:57 +02:00
Adhemerval Zanella
7e7b6f36a9 Update powerpc libm-test ULPs 2013-04-29 12:10:03 -05:00
Joseph Myers
4d14f4499d Add missing semicolons to libm-test.inc tests. 2013-04-29 13:48:19 +00:00
Joseph Myers
5b4217d71f Fix catan, catanh spurious overflows (bug 15409). 2013-04-27 14:57:41 +00:00
Andreas Jaeger
4220c3ef77 Fix guards for qecvt
[BZ #15007]
	* stdlib/stdlib.h: Update guards for qecvt.
	* stdlib/bits/stdlib-ldbl.h: Sync guards for qecvt etc with
	<stdlib.h>.
2013-04-27 16:21:53 +02:00
Allan McRae
4721b2d1ca Update i386 libm-test ULPs 2013-04-27 15:13:12 +10:00
Joseph Myers
9457fd952c Fix catan, catanh missing underflows (bug 15406). 2013-04-26 19:26:22 +00:00
Joseph Myers
f0302940e7 Fix csin, csinh, ccos, ccosh missing underflows (bug 15405). 2013-04-26 19:25:19 +00:00
Adhemerval Zanella
aa630f590c PowerPC: modf optimization fix
This patch fix the 3c0265394d commits
by correctly setting minimum architecture for modf PPC optimization
to power5+ instead of power5 (since only on power5+ round/ceil will
be inline to inline assembly).
2013-04-26 13:00:56 -05:00
Markus Trippelsdorf
1b8359836d Update x86_64 ULPs
2013-04-26  Markus Trippelsdorf  <markus@trippelsdorf.de>

	* sysdeps/x86_64/fpu/libm-test-ulps: Update.
2013-04-26 09:30:46 +02:00
Joseph Myers
73709b2611 Move x86_64-specific audit tests to sysdeps/x86_64/. 2013-04-25 19:23:11 +00:00
Paul Pluzhnikov
1ef74943ce Get rid of __STDC_FORMAT_MACROS, __STDC_LIMIT_MACROS and __STDC_CONSTANT_MACROS 2013-04-25 11:08:31 -07:00
Maciej W. Rozycki
ae9552cf7b Declare __ehdr_start with hidden visibility.
This avoids a linker bug triggering for MIPS SVR4 binaries:

http://sourceware.org/bugzilla/show_bug.cgi?id=15365

and regardless serves as a documentation of intent.
2013-04-25 16:14:49 +01:00
Maciej W. Rozycki
93fd48c5f6 soft-fp: s/sNAN/NAN/ -- no sNaNs are ever produced. 2013-04-25 16:02:26 +01:00
Carlos O'Donell
418601aa84 math: Use accurate answers for cos and sincos.
Use the most accurate hex literals possible for the answers to the
cos and sincos tests that vary according to the error in the rounding
of PI/2.

---

2013-04-24  Carlos O'Donell  <carlos@redhat.com>

	* math/libm-test.inc (cos_test): Use accurate hex constants.
	(sincost_test): Likewise.
2013-04-24 16:29:33 -04:00
Joseph Myers
5e22180060 Add catan, catanh tests at +/- 1 and +/- i. 2013-04-24 20:14:15 +00:00
Joseph Myers
77f143fdb4 Use suffixed floating-point constants in float and long double catan/catanh. 2013-04-24 18:59:37 +00:00
Joseph Myers
2f38fbfe09 Fix catan, catanh inaccuracy through use of log (bug 15394). 2013-04-24 18:49:13 +00:00
Siddhesh Poyarekar
45d69176e8 Mention files in which fast/slow paths of math functions are implemented 2013-04-24 14:07:40 +05:30
Roland McGrath
87f51853ce Add generic POSIX implementation of C11 timespec_get. 2013-04-23 15:28:59 -07:00
Adhemerval Zanella
3c0265394d PowerPC: modf optimization
This patch implements modf/modff optimization for POWER by focus
on FP operations instead of relying in integer ones.
2013-04-23 13:38:52 -05:00
Siddhesh Poyarekar
ff491d14a2 Consistently use ISSPACE to check for whitespace
Resolves #14888.

This only really manifests itself when there are no spaces between
format specifiers, which is not allowed by POSIX, but is allowed by
the glibc implementation.
2013-04-23 15:32:42 +05:30
Andreas Schwab
7ed3f4e859 Remove non-standard initialisation of flexible array member
This avoids GCC bug 28865.
2013-04-23 10:31:03 +02:00
Heiko Carstens
5c95f7b66b S/390: Change struct statfs[64] member types to unsigned values
Kay Sievers reported that coreutils' stat tool has a problem with
s390's statfs[64] definition:

> The definition of struct statfs::f_type needs a fix. s390 is the only
> architecture in the kernel that uses an int and expects magic
> constants lager than INT_MAX to fit into.
>
> A fix is needed to make Fedora boot on s390, it currently fails to do
> so. Userspace does not want to add code to paper-over this issue.

[...]

> Even coreutils cannot handle it:
>   #define RAMFS_MAGIC  0x858458f6
>   # stat -f -c%t /
>   ffffffff858458f6
>
>   #define BTRFS_SUPER_MAGIC 0x9123683E
>   # stat -f -c%t /mnt
>   ffffffff9123683e

The bug is caused by an implicit sign extension within the stat tool:

out_uint_x (pformat, prefix_len, statfsbuf->f_type);

where the format finally will be "%lx".
A similar problem can be found in the 'tail' tool.
s390 is the only architecture which has an int type f_type member in
struct statfs[64]. Other architectures have either unsigned ints or
long values, so that the problem doesn't occur there.

Therefore change the type of the f_type member to unsigned int, so
that we get zero extension instead sign extension when assignment to
a long value happens.

Reported-by: Kay Sievers <kay@vrfy.org>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
2013-04-23 08:59:35 +02:00
Jan-Benedict Glaw
d34c915826 Fix getent to call endspent rather than endpwent for shadow database. 2013-04-22 10:44:31 -07:00
Siddhesh Poyarekar
2169712d9c Minor cleanup in getaddrinfo
Replace repeated computations of alloca size with a local variable
that stores the computed value.
2013-04-22 10:24:00 +05:30
David S. Miller
29c5de9984 Russian translations update.
* po/ru.po: Update Russion translation from translation project.
2013-04-21 15:36:14 -04:00
Adam Conrad
ccdad15df5 Remove __wur from setfsuid and setfsgid. 2013-04-18 23:58:16 -06:00
Carlos O'Donell
5c5b07da03 Update ChangeLog.
Update ChangeLog for 0f122b8d12.
2013-04-17 17:17:59 -07:00
Carlos O'Donell
0f122b8d12 Configuring for i386 is no longer supported.
We no longer support configuring for i386, nor do we
elide such a configuration to i686. Configuring with
i386-* is a failure, and we provide an example of
how to fix that.

---

2013-04-17  Carlos O'Donell  <carlos@redhat.com>

	* configure.in: Remove i386 configure warning. Remove i386 case.
	* configure: Regenerate.
	* sysdeps/i386/configure.in: Raise error if config_machine is i386.
	Add example to error message.
	* sysdeps/i386/configure: Regenerate.
2013-04-17 17:13:20 -07:00
Siddhesh Poyarekar
037714dd49 Add benchmark inputs for cos and tan 2013-04-17 17:45:55 +05:30
Roland McGrath
e913141d5f Don't test O_RDONLY case in tst-aio7. 2013-04-16 12:11:26 -07:00
Siddhesh Poyarekar
4856bcd2df Define NOT_IN_libc when compiling benchmark programs 2013-04-16 18:34:03 +05:30
Siddhesh Poyarekar
a296407432 Add target bench-clean 2013-04-16 14:07:21 +05:30
David Holsgrove
9fbf9acabe Adding MicroBlaze support to elf/elf.h
Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2013-04-16 09:48:08 +10:00
Thomas Schwinge
207d1e2a6c Fix coding-style violation.
Introduced in commit ee091edf1a.
2013-04-15 22:11:30 +02:00
Andreas Schwab
306dfba9e1 Properly check for short writes when sending the response in nscd 2013-04-15 10:33:52 +02:00
Siddhesh Poyarekar
206a669911 Write to bench.out-tmp only once
Appending benchmark program output on every run could result in a case
where the benchmark run was cancelled, resulting in a partially
written file.  This file gets used again on the next run, resulting in
results being appended to old results.

It could have been possible to remove the file before every benchmark
run, but it is easier to just write the output to bench.out-tmp only
once.
2013-04-15 13:53:35 +05:30
Andreas Schwab
0582f6b3d6 nscd: don't fork twice 2013-04-15 09:49:55 +02:00