svn commit: r345625 - in head: contrib/elftoolchain/readelf lib/libc lib/libthr libexec/rtld-elf sys/sys

Ed Maste emaste at FreeBSD.org
Thu Mar 28 02:12:34 UTC 2019


Author: emaste
Date: Thu Mar 28 02:12:32 2019
New Revision: 345625
URL: https://svnweb.freebsd.org/changeset/base/345625

Log:
  revert r341429 "disable BIND_NOW in libc, libthr, and rtld"
  
  r345620 by kib@ fixed the rtld issue that caused a crash at startup
  during resolution of libc's ifuncs with BIND_NOW.
  
  PR:		233333
  Sponsored by:	The FreeBSD Foundation

Modified:
  head/contrib/elftoolchain/readelf/readelf.c
  head/lib/libc/Makefile
  head/lib/libthr/Makefile
  head/libexec/rtld-elf/Makefile
  head/sys/sys/elf_common.h

Modified: head/contrib/elftoolchain/readelf/readelf.c
==============================================================================
--- head/contrib/elftoolchain/readelf/readelf.c	Thu Mar 28 01:12:44 2019	(r345624)
+++ head/contrib/elftoolchain/readelf/readelf.c	Thu Mar 28 02:12:32 2019	(r345625)
@@ -3490,6 +3490,7 @@ dump_notes(struct readelf *re)
 
 static struct flag_desc note_feature_ctl_flags[] = {
 	{ NT_FREEBSD_FCTL_ASLR_DISABLE,		"ASLR_DISABLE" },
+	{ NT_FREEBSD_FCTL_IMPLIED_MAX_PROT,	"IMPLIED_MAX_PROT" },
 	{ 0, NULL }
 };
 

Modified: head/lib/libc/Makefile
==============================================================================
--- head/lib/libc/Makefile	Thu Mar 28 01:12:44 2019	(r345624)
+++ head/lib/libc/Makefile	Thu Mar 28 02:12:32 2019	(r345625)
@@ -6,8 +6,6 @@ SHLIBDIR?= /lib
 
 .include <src.opts.mk>
 
-# BIND_NOW in libc results in segfault at startup (PR 233333)
-MK_BIND_NOW=	no
 # Force building of libc_pic.a
 MK_TOOLCHAIN=	yes
 

Modified: head/lib/libthr/Makefile
==============================================================================
--- head/lib/libthr/Makefile	Thu Mar 28 01:12:44 2019	(r345624)
+++ head/lib/libthr/Makefile	Thu Mar 28 02:12:32 2019	(r345625)
@@ -9,7 +9,6 @@ PACKAGE=	clibs
 SHLIBDIR?= /lib
 
 .include <src.opts.mk>
-MK_BIND_NOW= no
 MK_SSP=	no
 
 LIB=thr

Modified: head/libexec/rtld-elf/Makefile
==============================================================================
--- head/libexec/rtld-elf/Makefile	Thu Mar 28 01:12:44 2019	(r345624)
+++ head/libexec/rtld-elf/Makefile	Thu Mar 28 02:12:32 2019	(r345625)
@@ -6,7 +6,6 @@
 
 .include <src.opts.mk>
 PACKAGE=	clibs
-MK_BIND_NOW=	no
 MK_PIE=		no # Always position independent using local rules
 MK_SSP=		no
 

Modified: head/sys/sys/elf_common.h
==============================================================================
--- head/sys/sys/elf_common.h	Thu Mar 28 01:12:44 2019	(r345624)
+++ head/sys/sys/elf_common.h	Thu Mar 28 02:12:32 2019	(r345625)
@@ -763,7 +763,8 @@ typedef struct {
 #define	NT_FREEBSD_FEATURE_CTL	4
 
 /* NT_FREEBSD_FEATURE_CTL desc[0] bits */
-#define	NT_FREEBSD_FCTL_ASLR_DISABLE	0x00000001
+#define	NT_FREEBSD_FCTL_ASLR_DISABLE		0x00000001
+#define	NT_FREEBSD_FCTL_IMPLIED_MAX_PROT	0x00000002
 
 /* Values for n_type.  Used in core files. */
 #define	NT_PRSTATUS	1	/* Process status. */


More information about the svn-src-all mailing list