Commit Graph

14453 Commits

Author SHA1 Message Date
Siddhesh Poyarekar
6ef9cc37f0 Return requested size for malloc_usable_size when MALLOC_CHECK_ > 0
[BZ #1349]

malloc_usable_size returns the usable size in an allocated chunk,
which may be >= the requested size. In the case of MALLOC_CHECK_ being
exported to > 0 however, only the requested size is usable, since a
magic value is written at the end of the request size to trap writes
beyond request bounds. Hence, when MALLOC_CHECK_ is exported to > 0,
malloc_usable_size() should return the request size.
2012-09-05 21:49:30 +05:30
Andreas Schwab
4d038ae316 Increase timeout for stdlib/tst-strtod-overflow 2012-09-05 18:13:21 +02:00
Allan McRae
c4e85184d2 Improve C++ header location detection (bug 13966) 2012-09-06 00:16:24 +10:00
Andreas Schwab
a0070b7e70 Use LDBL_MIN_EXP to distinguish Intel and Motorola extended float format 2012-09-05 13:53:43 +02:00
Andreas Schwab
e1343020fb Correctly handle Motorola extended float format in tst-strtod-round 2012-09-05 12:40:45 +02:00
David S. Miller
0a9f1987ad Use sparcv8 GMP routines when building 32-bit sparcv9.
* sysdeps/sparc/sparc32/sparcv9/addmul_1.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/submul_1.S: New file.
	* sysdeps/sparc/sparc32/sparcv9/mul_1.S: New file.
2012-09-04 19:20:03 -07:00
Florian Weimer
edb3cb8831 stdlib/tst-secure-getenv.c: whitespace-only changes in comments 2012-09-04 15:01:18 +02:00
Florian Weimer
292378045c stdlib/tst-secure-getenv.c (alternative_main): Only warn on SGID failures 2012-09-04 14:36:56 +02:00
Joseph Myers
60160d83a0 Fix iogetdelim.c (latent) integer overflow (bug 9914). 2012-09-04 11:24:43 +00:00
Andreas Jaeger
bcd6c8dc64 Update libm-test-ulps 2012-09-03 15:43:56 +02:00
Liubov Dmitrieva
4ffffbd272 Add optimized sinf and cosf routines for x86 and x86-64
* sysdeps/i386/i686/fpu/multiarch/Makefile (sysdep_routines):
	Add s_sinf-sse2, s_conf-sse2.

	* sysdeps/i386/i686/fpu/multiarch/s_sinf-sse2.S: New file.
	* sysdeps/i386/i686/fpu/multiarch/s_cosf-sse2.S: New file.
	* sysdeps/i386/i686/fpu/multiarch/s_sinf.c: New file.
	* sysdeps/i386/i686/fpu/multiarch/s_cosf.c: New file.

	* sysdeps/ieee754/flt-32/s_sinf.c (SINF, SINF_FUNC): Add macros
	for using routine as __sinf_ia32.
	Use macro for function declaration and weak_alias.
	* sysdeps/ieee754/flt-32/s_cosf.c (COSF, COSF_FUNC): Add macros
	for using routine as __cosf_ia32.
	Use macro for function declaration and weak_alias.

	* sysdeps/i386/i686/fpu/multiarch/e_expf-sse2.S: Fix Copyright.
	* sysdeps/i386/i686/fpu/multiarch/e_expf.c: Fix Copyright.

	* sysdeps/x86_64/fpu/s_sinf.S: New file.
	* sysdeps/x86_64/fpu/s_cosf.S: New file.
	* sysdeps/x86_64/fpu/libm-test-ulps: Update.

	* math/libm-test.inc (cos_test): Add more test cases.
	(sin_test): Likewise.
	(sincos_test): Likewise.
2012-09-03 15:32:13 +02:00
Andreas Krebbel
511fa2864a S/390: Make IFUNC optimized mem* functions hidden. 2012-09-03 14:08:52 +02:00
H.J. Lu
5f30cfec00 Use the first element of GOT for ld.so addresses
[BZ #14538]
	* sysdeps/x86_64/dl-machine.h (elf_machine_dynamic): Use the
	first element of the GOT.
	(elf_machine_load_address): Return the difference between
	the runtime address of _DYNAMIC and elf_machine_dynamic ().
2012-09-02 05:22:24 -07:00
Allan McRae
0786794f3a Check for gawk >= 3.0 (bug 13412) 2012-09-02 09:30:18 +10:00
Joseph Myers
26889eacc2 Remove __ASSUME_POSIX_CPU_TIMERS. 2012-09-01 21:32:04 +00:00
H.J. Lu
d22e28b070 Use LD_SO to set $ld_so_name/$ld_so_version 2012-08-29 06:45:37 -07:00
Siddhesh Poyarekar
050af9c4e8 Don't make ttyname* fail if proc filesystem is not available
The ttyname and ttyname_r functions on Linux now fall back to
searching for the tty file descriptor in /dev/pts or /dev if /proc is
not available.  This allows creation of chroots without the procfs
mounted on /proc.

Fixes BZ #14516.
2012-08-29 10:04:23 +05:30
Joseph Myers
ad845c0be9 Remove __ASSUME_STAT64_SYSCALL. 2012-08-27 19:36:04 +00:00
Mike Frysinger
5dbf56af7e update NEWS 2012-08-27 13:30:49 -04:00
Joseph Myers
7efb4737dd Fix sign of zero on strtod underflow (bug 14519). 2012-08-27 16:04:19 +00:00
Joseph Myers
af92131a8e Fix strtod rounding (bug 3479). 2012-08-27 16:02:07 +00:00
Joseph Myers
d6e70f4368 Fix strtod integer/buffer overflow (bug 14459). 2012-08-27 15:59:24 +00:00
Marek Polacek
1f529f7d84 Fix some typos in comments. 2012-08-25 18:32:23 +02:00
Roland McGrath
59a629f121 Fix tst-rfc3484* build failures from USE_NSCD move to config.h. 2012-08-23 16:55:40 -07:00
Steve McIntyre
d3bafbc98e Check floating-point ABI in ARM VALID_ELF_HEADER. 2012-08-23 20:38:25 +00:00
Joseph Myers
4efcc02265 Make dl-fxstatat64.c include of fxstatat64.c use <> not "". 2012-08-23 11:34:37 +00:00
Roland McGrath
f04e213208 Fix shadow, gshadow, networks, protocols, rpc, aliases, and nscd routines for USE_NSCD case. 2012-08-22 16:06:53 -07:00
Roland McGrath
c53d909c80 Add --disable-build-nscd configure option. 2012-08-22 13:35:55 -07:00
Roland McGrath
3cc3ef96d6 BZ#13696: Add --disable-nscd configure option. 2012-08-22 13:31:12 -07:00
Dmitry V. Levin
07e5155066 Fix sed configure check for newer sed --version output. 2012-08-22 12:58:18 -07:00
Roland McGrath
35a5b08bd4 Fix libc-start change for IRELless machines. 2012-08-22 12:53:38 -07:00
Jeff Law
8479f23aa1 * sysdeps/posix/getaddrinfo.c (gaih_inet): Only use gethostbyname4_r
if the family is PF_UNSPEC.
2012-08-22 11:41:40 -06:00
Mike Frysinger
48da0b2163 rename V variable to lib-version
Due to the rise of kbuild type build systems (as the Linux kernel is a
popularly emulated environment), the V variable has become common as a
knob for controlling verbosity.  Unfortunately, if you run `make V=1`
with glibc during install, it fails with weird errors due to the glibc
build already using this variable for versioning information.

Granted, overriding this variable in the glibc context makes no sense
so people shouldn't be doing it, but when paired with build frameworks
that like to use one set of options for all packages, glibc starts to
stick out as an oddball (in that it fails).  Considering it's easy
enough to rename (it's used in just one place), let's do so.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-22 12:33:52 -04:00
Roland McGrath
8c4ae0d4e5 Leading-tabify ChangeLog. 2012-08-22 09:25:21 -07:00
Roland McGrath
5a4aaa33b7 Fix ChangeLog format. 2012-08-22 09:24:51 -07:00
Will Schmidt
15d0da8cb3 Add versions of wcscpy, wcschr, wcsrchr for power6/power7.
Initially based on the versions found in wcsmbs/* ; these files have
been changed by hand unrolling, and adding some additional variables
to allow some read-ahead to occur, which then relieves some of the
wait-for-increment/wait-for-load/wait-for-compare-results pressure
that was slowing down every iteration through the while-loop.

For 64-bit Power7, These changes give an approx 20% throughput boost
for the wcschr and wcsrchr functions; and approx 40% boost for the
wcscpy function.  32-bit improvements appear to be slightly better
with ~ %30 and ~ %45 respectively.  Results for Power6 closely match
those for power7.
2012-08-22 11:04:42 -05:00
Maxim Kuvyrkov
bcca089526 Micro-optimize critical path of strstr, strcase and memmem. 2012-08-21 18:07:47 -07:00
Maxim Kuvyrkov
99677e5755 Use pointers for traversing arrays in strstr, strcasestr and memmem. 2012-08-21 18:07:47 -07:00
Maxim Kuvyrkov
400726deef Detect EOL on-the-fly in strstr, strcasestr and memmem. 2012-08-21 18:07:47 -07:00
Maxim Kuvyrkov
20a71f2c8a Optimize first-character loop of strstr, strcasestr and memmem. 2012-08-21 18:07:47 -07:00
Roland McGrath
21ad055803 Support static IFUNC calls irrespective of USE_MULTIARCH. 2012-08-21 15:01:27 -07:00
Joseph Myers
0e1d99119e Remove __ASSUME_FADVISE64_64_SYSCALL. 2012-08-21 21:07:22 +00:00
Will Schmidt
14a50c9d23 [Powerpc] Tune/optimize powerpc{32,64}/power7/memchr.S.
Assorted tweaking, twisting and tuning to squeeze a few additional cycles
out of the memchr code.   Changes include bypassing the shift pairs
(sld,srd) when they are not required, and unrolling the small_loop that
handles short and trailing strings.

Per scrollpipe data measuring aligned strings for 64-bit, these changes
save between five and eight cycles (9-13% overall) for short strings (<32),
Longer aligned strings see slight improvement of 1-3% due to bypassing the
shifts and the instruction rearranging.
2012-08-21 14:20:55 -05:00
Roland McGrath
696da85994 Fix typos in manual wrt syslog. 2012-08-20 12:44:59 -07:00
Roland McGrath
c0f4faf046 Fix conditional on using DSOCAPS to match condition on defining it. 2012-08-20 09:51:04 -07:00
Joseph Myers
a35cbf28fb Remove __ASSUME_SWAPCONTEXT_SYSCALL. 2012-08-20 14:39:53 +00:00
Joseph Myers
445f7ecd66 Define __ASSUME_UTIMES for s390. 2012-08-20 14:38:48 +00:00
Joseph Myers
348363b2c3 Remove __ASSUME_MMAP2_SYSCALL. 2012-08-20 14:37:27 +00:00
Andreas Krebbel
bc5bc0e510 S/390: Remove 32 bit getrlimit.c. 2012-08-20 15:10:13 +02:00
Andreas Jaeger
88d506def0 Fix last patch: Add missing DUMMY variable 2012-08-18 18:01:46 +02:00
Mike Frysinger
493387d21f add attribute_hidden to __have_{sock_cloexec,pipe2,dup3
These internal knobs are not exposed as part of the public ABI, so mark
them hidden to avoid generating relocations against them.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-18 01:54:12 -04:00
Mike Frysinger
a277af22ea split assume pipe2/dup3/sock_cloexec knobs
We can't assume sock_cloexec and pipe2 are bound together as the former
defines are found in glibc only while the latter are a combo of kernel
headers and glibc.  So if we do a runtime detection of SOCK_CLOEXEC, but
pipe2() is a stub inside of glibc, we hit a problem.  For example:

main()
{
	getgrnam("portage");
	if (!popen("ls", "r"))
		perror("popen()");
}

getgrnam() will detect that the kernel supports SOCK_CLOEXEC and then set
both __have_sock_cloexec and __have_pipe2 to true.  But if glibc was built
against older kernel headers where __NR_pipe2 does not exist, glibc will
have a ENOSYS stub for it.  So popen() will always fail as glibc assumes
pipe2() works.

While this isn't too much of an issue for some arches as they added the
functionality to the kernel at the same time, not all arches are that
lucky.

Since the code already has dedicated names for each feature, delete the
defines wiring these three features together and make each one a proper
dedicated knob.

We've been carrying this in Gentoo since glibc-2.9.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-18 00:35:47 -04:00
Mike Frysinger
fdab8fd335 update linux nice.c include path too after recent file shuffle
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-17 22:42:49 -04:00
Marek Polacek
31035e80a4 Quash warning in s_sincosl. 2012-08-17 23:44:53 +02:00
Roland McGrath
e3b398f925 Adjust old #include's of sysdeps/unix/time.c to point to sysdeps/posix/time.c instead. 2012-08-17 14:16:12 -07:00
Roland McGrath
c91c505f22 Make sysheaders available in config.make. 2012-08-17 14:05:53 -07:00
Roland McGrath
7c6f9d53c1 Move some things from sysdeps/unix to sysdeps/posix. 2012-08-17 13:52:32 -07:00
Roland McGrath
3bd9e9931b Fix rule dependency in last change. 2012-08-17 13:42:27 -07:00
Jeff Law
d1f0938405 2012-08-17 Jeff Law <law@redhat.com>
* intl/Makefile (codeset_mo): New variable.
	($(codeset_mo)): New target.
	(tst-codeset.out): Depend on that.  Remove explicit rule.
	(tst-gettext3.out, tst-gettext5.out): Likewise.
	(LOCPATH-ENV, tst-codeset-ENV): New variables.
	(tst-gettext3-ENV, tst-gettext5-ENV): Likewise.
	* intl/tst-codeset.sh: Remove.
	* intl/tst-gettext3.sh: Likewise.
	* intl/tst-gettext5.sh: Likewise.
2012-08-17 14:32:19 -06:00
Roland McGrath
c31fdb83d2 Merge unix/inet/syscalls.list into unix/syscalls.list. 2012-08-17 12:56:33 -07:00
Roland McGrath
a084405777 Fix getaddrinfo for [!_STATBUF_ST_NSEC] case. 2012-08-17 11:47:06 -07:00
Roland McGrath
750c1f2a9a Make malloc build for no-threads configurations. 2012-08-17 11:29:45 -07:00
Roland McGrath
2ae1ae5cf4 Change type of constant to avoid a warning. 2012-08-17 11:17:04 -07:00
Roland McGrath
e66a42f57f Split sys/param.h out into common file and sysdeps bits/param.h file. 2012-08-17 09:55:17 -07:00
Roland McGrath
b7c08a66f6 Add a cast to silence a warning. 2012-08-17 09:49:37 -07:00
Roland McGrath
b2e1c56272 Make libio compile without _IO_MTSAFE_IO. 2012-08-17 09:35:36 -07:00
Roland McGrath
c75ccd4c3a Clean up definition of _LIBC_REENTRANT and _IO_MTSAFE_IO. 2012-08-17 09:35:15 -07:00
Gary Benson
d9195db871 Also set r->r_map when unmapping the first object in a namespace.
When unmapping the first object in a namespace, the runtime linker
did not update the externally visible pointer.  This resulted in
debuggers seeing pointers to memory that had been freed.
2012-08-17 11:44:37 +01:00
Roland McGrath
86466cd930 Do not pollute name space with internal_*netgrent functions. 2012-08-16 15:38:45 -07:00
Joseph Myers
c3c8283c06 Update longlong.h from GCC. 2012-08-16 21:37:04 +00:00
Roland McGrath
db1ee0a836 Suppress -Wunused-but-set warnings in GMP code. 2012-08-16 14:08:47 -07:00
Carlos O'Donell
30f696374d Fifth argument of la_pltenter() is not constant.
The original runtime linker auditing interface described
by Solaris allows the 5th argument of la_pltenter() to be
modified. This patch cleans up the ldsodefs.h definitions
such that the 5th argument is not constant.

At one point the 5th argument *was* constant but this was
changed with commit 2413fdba7a.
This patch updates alpha, ia64, mips, sh and sparc with similar
changes.
2012-08-16 08:41:05 -07:00
Joseph Myers
93a78ac437 Remove __ASSUME_POSIX_TIMERS. 2012-08-16 14:03:43 +00:00
Roland McGrath
4b4f2771c2 Fix dl-load.c for [!_LIBC_REENTRANT] case. 2012-08-15 17:05:10 -07:00
Roland McGrath
601c888b2f Define __rtld_lock_initialize in stub bits/libc-lock.h file. 2012-08-15 17:03:56 -07:00
Roland McGrath
176790a734 Add a missing #include to dl-sym.c. 2012-08-15 17:02:22 -07:00
Roland McGrath
329bc01868 Suppress regcomp.c warnings in 32-bit builds. 2012-08-15 16:03:58 -07:00
Roland McGrath
e04e272d21 Define O_DSYNC and O_RSYNC in generic/4.4 bits/fcntl.h file. 2012-08-15 15:47:52 -07:00
Roland McGrath
952bf94a28 Move stub lseek.c to the right directory. 2012-08-15 15:40:06 -07:00
Roland McGrath
7c99b50ae4 Fix stub clock_nanosleep #include. 2012-08-15 15:35:16 -07:00
Roland McGrath
dd924cd7cc Fix last sha512.c change to avoid compiler warning. 2012-08-15 13:59:59 -07:00
Liubov Dmitrieva
b3f479a85a Fix segmentation fault in strncasecmp for i686
2012-08-15  Liubov Dmitrieva  <liubov.dmitrieva@gmail.com>

	[BZ #14195]
        * sysdeps/i386/i686/multiarch/strcmp-sssse3.S: Fix
        segmentation fault for a case of two empty input strings.
	* string/test-strncasecmp.c (check1): Renamed to...
	(bz12205): ...this.
	(bz14195): Add new testcase for two empty input strings and N > 0.
	(test_main): Call new testcase, adapt for renamed function.
2012-08-15 21:06:55 +02:00
Andreas Jaeger
9c55864e0d Add testcase for BZ#14090 - md5/sha512 with large sizes 2012-08-15 20:56:51 +02:00
Paul Eggert
02dcb6c5a2 Fix BZ#14090 - md5/sha512 with large sizes 2012-08-15 20:49:45 +02:00
Roland McGrath
be75d75807 Remove local redefinition of MAX macro. 2012-08-15 11:40:41 -07:00
Roland McGrath
7312ca90dc Clean up x86_64/multiarch/strstr-c.c include order. 2012-08-15 11:38:57 -07:00
Roland McGrath
9a0a54864b Clean up x86_64/multiarch/memmove.c include order. 2012-08-15 11:26:02 -07:00
Roland McGrath
67cc348d55 Declare __getdirentries in internal dirent.h. 2012-08-15 10:09:18 -07:00
Roland McGrath
a3f95dcc57 Add casts to suppress warnings in system.c under [!_LIBC_REENTRANT]. 2012-08-15 10:08:32 -07:00
Mike Frysinger
ca98e1710e i386/x86_64: punt HAVE_CPP_ASM_DEBUGINFO
Pretty sure we require recent enough versions of gcc/binutils to make this
check pointless.  I can't any logs in the last few years where this check
didn't return "yes".

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-08-14 21:37:00 -04:00
Roland McGrath
1ec79f2673 Add a missing #include. 2012-08-14 16:44:27 -07:00
Roland McGrath
5908bf4662 Add a missing #include. 2012-08-14 16:04:29 -07:00
Joseph Myers
f2c05b9ecf Remove __ASSUME_CLONE_THREAD_FLAGS. 2012-08-14 22:34:04 +00:00
Andreas Jaeger
e11f5155b2 Update i386 ULPs 2012-08-14 08:02:08 +02:00
Andreas Jaeger
2fdd4f783e Use tabs instead of spaces 2012-08-14 07:59:57 +02:00
Maxim Kuvyrkov
51a9ba860a Add explicit acquire/release semantics to atomic_exchange_and_add. 2012-08-13 19:31:00 -07:00
Markus Trippelsdorf
ba6cba9eec Update x86-64 ULPs
The recent clog and clog10 fixes are causing some failing tests on my
AMD64 CPU.
2012-08-13 21:25:17 +02:00
Jeff Law
42443a4792 * manual/stdio.texi (snprintf): Clarify handling of the trailing
null byte in the output string.
2012-08-13 13:12:18 -06:00
Joseph Myers
121dce05fe Move Linux kernel version conditionals to kernel-features.h. 2012-08-10 15:53:27 +00:00
Jeff Law
bf51f568f1 [BZ #13939]
* malloc.c/arena.c (reused_arena): New parameter, avoid_arena.
        When avoid_arena is set, don't retry in the that arena.  Pick the
        next one, whatever it might be.
        (arena_get2): New parameter avoid_arena, pass through to reused_arena.
        (arena_lock): Pass in new parameter to arena_get2.
        * malloc/malloc.c (__libc_memalign): Pass in new parameter to
        arena_get2.
        (__libc_malloc): Unify retrying after main arena failure with
        __libc_memalign version.
        (__libc_valloc, __libc_pvalloc, __libc_calloc): Likewise.
2012-08-10 09:37:52 -06:00