Commit Graph

11786 Commits

Author SHA1 Message Date
H.J. Lu
772f4e6a1b Add SSE4.2 support for strcmp and strncmp on x86-64. 2009-06-22 20:38:41 -07:00
H.J. Lu
3c30afc862 Add more IFUNC tests.
Mostly tests around not-exported IFUNC functions, IFUNC in statically
linked binaries and PIEs, etc.
2009-06-22 15:07:40 -07:00
Ulrich Drepper
ccab6d8f73 Fix broken up NIS groups for compat NSS module.
The check for the inclusion of a group in the result gave up too early
in case of broken-up NIS groups.  We now fall back automatically to
the slow mode of using getgrent_r.  As an optimization, if there is
not blacklist we need not perform the check in the first place and
therefore can just accept the results of the initgroups_dyn callback.
2009-06-20 20:39:19 -07:00
Ulrich Drepper
f6887a0d9a Add some more tests to malloc to detect corruptions. 2009-06-18 22:37:31 -07:00
Ulrich Drepper
d0a2af7106 Add 802.15.4 definitions to header files. 2009-06-18 07:52:38 -07:00
H.J. Lu
d8366b0970 Use +link-pie Makefile rule to link PIE ifunc tests. 2009-06-17 19:55:18 -07:00
Ulrich Drepper
f051ddfe22 Build pt_chown as PIE. 2009-06-16 20:46:42 -07:00
Andreas Schwab
f60ddf9bf7 Don't treat bug reporting message as a format string. 2009-06-16 20:34:55 -07:00
Ulrich Drepper
8a909c6430 Git didn't see the ChangeLog entry. 2009-06-16 15:59:35 -07:00
Ulrich Drepper
f793b62438 Extend pt_chown to drop privileges.
If libcap is available, use it to drop privileges in pt_chown before
starting the work to change the permissions and ownership of the
slave device.
2009-06-16 15:58:07 -07:00
Jakub Jelinek
fab8238de6 Fix x86-64 memchr for large lengths. 2009-06-16 10:23:31 -07:00
H.J. Lu
435aa54b3b Consolidate PIE linking Makefile rules. 2009-06-16 09:19:59 -07:00
Ryan S. Arnold
25bfbb9e0e Fix incorrect use of cmpldi in 32-bit PPC code.
The 32-bit PowerPC POWER6 memcpy uses the cmpldi insn when it should use a cmplwi.
BZ #10107
2009-06-16 08:29:04 -07:00
Ulrich Drepper
b34de9ea81 Fold Linux-specific grantpt code into Unix version. 2009-06-16 07:59:09 -07:00
Ulrich Drepper
eae3208e24 Run tst-fgetwc with necessary envvar. 2009-06-16 07:48:27 -07:00
Ulrich Drepper
837dea7cf5 Optimize pt_chown.
Don't call chown and chmod if not necessary.
2009-06-15 22:58:21 -07:00
Ulrich Drepper
292e3abebf Fix permission of slave device on devpts if necessary.
If devptr is misconfigured the slave device permission after grantpt
might not be 0620.  BZ #10166
2009-06-15 22:56:51 -07:00
Ulrich Drepper
395a37e379 When iterating over CPU bitmask, don't try more than CPU_SETSIZE. 2009-06-15 21:12:57 -07:00
Arnaud Ebalard
7ed520bd85 Fix type of nd_opt_home_agent_info_preference. 2009-06-15 20:33:39 -07:00
Aurelien Jarno
c518f9a4b4 Extend getent to handle the shadow database.
BZ #10207
2009-06-15 17:49:35 -07:00
Joe Landers
233a182b9e Fix memory leak when batch-reading large NIS password maps.
Not the whole was traversed in the function to free all buffers.
BZ #10203
2009-06-15 17:37:40 -07:00
Bruce Dubbs
4155d92633 (do_test): Use de_DE.UTF-8 as locale name. 2009-06-15 17:27:48 -07:00
Ulrich Drepper
48dcd0ba84 Preserve message printed before abort.
The terminal output etc is not visible in a core file.  The new
libc-internal variable __abort_msg will point to a string with the
message which has been printed before the abort in case abort is
called from inside libc.  BZ #10217
2009-06-15 16:17:09 -07:00
Ulrich Drepper
6355c99740 Fix computation of tzspec_len.
Without this it should never have worked that we can use the
embedded envvar in the timezone data files for dates after the last
matching rule.
2009-06-15 11:00:08 -07:00
Akinori Hattori
29143408ae Handle leap seconds even if no DST rule exists.
This fixes BZ #10211.
2009-06-15 10:54:26 -07:00
Ulrich Drepper
5fb55a68c1 Update from tzcode2009i. 2009-06-15 08:49:18 -07:00
Ulrich Drepper
a468a1d4a9 Update timezone data from tzdata2009i. 2009-06-15 08:39:40 -07:00
Jakub Jelinek
0212596218 libc part of prelink IFUNC support.
The dl-lookup.c changes are needed for prelink (support in prelink
checked into SVN, tested for both i?86 and x86-64), dl-irel.h just
something I discovered by code inspection.
2009-06-15 07:46:53 -07:00
Ulrich Drepper
53c068910a Update from translation team. 2009-06-14 18:11:09 -07:00
Ulrich Drepper
eb0b6cb6e1 Fix warnings when using <sys/select.h>.
gcc 4.4 is more picky.  And the x86-64 version of <bits/select.h>
contained a now unnecessary asm optimization.  Remove it.
2009-06-14 16:09:42 -07:00
Ulrich Drepper
bfdb73e145 Implement pthread_sigqueue.
The kernel from 2.3.31 on supports the rt_tgsigqueueinfo syscall.
Use it to implement the non-standard extension which, like
sigqueue, can pass additional data to the receiving thread.
2009-06-12 08:34:02 -07:00
Ulrich Drepper
310647e980 Remember we switched to single-request mode.
This change prevents repetition in most later calls of the resolver
in case the DNS server or the network connection is broken.
2009-06-11 10:07:33 -07:00
J.H.M. Dassen
88ea382fda Remove comma at end of enum. 2009-06-09 07:58:02 -07:00
Ulrich Drepper
d360a0da2b Don't premature stop parsing mode string of fopen. 2009-06-09 07:01:42 -07:00
Ulrich Drepper
b77c932329 Add SSE4.2 optimized rawmemchr implementation for x86-64. 2009-06-05 16:54:50 -07:00
Ulrich Drepper
3ab2d57a4d Optimize x86-64 strlen for SSE4.2.
The SSE4.2 implementation is used in the DSO only.  The patch also adds
some infrastructure to be used in similar code later one.
2009-06-05 11:32:00 -07:00
Ulrich Drepper
443caceb35 Fix build problems with old binutils.
Old binutils don't provide IFUNC and don't generate the section start/end
symbols we expect.  At least for now only add the initializer code for
static IFUNC relocations if multi-arch support is requested.
2009-06-05 09:42:32 -07:00
Ulrich Drepper
2f3f7b9da2 More small optimizations for x86-64 strlen. 2009-06-04 16:45:35 -07:00
Ulrich Drepper
747785f2b3 Tiny strlen for x86-64 optimization.
I didn't remove an instruction from a previous version in the final
version.
2009-06-04 10:54:29 -07:00
H.J. Lu
2f083d7511 Test for ELF IFUNC functionality. 2009-06-03 16:21:40 -07:00
Ulrich Drepper
fbb04b35e7 Terminate correct buffer.
Little typo could cause additional characters to be printed.
2009-06-03 08:30:35 -07:00
Ulrich Drepper
3d5243d416 Implement execvpe.
There is some existing practice in other OSes and it's trivial to
implement giving the existing code.  Fixes BZ #10221.
2009-06-02 07:03:02 -07:00
Ulrich Drepper
fd96f06208 Small optimization of STT_GNU_IFUNC handling.
The test to call the indirect function now includes a subtest to
checked whether the symbol is defined.  When coming to that point
this is almost always the case.  The test for STT_GNU_IFUNC on the
other hand rarely is true.  Move it to the front means we don't have
to perform the second test unless really necessary.
2009-06-01 11:49:05 -07:00
Ulrich Drepper
b7629ee33f Better error message for invalid relocatio in static binary. 2009-06-01 11:39:24 -07:00
Ulrich Drepper
8ea2372936 Fix up sched_cpucount in x86-64.
Now that static executables can handle IFUNC functions don't exclude
optimization for sched_cpucount for !SHARED.
2009-05-31 23:46:42 -07:00
Ulrich Drepper
7441470835 Finish IFUNC support for x86 and x86-64.
Add support for the IRELAIVE relocation and IFUNC in static executables.
2009-05-31 23:45:33 -07:00
Ulrich Drepper
963cb6fcb4 Simplify CPUID value handling.
SO far Intel and AMD use exactly the same bits meaning the same
things in CPUID index 1.  Simplify the code.  Should an architecture
come along which doesn't use the same semantics then it must use a
different index value than COMMON_CPUID_INDEX_1.
2009-05-31 17:52:05 -07:00
Andreas Schwab
c16a054d5e Move AC_CANONICAL_HOST before first use of $host and $build. 2009-05-31 16:54:28 -07:00
Ulrich Drepper
7f3394bdf3 Fix errno for boundary conditions in 128-bit long double.
Similar to the changes which went already in for the other formats,
follow POSIX rules for errno.
2009-05-29 12:00:22 -07:00
Ulrich Drepper
b8bb339f7d Implement longjmp checking for s390. 2009-05-29 11:58:04 -07:00
Ulrich Drepper
1de0c16183 Compact cache info data structure for x86/x86-64.
This saves about 1.5kB in the DSO.
2009-05-29 11:53:36 -07:00
Andreas Schwab
38ae768d88 Fix errno for IBM long double.
After the last addition to the math test suite PPC routines haven't
been adjusted so far.
2009-05-22 08:35:15 -07:00
Andreas Schwab
0323b051be Add ___longjmp_chk support for powerpc{32,64}. 2009-05-22 08:28:20 -07:00
Jakub Jelinek
1e1dc4e82d Implement accept4 for more archs using socketcall.
So far accept4 was only supported on archs using socketcall for x86.
This patch adds support for the remaining archs.
2009-05-22 08:25:34 -07:00
Ulrich Drepper
10495c0b0a Handle -g option for IA-64 assembler. 2009-05-21 18:54:05 -07:00
Ulrich Drepper
fa64b7f76b Fix IA-64 memchr read-ahead.
The latest stratcliff extension exposed a bug in the IA-64 memchr which
uses non-speculative loads to prefetch data.  Change the code to use
speculative loads with appropriate fixup.  Fixes BZ 10162.
2009-05-21 18:47:59 -07:00
H.J. Lu
d2812fc6d2 Add ____longjmp_chk support for IA-64. 2009-05-21 18:43:45 -07:00
H.J. Lu
e7535de78f Add missing .text directives.
The ____longjmp_chk functions on x86 and x86-64 were placed in .rodata.str1.1.
2009-05-21 18:38:11 -07:00
Ulrich Drepper
3533b1a6a6 Don't define __ASSUME_ACCEPT4 for IA-64. 2009-05-21 18:23:57 -07:00
Jakub Jelinek
d14eda9310 Remove __NR_accept4 definition.
This definition was meant to be removed before the checkin.  It was
used in the development.
2009-05-21 18:16:59 -07:00
Jakub Jelinek
a2292378d0 Correct socketcall argument for accept4.
The header had the old name (paccept).
2009-05-21 18:15:26 -07:00
Ulrich Drepper
ab09b22159 Sun agreed to a change of the license for the RPC code to a BSD-like license. 2009-05-20 21:57:37 -07:00
Ulrich Drepper
d4ab2f2a30 Danish translation update from translation team. 2009-05-20 07:12:32 -07:00
Kaz Kojima
04733592f8 Add ____longjmp_chk for SH.
Following the previous changes for x86 and x86-64.
2009-05-18 15:44:09 -07:00
Jakub Jelinek
5078fff6c4 Fix forced loop termination in nscd database lookup.
There are two issues with the forced loop exit in the nscd lookup:
1. the estimate of the entry size isn't pessimistic enough for all
   databases, resulting potentially is too early exits
