Commit Graph

6037 Commits

Author SHA1 Message Date
Ulrich Drepper
1c376f5bbe * sysdeps/unix/sysv/linux/sys/timex.h: Add definitions from kernel
headers up to 2.6.30.
2009-04-21 00:42:50 +00:00
Ulrich Drepper
11cad88ce9 * sysdeps/unix/sysv/linux/kernel-features.h: All supported
architectures have preadv/pwritev in 2.6.30.
2009-04-18 02:37:43 +00:00
Ulrich Drepper
571ac26f69 * sysdeps/posix/preadv.c: Reading of zero bytes is no error.
* sysdeps/posix/readv.c: Likewise.
	Reported by Markus Armbruster <armbru@redhat.com>.
2009-04-17 21:26:34 +00:00
Ulrich Drepper
e775ec11c4 * sysdeps/unix/sysv/linux/wordsize-64/fallocate.c: Likewise. 2009-04-15 17:10:28 +00:00
Ulrich Drepper
6a3d03ff58 * sysdeps/unix/sysv/linux/getsysstats.c (next_line): Make sure there
are always at least 4 bytes in the returned line.

2009-04-15  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Check
	__libc_use_alloca (8192), if the stack is too small use 512 bytes
	instead of 8K.  Stop searching in /proc/stat after hitting first
	line not starting with cpu.
	(next_line): Truncate too long
	lines at buffer size * 3/4 instead of pretending there were line
	breaks inside of large lines.
2009-04-15 15:57:47 +00:00
Ulrich Drepper
ae650a41ef * sysdeps/x86_64/mp_clz_tab.c: New file. 2009-04-15 04:30:41 +00:00
Ulrich Drepper
353f210707 2009-03-17 Ryan S. Arnold <rsa@us.ibm.com>
Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/fallocate.c: Handle old kernel headers.
	* sysdeps/unix/sysv/linux/fallocate64.c: Likewise.
2009-04-15 00:39:57 +00:00
Ulrich Drepper
fc0c57057e * sysdeps/sh/libc-tls.c: New file.
* sysdeps/sh/bits/setjmp.h (__jmp_buf): Give name to structure type.
2009-04-15 00:17:33 +00:00
Ulrich Drepper
27396822d7 __tls_get_addr for SH. 2009-04-15 00:16:11 +00:00
Ulrich Drepper
893a5fd440 Optimizations from GMP.
* sysdeps/x86_64/add_n.S: New file.
	* sysdeps/x86_64/addmul_1.S: New file.
	* sysdeps/x86_64/lshift.S: New file.
	* sysdeps/x86_64/mul_1.S: New file.
	* sysdeps/x86_64/rshift.S: New file.
	* sysdeps/x86_64/sub_n.S: New file.
	* sysdeps/x86_64/submul_1.S: New file.
2009-04-14 22:26:05 +00:00
Ulrich Drepper
7fd23f1f3b mpn_add_n for x86-64. 2009-04-14 22:24:59 +00:00
Jakub Jelinek
e42e88abb6 * sysdeps/powerpc/powerpc32/elf/start.S: Ensure .data is non-empty.
* sysdeps/powerpc/powerpc64/elf/start.S: Likewise. 
* sysdeps/sparc/sparc32/elf/start.S: Likewise. 
* sysdeps/sparc/sparc64/elf/start.S: Likewise.
2009-04-14  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/powerpc/powerpc32/elf/start.S: Ensure .data is non-empty.
	* sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
	* sysdeps/sparc/sparc32/elf/start.S: Likewise.
	* sysdeps/sparc/sparc64/elf/start.S: Likewise.
