This is the mail archive of the libc-alpha@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]

Re: RFC: x86: Fall back to lazy binding for unrelocated IFUNC symbol [BZ #23240]


On 05/26/2018 03:52 PM, H.J. Lu wrote:
+	      /* NB: The symbol reference is resolved to IFUNC symbol
+	         from a shared object which hasn't been relocated yet.
+		 Relocate the GOT entry to enable lazy binding.  */
+	      value = map->l_addr + *reloc_addr;
+	      /* Disable RELRO so that the GOT entry can updated by lazy
+		 binding later.  */
+	      if (map->l_info[DT_BIND_NOW] != NULL)
+		map->l_relro_size = 0;

People perceive BIND_NOW as a security feature. Silently disabling it in this way, perhaps due to an implementation change in another shared object, looks very wrong to me.

Maybe you could share the *concrete* problem you are actually trying to solve?

Thanks,
Florian


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