2. the combination of 64-bit process and 32-bit nscd would lead to
   rejecting valid records in the database.
2009-05-18 10:19:50 -07:00
Ulrich Drepper
c457bc139e Fix typos and pretty printing in sys/wait.h. 2009-05-16 12:47:15 -07:00
Ulrich Drepper
8f0d3f499f Non-code changes to stdlib.h. 2009-05-16 12:17:55 -07:00
Ulrich Drepper
a64039b084 Unify __WAIT_INT definition in stdlib.h and sys/wait.h.
This fixes BZ #10159.  The stdlib.h definition was out of date.
2009-05-16 11:39:39 -07:00
Ulrich Drepper
fa546abe9d Move BLOCK_ALIGN* macros back.
The move to nscd-client.h was only needed for some interim version
of the patch.  The final version doesn't need it.  Undo the change.
2009-05-16 10:29:43 -07:00
Ulrich Drepper
95410b7ba2 Fix exit condition.
The patch to bound the search in the nscd caches used a wrong exit
condition.  Fixed now.
2009-05-16 10:10:32 -07:00
Ulrich Drepper
831a40494d Further robustify nscd database lookup.
We can compute an absolute maximum for the number of elements which
can fit into the currently mapped database.  Stop after that many
iterations.
2009-05-15 21:33:43 -07:00
Jakub Jelinek
cfe1fc1013 Robustify libc-side nscd database reader.
The nscd database mapped in processes can change at any time.  We
have to be more vigilant when it comes to using that memory.  Test
the data entries are valid in their entire size, don't read data
again from memory once we verified it, and make sure the trailing
pointer is not going off the deep end.
2009-05-15 21:17:08 -07:00
Jakub Jelinek
3b1b533bc3 Avoid double definition of catomic_compare_and_exchange_val_acq. 2009-05-15 21:08:55 -07:00
Ulrich Drepper
6dd78596d5 ChangeLog entries incorrectly applied. 2009-05-15 21:03:49 -07:00
Ulrich Drepper
bbc5d74dd0 Add test for range error in expm1. 2009-05-15 19:53:09 -07:00
Ulrich Drepper
b50f8e42ba Check for valid stack frame in longjmp.
If longjmp restores the stack frame to an address which is beyond
the stack frame at the time of the longjmp call it would install
an uninitialized stack frame.  If compiled with _FORTIFY_SOURCE
defined, longjmp will now bail out in this situation.
2009-05-15 19:37:13 -07:00
Ulrich Drepper
dc50b6137e Version info change for 2.11 development. 2009-05-15 19:37:12 -07:00
Ulrich Drepper
774f5a3082 Test DSOs for executable stack.
Add a text program, built to run on the host, to check all newly
built DSOs for executable stacks and fail if the stack information
is missing or indicates executable stacks.
2009-05-15 08:48:00 -07:00
Ulrich Drepper
deb84c43b1 * version.h (VERSION): Bump to 2.10.1.
* nss/getXXbyYY_r.c: If NO_COMPAT_NEEDED is defined don't define any
	compatibility functions.
	* nss/getXXent_r.c: Likewise.
	* gshadow/getsgent_r.c: Define NO_COMPAT_NEEDED.
	* gshadow/getsgnam_r.c: Likewise.
	* gshadow/Version: Remove duplicate entries.

	* sysdeps/x86_64/cacheinfo.c (intel_02_cache_info): Add missing entries
	for recent processor.
	* sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_cache_info):
	Likewise.