2009-04-14 20:57:18 +00:00
Ulrich Drepper
b8a3bd8256 * sysdeps/unix/sysv/linux/kernel-features.h: SH also has
preadv/pwritev.
2009-04-14 18:31:03 +00:00
Ulrich Drepper
84aa52d7e9 * sysdeps/x86-64/strrchr.S: New file. 2009-04-14 05:58:16 +00:00
Ulrich Drepper
f140a0d53d * sysdeps/x86_64/rawmemchr.S: New file. 2009-04-10 07:57:20 +00:00
Ulrich Drepper
e9b4d069c1 * stdio-common/vfprintf.c (vfprintf): Slightly more compact code. 2009-04-10 02:51:29 +00:00
Ulrich Drepper
24030b0f78 function if it is not defined. Add some necessary casts. 2009-04-09 22:06:07 +00:00
Ulrich Drepper
f9fe75e945 * sysdeps/unix/sysv/linux/preadv.c: Avoid prototype for static
function if it is not defined.
	* sysdeps/unix/sysv/linux/pwritev.c: Likewise.
2009-04-09 21:45:21 +00:00
Ulrich Drepper
28b2771a4b * sysdeps/unix/sysv/linux/kernel-features.h: SPARC and IA64 also
have preadv/pwritev in 2.6.30.
2009-04-09 18:52:57 +00:00
Ulrich Drepper
0f9c8b4841 * sysdeps/unix/sysv/linux/preadv64.c (PREAD): Use __libc_pread64
to avoid PLT slot.
2009-04-08 19:24:34 +00:00
Ulrich Drepper
4c8b8cc332 * malloc/malloc.c (_int_realloc): Add parameter with old block
size.  Remove duplicated test.  Don't handle mmap'ed blocks here.
	Adjust all callers.
	* malloc/hooks.c (realloc_check): Adjust _int_realloc call.
2009-04-08 18:00:34 +00:00
Ulrich Drepper
cd57745bd8 * sysdeps/x86_64/strchrnul.S: New file.
depending libcrypt on -lfreebl3.
2009-04-07 23:22:10 +00:00
Ulrich Drepper
1a2ec17ba6 * sysdeps/unix/sysv/linux/kernel-features.h: Power also has
preadv/pwritev in 2.6.30.
2009-04-07 17:38:50 +00:00
Ulrich Drepper
ddba0f1700 * string/stratcliff.c (do_test): Add memchr tests..
* sysdeps/x86_64/memchr.S: Fix handling of end of buffer after
	first read quad word.
2009-04-07 14:53:04 +00:00
Ulrich Drepper
322e23db24 * sysdeps/x86_64/memchr.S: New file. 2009-04-07 06:36:33 +00:00
Ulrich Drepper
1df6f9d808 * sysdeps/x86_64/strchr.S: Likewise. 2009-04-06 03:29:26 +00:00
Ulrich Drepper
a152f366dc * sysdeps/x86_64/strlen.S: Optimize by using SSE2 instructions. 2009-04-05 18:49:28 +00:00
Ulrich Drepper
e109c6124f * misc/Makefile (routines): Add preadv, preadv64, pwritev, pwritev64.
* misc/Versions: Export preadv, preadv64, pwritev, pwritev64 for
	GLIBC_2.10.
	* misc/sys/uio.h: Declare preadv, preadv64, pwritev, pwritev64.
	* sysdeps/unix/sysv/linux/kernel-features.h: Add entries for preadv
	and pwritev.
	* misc/preadv.c: New file.
	* misc/preadv64.c: New file.
	* misc/pwritev.c: New file.
	* misc/pwritev64.c: New file.
	* sysdeps/posx/preadv.c: New file.
	* sysdeps/posx/preadv64.c: New file.
	* sysdeps/posx/pwritev.c: New file.
	* sysdeps/posx/pwritev64.c: New file.
	* sysdeps/unix/sysv/linux/preadv.c: New file.
	* sysdeps/unix/sysv/linux/preadv64.c: New file.
	* sysdeps/unix/sysv/linux/pwritev.c: New file.
	* sysdeps/unix/sysv/linux/pwritev64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/preadv64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/pwritev64.c: New file.
