This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch ibm/2.22/master updated. glibc-2.22-12-ga0a9f8d


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, ibm/2.22/master has been updated
       via  a0a9f8d957b130d5bcc49d097b8ba0e15728eca4 (commit)
       via  7d9fd6a5a1733fd10099188b507795d09869c147 (commit)
       via  c146a4a740c6242b2ad4842f9e717153277dd9a6 (commit)
       via  64c25345714d792b283c8c8469d58f898d1ef109 (commit)
       via  9031106ea063f0476bdabf3f5ec22758cdcf987b (commit)
       via  a34d1c6afc86521d6ad17662a3b5362d8481514c (commit)
       via  561a9f11a974a447acb3dd03550a05df701a900e (commit)
       via  19742d3d5f8fb0cdc95b20c32fbee503d1048286 (commit)
       via  8415fb8d4f05c023b9d79e44dff197cc285fd1e5 (commit)
       via  f903b287fea685366c0c8b59b01a1df940553458 (commit)
      from  3fd69b26341e358cfe903313624ad8fd28810a96 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=a0a9f8d957b130d5bcc49d097b8ba0e15728eca4

commit a0a9f8d957b130d5bcc49d097b8ba0e15728eca4
Merge: 7d9fd6a 64c2534
Author: Tulio Magno Quites Machado Filho <tuliom@linux.vnet.ibm.com>
Date:   Thu Aug 27 10:55:46 2015 -0300

    Merge branch 'release/2.22/master' into ibm/2.22/master