2009-05-10 18:38:52 +00:00
Ulrich Drepper
eb29449a9a * Makeconfig: Undo last change. Add asflags-cpu to ASFLAGS in the
same place we add ASFLAGS-config.
2009-05-09 21:58:12 +00:00
Ulrich Drepper
deb318c255 * version.h (VERSION): Bump for 2.10 release.
* include/features.h (__GLIBC_MINOR__): Bump to 10.
2009-05-09 17:40:57 +00:00
Ulrich Drepper
cf4f16cc88 [BZ #10128]
2009-05-05  Aurelien Jarno  <aurelien@aurel32.net>
	[BZ #10128]
	* resolv/res_query.c (__libc_res_nquery): If one query returns NOTIMP
	or FORMERR and the other NOERROR, don't raise an error.
2009-05-09 16:12:41 +00:00
Ulrich Drepper
23b6b46646 [BZ #10118]
2009-05-06  Ryan S. Arnold  <rsa@us.ibm.com>
	[BZ #10118]
	* Makeconfig (+asflags): New variable based upon ASFLAG or
	asflags-cpu.
	(ASFLAGS): Add override to set ASFLAGS to +asflags.
	* config.make.in (asflags-cpu): Add variable based upon
	@libc_cv_cc_submachine@ to propagate -mcpu=CPU from --with-cpu=CPU to
	the assembler.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/setcontext.S:
	Remove unneeded file now that the assembler emits _ARCH_PWR6 and
	recognizes power6 instruction set due to passing -mcpu=power6 from
	--with-cpu=power6 when compiling .S files.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/swapcontext.S:
	Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/setcontext.S:
	Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/swapcontext.S:
	Likewise.
2009-05-09 15:59:55 +00:00
Ulrich Drepper
15417de3e0 * string/stratcliff.c (do_test): Test for zero length
STRNLEN, MEMCHR, STRNCPY, STPNCPY, MEMCPY, MEMPCPY and memccpy
	at the end of the page.
2009-05-09 14:45:07 +00:00
Ulrich Drepper
4300afc169 * sysdeps/unix/sysv/linux/kernel-features.h: Define __ASSUME_AT_RANDOM. 2009-05-09 06:54:31 +00:00
Ulrich Drepper
2221e33e5d * sysdeps/x86_64/memchr.S: Handle invalid buffer pointers when
count is zero.
2009-05-09 06:40:15 +00:00
Ulrich Drepper
b5f7c4cae0 * po/da.po: Update from translation team.
2009-05-05  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/sys/personality.h: Add ADDR_COMPAT_LAYOUT
	and READ_IMPLIES_EXEC.

2009-05-04  Ulrich Drepper  <drepper@redhat.com>

	* po/da.po: Update from translation team.
2009-05-08 20:51:51 +00:00
Ulrich Drepper
1765abb309 * io/sys/stat.h (fstatat64): Guard prototype with __USE_LARGEFILE64,
guard __extern_inline wrapper with __USE_ATFILE instead of __USE_GNU.
2009-05-07 17:42:24 +00:00
Jakub Jelinek
667712b81d * sysdeps/unix/sysv/linux/ifaddrs.c: Revert unintended 2008-08-12 comment change.
2009-04-29  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/ifaddrs.c: Revert unintended 2008-08-12
	comment change.
2009-04-29 16:42:32 +00:00
Ulrich Drepper
6284c9f61e * locale/programs/locarchive.c (create_archive): Add MAP_PRIVATE
to MAP_ANON in PROT_NONE mmap64 call.
	(open_archive): Likewise.
	(file_data_available_p): Use mmap64 instead of mremap.
	(enlarge_archive): Likewise.  Update head if ah->addr changed.
	Attempt to reserve address space after mmap64 region.
2009-04-27 14:07:57 +00:00
Ulrich Drepper
f0e3c47fd6 * sysdeps/ieee754/dbl-64/s_expm1.c: Set errno for overflow.
* sysdeps/ieee754/flt-32/s_expm1f.c: Likewise.
	* sysdeps/x86_64/fpu/s_expm1l.S: Likewise.
2009-04-27 05:31:37 +00:00
Ulrich Drepper
49768bb93e * sysdeps/ieee754/k_standard.c (__kernel_standard): Pole errors in
atanh should set ERANGE.
2009-04-27 04:01:16 +00:00
Ulrich Drepper
218555e9f7 * inet/inet6_option.c (option_alloc): Add temporary variable to 2009-04-27 03:34:27 +00:00
Ulrich Drepper
e49dc847d2 [BZ #10087]
* elf/dl-runtime.c (_dl_fixup): Use DL_FIXUP_VALUE_ADDR to access
	result of lookup to make call to implement STT_GNU_IFUNC.
	(_dl_profile_fixup): Likewise.
	Patch by H.J. Lu <hjl.tools@gmail.com>.
2009-04-27 03:01:36 +00:00
Ulrich Drepper
1ac03a1e44 * nscd/connections.c (send_ro_fd): Define temporary variable to avoid
warning.

	* elf/sprof.c: Likewise.
2009-04-26 22:31:19 +00:00
Ulrich Drepper
6cc8844f1d * sysdeps/unix/sysv/linux/dl-osinfo.h (dl_fatal): Remove inline
from definition.

	* sysdeps/x86_64/dl-machine.h (elf_machine_rela): Don't define
	label if it is not used.

	* elf/dl-profile.c (_dl_start_profile): Define real-type variant
	of gmon_hist_hdr and gmon_hdr structures and use them.

	* elf/dl-load.c (open_verify): Add temporary variable to avoid
	warning.

	* nscd/nscd_helper.c (get_mapping): Avoid casts to avoid warnings.

	* sunrpc/clnt_raw.c (clntraw_private_s): Use union in definition
	to avoid cast.

	* inet/rexec.c (rexec_af): Make sa2 a union to avoid warnings.
	* inet/rcmd.c (rcmd_af): Make from a union of the various needed types
	to avoid warnings.
	(iruserok_af): Use ss_family instead of casts.

	* gmon/gmon.c (write_hist): Define real-type variant of
	gmon_hist_hdr structure and use it.
	(write_gmon): Likewise for gmon_hdr.

	* sysdeps/unix/sysv/linux/readv.c: Avoid declaration of replacement
	function if we are not going to define it.
	* sysdeps/unix/sysv/linux/writev.c: Likewise.

	* inet/inet6_option.c (optin_alloc): Add temporary variable to
	avoid warning.

	* libio/strfile.h (struct _IO_streambuf): Use correct type and
	name of VTable element.
	* libio/iovsprintf.c: Avoid casts to avoid warnings.
	* libio/iovsscanf.c: Likewise.
	* libio/vasprintf.c: Likewise.
	* libio/vsnprintf.c: Likewise.
	* stdio-common/isoc99_vsscanf.c: Likewise.
	* stdlib/strfmon_l.c: Likewise.
	* debug/vasprintf_chk.c: Likewise.
	* debug/vsnprintf_chk.c: Likewise.
	* debug/vsprintf_chk.c: Likewise.
2009-04-26 20:12:37 +00:00
Ulrich Drepper
4ec77f72fe * nss/nsswitch.c (__nss_lookup_function): En/Decrypt cached
function pointers.
2009-04-26 16:45:03 +00:00
Ulrich Drepper
82a1a4dae1 * sysdeps/ieee754/dbl-64/s_tan.c (tan): Fix -Wsequence-point warnings. 2009-04-26 15:03:11 +00:00
Ulrich Drepper
27be9b9217 * posix/bits/posix1_lim.h: Cleanup namespace a bit. 2009-04-26 06:18:19 +00:00
Ulrich Drepper
337c270829 * sysdeps/i386/fpu/s_tan.S: Set errno for ±Inf.
* sysdeps/i386/fpu/s_tanf.S: Likewise.
	* sysdeps/i386/fpu/s_tanl.S: Likewise.
	* sysdeps/ieee754/dbl-64/s_tan.c: Likewise.
	* sysdeps/ieee754/flt-32/s_tanf.c: Likewise.
	* sysdeps/x86_64/fpu/s_tanl.S: Likewise.
	* math/libm-test.inc: Add tests for errno after tan calls with
	±Inf.
2009-04-26 05:42:49 +00:00