2009-04-03 19:57:16 +00:00
Ulrich Drepper
7166c77ad0 * sysdeps/unix/sysv/linux/readv.c (__libc_readv): Fix calling of
compatibility code.
	* sysdeps/unix/sysv/linux/writev.c (__libc_writev): Likewise.

2009-04-01  Ulrich Drepper  <drepper@redhat.com>
2009-04-03 18:50:34 +00:00
Ulrich Drepper
2dbe6afe7c * sysdeps/unix/sysv/linux/kernel-features.h: Define
__ASSUME_COMPLETE_READV_WRITEV.
	* sysdeps/unix/sysv/linux/readv.c: No need for userlevel fallback
	with modern kernels.
	* sysdeps/unix/sysv/linux/writev.c: Likewise.

	* sysdeps/posix/readv.c: Since read is a cancellation point we have
	to free a possible malloced buffer in case of cancellation.
	* sysdeps/posix/writev.c: Likewise for write.

c2009-04-01  Ulrich Drepper  <drepper@redhat.com>
2009-04-03 17:23:13 +00:00
Ulrich Drepper
a065c0076a Add missing protocol numbers.
* sysdeps/unix/sysv/linux/bits/socket.h: Add missing protocol numbers.
2009-04-03 03:48:08 +00:00
Ulrich Drepper
3ce976cd88 * sysdeps/unix/sysv/linux/sys/eventfd.h (EFD_SEMAPHORE): Define. 2009-04-01 19:25:51 +00:00
Ulrich Drepper
22c8319345 * elf/dl-open.c: Keep track of used name spaces and only iterate over
those which are used.
	* elf/dl-addr.c: Likewise.
	* elf/dl-caller.c: Likewise.
	* elf/dl-fini.c: Likewise.
	* elf/dl-iteratephdr.c: Likewise.
	* elf/dl-libc.c: Likewise.
	* elf/dl-load.c: Likewise.
	* elf/dl-support.c: Likewise.
	* elf/dl-sym.c: Likewise.
	* elf/rtld.c: Likewise.
	* sysdeps/generic/ldsodefs.h: Likewise.
2009-04-01 00:26:36 +00:00
Ulrich Drepper
20739e5454 * elf/dl-load.c: Remove support for systems without MAP_ANON.
* elf/dl-minimal.c: Likewise.
	* elf/dl-misc.c: Likewise.
	* elf/rtld.c: Likewise.
	* sysdeps/generic/ldsodefs.h: Likewise.
