aboutsummaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorIgor Zamyatin <igor.zamyatin@intel.com>2015-07-09 06:50:12 -0700
committerH.J. Lu <hjl.tools@gmail.com>2015-07-09 06:50:12 -0700
commit14c5cbabc2d11004ab223ae5eae761ddf83ef99e (patch)
treeee8516f9bb7f2e9435d05641dfa415e795f7b65e /ChangeLog
parent632b3db8e2ba1f454872f7ebe1335966f8161c43 (diff)
downloadglibc-14c5cbabc2d11004ab223ae5eae761ddf83ef99e.tar
glibc-14c5cbabc2d11004ab223ae5eae761ddf83ef99e.tar.gz
glibc-14c5cbabc2d11004ab223ae5eae761ddf83ef99e.tar.bz2
glibc-14c5cbabc2d11004ab223ae5eae761ddf83ef99e.zip
Preserve bound registers for pointer pass/return
We need to save/restore bound registers and add a BND prefix before branches in _dl_runtime_profile so that bound registers for pointer pass and return are preserved when LD_AUDIT is used. [BZ #18134] * sysdeps/i386/configure.ac: Set HAVE_MPX_SUPPORT. * sysdeps/i386/configure: Regenerated. * sysdeps/i386/dl-trampoline.S (PRESERVE_BND_REGS_PREFIX): New. (_dl_runtime_profile): Save and restore Intel MPX return bound registers when calling _dl_call_pltexit. Add PRESERVE_BND_REGS_PREFIX before return. * sysdeps/i386/link-defines.sym (LRV_BND0_OFFSET): New. (LRV_BND1_OFFSET): Likewise. * sysdeps/x86/bits/link.h (La_i86_retval): Add lrv_bnd0 and lrv_bnd1. * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Fix typo in bndmov encoding. * sysdeps/x86_64/dl-trampoline.h: Properly save and restore Intel MPX bound registers. Add PRESERVE_BND_REGS_PREFIX before branch instructions to preserve bounds.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog20
1 files changed, 20 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 1aeb84b0e9..f8765bb6b7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2015-07-09 Igor Zamyatin <igor.zamyatin@intel.com>
+ H.J. Lu <hongjiu.lu@intel.com>
+
+ [BZ #18134]
+ * sysdeps/i386/configure.ac: Set HAVE_MPX_SUPPORT.
+ * sysdeps/i386/configure: Regenerated.
+ * sysdeps/i386/dl-trampoline.S (PRESERVE_BND_REGS_PREFIX): New.
+ (_dl_runtime_profile): Save and restore Intel MPX return bound
+ registers when calling _dl_call_pltexit. Add
+ PRESERVE_BND_REGS_PREFIX before return.
+ * sysdeps/i386/link-defines.sym (LRV_BND0_OFFSET): New.
+ (LRV_BND1_OFFSET): Likewise.
+ * sysdeps/x86/bits/link.h (La_i86_retval): Add lrv_bnd0 and
+ lrv_bnd1.
+ * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Fix
+ typo in bndmov encoding.
+ * sysdeps/x86_64/dl-trampoline.h: Properly save and restore
+ Intel MPX bound registers. Add PRESERVE_BND_REGS_PREFIX before
+ branch instructions to preserve bounds.
+
2015-07-09 Adhemerval Zanella <adhemerval.zanella@linaro.org>
* sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist