[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commits] r15662 - in /fsf/trunk/libc: ./ elf/ include/ nscd/ posix/ scripts/ sysdeps/unix/sysv/linux/ sysdeps/unix/sysv/linux/bits/
- To: commits@xxxxxxxxxx
- Subject: [Commits] r15662 - in /fsf/trunk/libc: ./ elf/ include/ nscd/ posix/ scripts/ sysdeps/unix/sysv/linux/ sysdeps/unix/sysv/linux/bits/
- From: eglibc@xxxxxxxxxx
- Date: Wed, 02 Nov 2011 00:05:03 -0000
Author: eglibc
Date: Wed Nov 2 00:05:01 2011
New Revision: 15662
Log:
Import glibc-mainline for 2011-11-02
Modified:
fsf/trunk/libc/ChangeLog
fsf/trunk/libc/NEWS
fsf/trunk/libc/elf/dl-deps.c
fsf/trunk/libc/include/alloca.h
fsf/trunk/libc/nscd/Makefile
fsf/trunk/libc/nscd/connections.c
fsf/trunk/libc/posix/tst-rfc3484-2.c
fsf/trunk/libc/posix/tst-rfc3484-3.c
fsf/trunk/libc/posix/tst-rfc3484.c
fsf/trunk/libc/scripts/check-local-headers.sh
fsf/trunk/libc/sysdeps/unix/sysv/linux/Versions
fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/uio.h
fsf/trunk/libc/sysdeps/unix/sysv/linux/syscalls.list
Modified: fsf/trunk/libc/ChangeLog
==============================================================================
--- fsf/trunk/libc/ChangeLog (original)
+++ fsf/trunk/libc/ChangeLog Wed Nov 2 00:05:01 2011
@@ -1,3 +1,30 @@
+2011-11-01 Andreas Schwab <schwab@xxxxxxxxxxxxxx>
+
+ * include/alloca.h (stackinfo_alloca_round): Define.
+ (extend_alloca): Use it.
+ [_STACK_GROWS_UP]: Correct check for adjacent allocation.
+ * elf/dl-deps.c (_dl_map_object_deps): Don't round alloca size
+ here.
+
+ * scripts/check-local-headers.sh: Ignore libaudit.h.
+
+ * nscd/Makefile (extra-objs): Make recursively expanded.
+
+2011-11-01 Ulrich Drepper <drepper@xxxxxxxxx>
+
+ * posix/tst-rfc3484.c: Add missing __free_in6ai dummy function.
+ * posix/tst-rfc3484-2.c: Likewise.
+ * posix/tst-rfc3484-3.c: Likewise.
+
+ * sysdeps/unix/sysv/linux/bits/uio.h: Declare process_vm_readv and
+ process_vm_writev.
+ * sysdeps/unix/sysv/linux/syscalls.list: Add process_vm_readv and
+ process_vm_writev.
+ * sysdeps/unix/sysv/linux/Versions: Export process_vm_readv and
+ process_vm_writev from libc using GLIBC_2.15 version.
+
+ * nscd/connections.c: Use kernel headers instead of <netlink/netlink.h>.
+
2011-10-31 Paul Pluzhnikov <ppluzhnikov@xxxxxxxxxx>
* elf/dl-deps.c (_dl_map_object_deps): Reuse alloca space to reduce
Modified: fsf/trunk/libc/NEWS
==============================================================================
--- fsf/trunk/libc/NEWS (original)
+++ fsf/trunk/libc/NEWS Wed Nov 2 00:05:01 2011
@@ -1,4 +1,4 @@
-GNU C Library NEWS -- history of user-visible changes. 2011-10-31
+GNU C Library NEWS -- history of user-visible changes. 2011-11-1
Copyright (C) 1992-2009, 2010, 2011 Free Software Foundation, Inc.
See the end for copying conditions.
@@ -54,6 +54,8 @@
* Optimized strcasecmp and strncasecmp for AVX on x86-64.
Implemented by Ulrich Drepper.
+
+* New Linux interfaces: process_vm_readv, process_vm_writev
Version 2.14
Modified: fsf/trunk/libc/elf/dl-deps.c
==============================================================================
--- fsf/trunk/libc/elf/dl-deps.c (original)
+++ fsf/trunk/libc/elf/dl-deps.c Wed Nov 2 00:05:01 2011
@@ -221,15 +221,11 @@
if (l->l_searchlist.r_list == NULL && l->l_initfini == NULL
&& l != map && l->l_ldnum > 0)
{
- /* 16-align so extend_alloca has a chance to re-use the space.
- Note that extend_alloca is broken for recent versions of GCC
- on x86: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50938 */
- size_t new_size
- = (l->l_ldnum * sizeof (struct link_map *) + 15) & ~15;
+ size_t new_size = l->l_ldnum * sizeof (struct link_map *);
if (new_size > needed_space_bytes)
needed_space
- = extend_alloca (needed_space, needed_space_bytes, new_size);
+ = extend_alloca (needed_space, needed_space_bytes, new_size);
needed = needed_space;
}
Modified: fsf/trunk/libc/include/alloca.h
==============================================================================
--- fsf/trunk/libc/include/alloca.h (original)
+++ fsf/trunk/libc/include/alloca.h Wed Nov 2 00:05:01 2011
@@ -20,9 +20,13 @@
#include <allocalim.h>
+#ifndef stackinfo_alloca_round
+# define stackinfo_alloca_round(l) (((l) + 15) & -16)
+#endif
+
#if _STACK_GROWS_DOWN
# define extend_alloca(buf, len, newlen) \
- (__typeof (buf)) ({ size_t __newlen = (newlen); \
+ (__typeof (buf)) ({ size_t __newlen = stackinfo_alloca_round (newlen); \
char *__newbuf = __alloca (__newlen); \
if (__newbuf + __newlen == (char *) buf) \
len += __newlen; \
@@ -31,10 +35,10 @@
__newbuf; })
#elif _STACK_GROWS_UP
# define extend_alloca(buf, len, newlen) \
- (__typeof (buf)) ({ size_t __newlen = (newlen); \
+ (__typeof (buf)) ({ size_t __newlen = stackinfo_alloca_round (newlen); \
char *__newbuf = __alloca (__newlen); \
char *__buf = (buf); \
- if (__buf + __newlen == __newbuf) \
+ if (__buf + len == __newbuf) \
{ \
len += __newlen; \
__newbuf = __buf; \
Modified: fsf/trunk/libc/nscd/Makefile
==============================================================================
--- fsf/trunk/libc/nscd/Makefile (original)
+++ fsf/trunk/libc/nscd/Makefile Wed Nov 2 00:05:01 2011
@@ -43,7 +43,7 @@
others-pie += nscd
install-sbin := nscd
-extra-objs := $(nscd-modules:=.o)
+extra-objs = $(nscd-modules:=.o)
endif
Modified: fsf/trunk/libc/nscd/connections.c
==============================================================================
--- fsf/trunk/libc/nscd/connections.c (original)
+++ fsf/trunk/libc/nscd/connections.c Wed Nov 2 00:05:01 2011
@@ -34,7 +34,8 @@
#include <unistd.h>
#include <arpa/inet.h>
#ifdef HAVE_NETLINK
-# include <netlink/netlink.h>
+# include <linux/netlink.h>
+# include <linux/rtnetlink.h>
#endif
#ifdef HAVE_EPOLL
# include <sys/epoll.h>
Modified: fsf/trunk/libc/posix/tst-rfc3484-2.c
==============================================================================
--- fsf/trunk/libc/posix/tst-rfc3484-2.c (original)
+++ fsf/trunk/libc/posix/tst-rfc3484-2.c Wed Nov 2 00:05:01 2011
@@ -17,6 +17,12 @@
*p1 = *p2 = true;
*in6ai = NULL;
*in6ailen = 0;
+}
+
+void
+attribute_hidden
+__free_in6ai (struct in6addrinfo *ai)
+{
}
void
Modified: fsf/trunk/libc/posix/tst-rfc3484-3.c
==============================================================================
--- fsf/trunk/libc/posix/tst-rfc3484-3.c (original)
+++ fsf/trunk/libc/posix/tst-rfc3484-3.c Wed Nov 2 00:05:01 2011
@@ -17,6 +17,12 @@
*p1 = *p2 = true;
*in6ai = NULL;
*in6ailen = 0;
+}
+
+void
+attribute_hidden
+__free_in6ai (struct in6addrinfo *ai)
+{
}
void
Modified: fsf/trunk/libc/posix/tst-rfc3484.c
==============================================================================
--- fsf/trunk/libc/posix/tst-rfc3484.c (original)
+++ fsf/trunk/libc/posix/tst-rfc3484.c Wed Nov 2 00:05:01 2011
@@ -17,6 +17,12 @@
*p1 = *p2 = true;
*in6ai = NULL;
*in6ailen = 0;
+}
+
+void
+attribute_hidden
+__free_in6ai (struct in6addrinfo *ai)
+{
}
void
Modified: fsf/trunk/libc/scripts/check-local-headers.sh
==============================================================================
--- fsf/trunk/libc/scripts/check-local-headers.sh (original)
+++ fsf/trunk/libc/scripts/check-local-headers.sh Wed Nov 2 00:05:01 2011
@@ -29,7 +29,7 @@
BEGIN {
status = 0
exclude = "^" includedir \
- "/(asm[-/]|linux/|selinux/|gd|nss3/|sys/capability\\.h)"
+ "/(asm[-/]|linux/|selinux/|gd|nss3/|sys/capability\\.h|libaudit\\.h)"
}
/^[^ ]/ && $1 ~ /.*:/ { obj = $1 }
{
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/Versions
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/Versions (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/Versions Wed Nov 2 00:05:01 2011
@@ -163,6 +163,9 @@
sendmmsg;
}
+ GLIBC_2.15 {
+ process_vm_readv; process_vm_writev;
+ }
GLIBC_PRIVATE {
# functions used in other libraries
__syscall_rt_sigqueueinfo;
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/uio.h
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/uio.h (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/bits/uio.h Wed Nov 2 00:05:01 2011
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997, 2006 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997, 2006, 2011 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -48,3 +48,28 @@
};
#endif
+
+#if defined _SYS_UIO_H && !defined _BITS_UIO_H_FOR_SYS_UIO_H
+#define _BITS_UIO_H_FOR_SYS_UIO_H 1
+
+__BEGIN_DECLS
+
+/* Read from another process' address space. */
+extern ssize_t process_vm_readv (pid_t __pid, __const struct iovec *__lvec,
+ unsigned long int __liovcnt,
+ __const struct iovec *__rvec,
+ unsigned long int __riovcnt,
+ unsigned long int __flags)
+ __THROW;
+
+/* Write to another process' address space. */
+extern ssize_t process_vm_writev (pid_t __pid, __const struct iovec *__lvec,
+ unsigned long int __liovcnt,
+ __const struct iovec *__rvec,
+ unsigned long int __riovcnt,
+ unsigned long int __flags)
+ __THROW;
+
+__END_DECLS
+
+#endif
Modified: fsf/trunk/libc/sysdeps/unix/sysv/linux/syscalls.list
==============================================================================
--- fsf/trunk/libc/sysdeps/unix/sysv/linux/syscalls.list (original)
+++ fsf/trunk/libc/sysdeps/unix/sysv/linux/syscalls.list Wed Nov 2 00:05:01 2011
@@ -109,3 +109,6 @@
open_by_handle_at EXTRA open_by_handle_at Ci:ipi open_by_handle_at
setns EXTRA setns i:ii setns
+
+process_vm_readv EXTRA process_vm_readv i:ipipii process_vm_readv
+process_vm_writev EXTRA process_vm_writev i:ipipii process_vm_writev
_______________________________________________
Commits mailing list
Commits@xxxxxxxxxx
http://eglibc.org/cgi-bin/mailman/listinfo/commits