2009-03-31 22:03:24 +00:00
Ulrich Drepper
3fb8a93ae9 Yet more changes to match sort function type change. 2009-03-17 00:35:38 +00:00
Ulrich Drepper
2ca285b098 [BZ #9733]
* elf/dl-load.c (_dl_map_object_from_fd): Only call audit hooks
	if we are not loading a new audit library.
	* elf/dl-reloc (_dl_relocate_object): Third parameter is now a bitmask.
	Only use profiling trampoline for auditing if we are not relocating
	an audit library.
	* elf/dl-open.c (dl_open_worker): Adjust _dl_relocate_object call.
	* elf/rtld.c: Likewise.
	* sysdeps/generic/ldsodefs.h: Adjust _dl_relocate_object prototype.
2009-03-16 02:16:30 +00:00
Ulrich Drepper
eee6b14327 [BZ #9759]
* dirent/dirent.h: Adjust prototypes of scandir, scandir64, alphasort,
	alphasort64, versionsort, and versionsort64 to POSIX 2008.
	* dirent/alphasort.c: Adjust implementation to type change.
	* dirent/alphasort64.c: Likewise.
	* dirent/scandir.c: Likewise.
	* dirent/versionsort.c: Likewise.
	* dirent/versionsort64.c: Likewise.
	* sysdeps/wordsize-64/alphasort.c: Add hack to hide alphasort64
	declaration.
	* sysdeps/wordsize-64/versionsort.c: Add hack to hide versionsort64
	declaration.
2009-03-15 21:33:19 +00:00
Ulrich Drepper
906dd40db3 [BZ #9881]
* inet/inet6_rth.c (inet6_rth_add): Add some error checking.
	Patch mostly by Yang Hongyang <yanghy@cn.fujitsu.com>.
	* inet/Makefile (tests): Add tst-inet6_rth.
	* inet/tst-inet6_rth.c: New file.

	alignment of La_x86_64_regs.  Store xmm parameters.
2009-03-15 19:16:16 +00:00
Ulrich Drepper
a42ad61bae * elf/dl-runtime.c (reloc_offset): Define.
(reloc_index): Define.
	(_dl_fixup): Rename reloc_offset parameter to reloc_arg.
	(_dl_fixup_profile): Likewise.  Use reloc_index instead of
	computing index from reloc_offset.
	(_dl_call_pltexit): Likewise.
	* sysdeps/x86_64/dl-trampoline.S (_dl_runtime_resolve): Just pass
	the relocation index to _dl_fixup.
	(_dl_runtime_profile): Likewise for _dl_fixup_profile and
	_dl_call_pltexit.
	* sysdeps/x86_64/dl-runtime.c: New file.
2009-03-15 00:26:14 +00:00
Ulrich Drepper
1f7c90a722 [BZ #9893]
* sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Fix
	alignement of La_x86_64_regs.  Store xmm parameters.
	Patch mostly by Jiri Olsa <olsajiri@gmail.com>.
2009-03-14 23:57:33 +00:00
Ulrich Drepper
f81ce2888d * sysdeps/i386/dl-machine.h (elf_machine_rel): Implement
STT_GNU_IFUNC handling.
	(elf_machine_rela): Likewise.
2009-03-14 15:54:49 +00:00
Ulrich Drepper
425ce2edb9 * config.h.in (USE_MULTIARCH): Define.
* configure.in: Handle --enable-multi-arch.
	* elf/dl-runtime.c (_dl_fixup): Handle STT_GNU_IFUNC.
	(_dl_fixup_profile): Likewise.
	* elf/do-lookup.c (dl_lookup_x): Likewise.
	* sysdeps/x86_64/dl-machine.h: Handle STT_GNU_IFUNC.
	* elf/elf.h (STT_GNU_IFUNC): Define.
	* include/libc-symbols.h (libc_ifunc): Define.
	* sysdeps/x86_64/cacheinfo.c: If USE_MULTIARCH is defined, use the
	framework in init-arch.h to get CPUID values.
	* sysdeps/x86_64/multiarch/Makefile: New file.
	* sysdeps/x86_64/multiarch/init-arch.c: New file.
	* sysdeps/x86_64/multiarch/init-arch.h: New file.
	* sysdeps/x86_64/multiarch/sched_cpucount.c: New file.

	* config.make.in (experimental-malloc): Define.
	* configure.in: Handle --enable-experimental-malloc.
	* malloc/Makefile: Handle experimental-malloc flag.
	* malloc/malloc.c: Implement PER_THREAD and ATOMIC_FASTBINS features.
	* malloc/arena.c: Likewise.
	* malloc/hooks.c: Likewise.
	* malloc/malloc.h: Define M_ARENA_TEST and M_ARENA_MAX.
2009-03-13 23:53:18 +00:00
Ulrich Drepper
e7f110cdbd * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Add branch
prediction.  A few size optimizations.
2009-03-12 06:31:25 +00:00
Ulrich Drepper
1454da2195 * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Use
.machine push; .machine "power6" and .machine pop around mtfsf
	insns outside of _ARCH_PWR6 define.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S:
	Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S:
	Likewise.
	* sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (_SET_DI_FPSCR): Likewise.
	* sysdeps/powerpc/fpu/fenv_libc.h (fesetenv_register,
	relax_fenv_state): Likewise.
2009-03-10 04:47:30 +00:00
Ulrich Drepper
bddec78c7b Use .machine push; .machine "power6" and .machine pop around mtfsf insns outside of _ARCH_PWR6 define. 2009-03-10 04:46:08 +00:00
Ulrich Drepper
99eb932f75 * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Declare fallocate{,64}.
* sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
	* sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
	* sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
	* sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
	* sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
2009-03-03 13:53:19 +00:00
Ulrich Drepper
749f5cc968 * sysdeps/unix/sysv/linux/fallocate.c: New file.
* sysdeps/unix/sysv/linux/fallocate64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/fallocate64.c: New file.
	* sysdeps/unix/sysv/linux/wordsize-64/fallocate.c: New file.
	* sysdeps/unix/sysv/linux/i386/fallocate64.c: New file.
	* sysdeps/unix/sysv/linux/i386/fallocate.c: New file.
	* sysdeps/unix/sysv/linux/Versions: Export fallocate and fallocate64
	for GLIBC_2.10.
	* sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
	Add fallocate and fallocate64.

	* io/fcntl.h: Pretty printing.
2009-03-02 16:15:58 +00:00
Ulrich Drepper
134a97667f * sysdeps/powerpc/powerpc32/power7/fpu/Implies: New file.
* sysdeps/powerpc/powerpc32/power7/Implies: Likewise.
	* sysdeps/powerpc/powerpc64/power7/fpu/Implies: Likewise.
	* sysdeps/powerpc/powerpc64/power7/Implies: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/fpu/Implies:
	Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/fpu/Implies:
	Likewise.
2009-03-02 13:50:16 +00:00
Ulrich Drepper
a3c375065d 2009-02-26 Andrew Stubbs <ams@codesourcery.com>
SUGIOKA Toshinobu  <sugioka@itonet.co.jp>

	* sysdeps/unix/sysv/linux/sh/sys/procfs.h: Don't include signal.h,
	sys/ucontext.h and asm/elf.h.  Include sys/user.h.
	* sysdeps/unix/sysv/linux/sh/sys/user.h: Don't include features.h
	and asm/user.h.  Include asm/ptrace.h.
	(PTRACE_GETREGS, PTRACE_SETREGS, PTRACE_GETFPREGS,
	PTRACE_SETFPREGS, PTRACE_GETFDPIC, PTRACE_GETFDPIC_EXEC,
	PTRACE_GETFDPIC_INTERP, PTRACE_GETDSPREGS, PTRACE_SETDSPREGS):
	Undefine.
	(start_thread): Don't undefine.
	(elf_greg_t, ELF_NGREG, elf_fpregset_t, user_fpu_struct, user):
	Define.
2009-02-26 20:23:36 +00:00
Ulrich Drepper
6cbe890a9d * wctype/wctype.h: The *_l functions are in POSIX 2008.
* wcsmbs/wchar.h: mbsnrtowcs, open_wmemstream, wcpcpy, wcpncpy,
	wcscasecmp, wcsdup, wcsncasecmp, wcsnlen, wcsnrtombs,
	wcscasecmp_l, wcsncasecmp_l, wcscoll_l, and wcsxfrm_l.
	* sysdeps/mach/hurd/bits/posix_opt.h: Reset value of macros from
	200112L to 200809L.
	* sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise.
	* posix/getconf.c (vars): Add _SC_THREAD_ROBUST_PRIO_INHERIT and
	_SC_THREAD_ROBUST_PRIO_PROTECT entries.
	* bits/confname.h: Add _SC_THREAD_ROBUST_PRIO_INHERIT and
	_SC_THREAD_ROBUST_PRIO_PROTECT.
	* posix/unistd.h: fexecve is in POSIX 2008.
	* time/time.h: strftime_l is in POSIX 2008.
	* io/sys/stat.h: futimens is in POSIX 2008.
	* string/strings.h: strcasecmp_l and strncasecmp_l are in POSIX 2008.
	* string/string.h: stpcpy, stpncpy, strndup, strnlen, strsignal,
	strcoll_l, strerror_l, and strxfrm_l are in POSIX 2008.
	* stdlib/stdlib.h: mkdtemp is in POSIX 2008.
2009-02-26 16:53:30 +00:00