diff --cc ChangeLog
index 826c5b1,8230149..e3646eb
--- a/ChangeLog
+++ b/ChangeLog
@@@ -1,22 -1,55 +1,74 @@@
+ 2015-08-25  Roland McGrath  <roland@hack.frob.com>
+ 
+ 	* sysdeps/nacl/start.c (_start): Call __nacl_main instead of main
+ 	if the weak reference is not null.
+ 
+ 2015-08-19  Andrew Senkevich  <andrew.senkevich@intel.com>
+ 
+ 	[BZ #18796]
+ 	* scripts/test-installation.pl: Don't add -lmvec to build options
+ 	if libmvec wasn't built.
+ 	* NEWS: Mention this fix.
+ 
+ 2015-08-10  Maxim Ostapenko  <m.ostapenko@partner.samsung.com>
+ 
+ 	[BZ #18778]
+ 	* elf/Makefile (tests): Add Add tst-nodelete2.
+ 	(modules-names): Add tst-nodelete2mod.
+ 	(tst-nodelete2mod.so-no-z-defs): New.
+ 	($(objpfx)tst-nodelete2): Likewise.
+ 	($(objpfx)tst-nodelete2.out): Likewise.
+ 	(LDFLAGS-tst-nodelete2): Likewise.
+ 	* elf/dl-close.c (_dl_close_worker): Move DF_1_NODELETE clearing
+ 	out of loop through all loaded libraries.
+ 	* elf/tst-nodelete2.c: New file.
+ 	* elf/tst-nodelete2mod.c: Likewise.
+ 
+ 2015-08-10  Andreas Schwab  <schwab@suse.de>
+ 
+ 	[BZ #18781]
+ 	* sysdeps/unix/sysv/linux/openat.c (__OPENAT) [MORE_OFLAGS]: Add
+ 	MORE_OFLAGS to oflag.
+ 	* io/test-lfs.c (do_test): Test openat64.
+ 
+ 2015-08-08  John David Anglin  <danglin@gcc.gnu.org>
+ 
+ 	[BZ #18787]
+ 	* sysdeps/unix/sysv/linux/hppa/bits/atomic.h (_LWS_CLOBBER): Revise
+ 	clobber registers.
+ 	(atomic_compare_and_exchange_val_acq): Use register asms to assign
+ 	operand registers.  Use register %r20 for EAGAIN and EDEADLOCK checks.
+ 	Cast return to __typeof (oldval).
+ 
+ 2015-08-08  Mike Frysinger  <vapier@gentoo.org>
+ 
+ 	* sysdeps/unix/sysv/linux/microblaze/sysdep.h: Wrap the whole file
+ 	in _LINUX_MICROBLAZE_SYSDEP_H defines.  Include sysdeps/unix/sysdep.h
+ 	and delete sys/syscall.h include.
+ 
+ 2015-08-07  Mike Frysinger  <vapier@gentoo.org>
+ 
+ 	* sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Add rtld_hidden_def.
+ 
 +2015-08-26  Paul E. Murphy  <murphyp@linux.vnet.ibm.com>
 +
 +	* sysdeps/unix/sysv/linux/powerpc/elision-lock.c
 +	(__arch_compare_and_exchange_val_32_acq): Remove and use common
 +	definition.  ISA 2.07B no longer requires full sync.
 +
 +2015-08-26  Paul E. Murphy  <murphyp@linux.vnet.ibm.com>
 +
 +	* sysdeps/powerpc/powerpc32/sysdep.h (ABORT_TRANSACTION): Use
 +	register other than r0 for tabort, it has special meaning.
 +	* sysdeps/powerpc/powerpc64/sysdep.h (ABORT_TRANSACTION): Likewise
 +	* sysdeps/unix.sysv/linux/powerpc/syscall.S (syscall): Abort
 +	transaction before starting syscall.
 +
 +2015-08-06  Tulio Magno Quites Machado Filho  <tuliom@linux.vnet.ibm.com>
 +
 +	* elf/get-dynamic-info.h (elf_get_dynamic_info): Remove assert
 +	if DT_RUNPATH and DT_RPATH flags are found in ld.so.
 +
  2015-08-05  Zack Weinberg  <zackw@panix.com>
  
  	* misc/regexp.h: Update comments.

http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=7d9fd6a5a1733fd10099188b507795d09869c147

commit 7d9fd6a5a1733fd10099188b507795d09869c147
Author: Paul E. Murphy <murphyp@linux.vnet.ibm.com>
Date:   Wed Aug 26 12:21:18 2015 -0500

    powerpc: Revert to default atomic ops in elision code
    
    Power ISA 2.07B section B.5.5 relaxed the barrier requirement around a
    TLE enabled lock.  It is now identical to a traditional lock.
    
    2015-08-26  Paul E. Murphy  <murphyp@linux.vnet.ibm.com>
    
    	* sysdeps/unix/sysv/linux/powerpc/elision-lock.c
    	(__arch_compare_and_exchange_val_32_acq): Remove and use common
    	definition.  ISA 2.07B no longer requires full sync.

diff --git a/ChangeLog b/ChangeLog
index 0f3a3c1..826c5b1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2015-08-26  Paul E. Murphy  <murphyp@linux.vnet.ibm.com>
 
+	* sysdeps/unix/sysv/linux/powerpc/elision-lock.c
+	(__arch_compare_and_exchange_val_32_acq): Remove and use common
+	definition.  ISA 2.07B no longer requires full sync.
+
+2015-08-26  Paul E. Murphy  <murphyp@linux.vnet.ibm.com>
+
 	* sysdeps/powerpc/powerpc32/sysdep.h (ABORT_TRANSACTION): Use
 	register other than r0 for tabort, it has special meaning.
 	* sysdeps/powerpc/powerpc64/sysdep.h (ABORT_TRANSACTION): Likewise
diff --git a/sysdeps/unix/sysv/linux/powerpc/elision-lock.c b/sysdeps/unix/sysv/linux/powerpc/elision-lock.c
index 7f9bcc2..26d272e 100644
--- a/sysdeps/unix/sysv/linux/powerpc/elision-lock.c
+++ b/sysdeps/unix/sysv/linux/powerpc/elision-lock.c
@@ -23,27 +23,6 @@
 #include <elision-conf.h>
 #include "htm.h"
 
-/* PowerISA 2.0.7 Section B.5.5 defines isync to be insufficient as a
-   barrier in acquire mechanism for HTM operations, a strong 'sync' is
-   required.  */
-#undef __arch_compare_and_exchange_val_32_acq
-#define __arch_compare_and_exchange_val_32_acq(mem, newval, oldval)           \
-  ({                                                                          \
-      __typeof (*(mem)) __tmp;                                                \
-      __typeof (mem)  __memp = (mem);                                         \
-      __asm __volatile (                                                      \
-                        "1:     lwarx   %0,0,%1" MUTEX_HINT_ACQ "\n"          \
-                        "       cmpw    %0,%2\n"                              \
-                        "       bne     2f\n"                                 \
-                        "       stwcx.  %3,0,%1\n"                            \
-                        "       bne-    1b\n"                                 \
-                        "2:     sync"                                         \
-                        : "=&r" (__tmp)                                       \
-                        : "b" (__memp), "r" (oldval), "r" (newval)            \
-                        : "cr0", "memory");                                   \
-      __tmp;                                                                  \
-  })
-
 #if !defined(LLL_LOCK) && !defined(EXTRAARG)
 /* Make sure the configuration code is always linked in for static
    libraries.  */

http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=c146a4a740c6242b2ad4842f9e717153277dd9a6

commit c146a4a740c6242b2ad4842f9e717153277dd9a6
Author: Paul E. Murphy <murphyp@linux.vnet.ibm.com>
Date:   Fri Aug 21 14:39:01 2015 -0500

    powerpc: Fix tabort usage in syscalls
    
    Fix usage of tabort in generated syscalls.  r0 has special meaning
    when used with this instruction, thus it will not generate
    persistent errors, nor return an error code.  This mitigates poor
    CPU usage when performing elided critical sections.
    
    Additionally, transactions should be aborted when entering a user
    invoked syscall.  Otherwise the results of the transaction may be
    undefined.
    
    2015-08-25  Paul E. Murphy  <murphyp@linux.vnet.ibm.com>
    
    	* sysdeps/powerpc/powerpc32/sysdep.h (ABORT_TRANSACTION): Use
    	register other than r0 for tabort, it has special meaning.
    	* sysdeps/powerpc/powerpc64/sysdep.h (ABORT_TRANSACTION): Likewise
    	* sysdeps/unix.sysv/linux/powerpc/syscall.S (syscall): Abort
    	transaction before starting syscall.

diff --git a/ChangeLog b/ChangeLog
index 63557b2..0f3a3c1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2015-08-26  Paul E. Murphy  <murphyp@linux.vnet.ibm.com>
+
+	* sysdeps/powerpc/powerpc32/sysdep.h (ABORT_TRANSACTION): Use
+	register other than r0 for tabort, it has special meaning.
+	* sysdeps/powerpc/powerpc64/sysdep.h (ABORT_TRANSACTION): Likewise
+	* sysdeps/unix.sysv/linux/powerpc/syscall.S (syscall): Abort
+	transaction before starting syscall.
+
 2015-08-06  Tulio Magno Quites Machado Filho  <tuliom@linux.vnet.ibm.com>
 
 	* elf/get-dynamic-info.h (elf_get_dynamic_info): Remove assert
diff --git a/sysdeps/powerpc/powerpc32/sysdep.h b/sysdeps/powerpc/powerpc32/sysdep.h
index e16fe3e..ecb492a 100644
--- a/sysdeps/powerpc/powerpc32/sysdep.h
+++ b/sysdeps/powerpc/powerpc32/sysdep.h
@@ -95,8 +95,8 @@ GOT_LABEL:			;					      \
     lwz      0,TM_CAPABLE(2);	\
     cmpwi    0,0;		\
     beq	     1f;		\
-    li	     0,_ABORT_SYSCALL;	\
-    tabort.  0;			\
+    li       11,_ABORT_SYSCALL;	\
+    tabort.  11;		\
     .align 4;			\
 1:
 #else
diff --git a/sysdeps/powerpc/powerpc64/sysdep.h b/sysdeps/powerpc/powerpc64/sysdep.h
index bf2a884..a9d37ad 100644
--- a/sysdeps/powerpc/powerpc64/sysdep.h
+++ b/sysdeps/powerpc/powerpc64/sysdep.h
@@ -279,8 +279,8 @@ LT_LABELSUFFIX(name,_name_end): ; \
     lwz      0,TM_CAPABLE(13);	\
     cmpwi    0,0;		\
     beq	     1f;		\
-    li	     0,_ABORT_SYSCALL;	\
-    tabort.  0;			\
+    li       11,_ABORT_SYSCALL;	\
+    tabort.  11;		\
     .align 4;                   \
 1:
 #else
diff --git a/sysdeps/unix/sysv/linux/powerpc/syscall.S b/sysdeps/unix/sysv/linux/powerpc/syscall.S
index 157e3e3..4477303 100644
--- a/sysdeps/unix/sysv/linux/powerpc/syscall.S
+++ b/sysdeps/unix/sysv/linux/powerpc/syscall.S
@@ -18,6 +18,7 @@
 #include <sysdep.h>
 
 ENTRY (syscall)
+	ABORT_TRANSACTION
 	mr   r0,r3
 	mr   r3,r4
 	mr   r4,r5

-----------------------------------------------------------------------

Summary of changes:
 ChangeLog                                         |   66 +++++++++++++++++++++
 NEWS                                              |    6 ++
 elf/Makefile                                      |   11 +++-
 elf/dl-close.c                                    |   15 +++--
 elf/tst-nodelete2.c                               |   37 ++++++++++++
 elf/{tst-znodelete-zlib.cc => tst-nodelete2mod.c} |    3 +-
 io/test-lfs.c                                     |   21 ++++++-
 scripts/test-installation.pl                      |   13 ++++-
 sysdeps/hppa/dl-symaddr.c                         |    1 +
 sysdeps/nacl/start.c                              |    6 ++-
 sysdeps/powerpc/powerpc32/sysdep.h                |    4 +-
 sysdeps/powerpc/powerpc64/sysdep.h                |    4 +-
 sysdeps/unix/sysv/linux/hppa/bits/atomic.h        |   35 +++++------
 sysdeps/unix/sysv/linux/microblaze/sysdep.h       |    7 ++-
 sysdeps/unix/sysv/linux/openat.c                  |    5 ++
 sysdeps/unix/sysv/linux/powerpc/elision-lock.c    |   21 -------
 sysdeps/unix/sysv/linux/powerpc/syscall.S         |    1 +
 17 files changed, 199 insertions(+), 57 deletions(-)
 create mode 100644 elf/tst-nodelete2.c
 rename elf/{tst-znodelete-zlib.cc => tst-nodelete2mod.c} (50%)


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]