auto-dope-slap: mips64 has 16K pages, not 4K. With that fixed, enable RELRO
authorguenther <guenther@openbsd.org>
Wed, 10 Aug 2016 20:54:35 +0000 (20:54 +0000)
committerguenther <guenther@openbsd.org>
Wed, 10 Aug 2016 20:54:35 +0000 (20:54 +0000)
Per feedback from kettenis@, Miod, and deraadt@, the padding between
text and rodata will be retained for consistency with other archs,
to minimize reliance on the R4000 EOP bug workaround, and to enable
possible future work.

ok deraadt@

gnu/usr.bin/binutils-2.17/ld/emulparams/elf64btsmip_obsd.sh
gnu/usr.bin/binutils-2.17/ld/emulparams/elf64ltsmip_obsd.sh
gnu/usr.bin/binutils-2.17/ld/ldmain.c

index 71dad53..ab5bca3 100644 (file)
@@ -1,6 +1,6 @@
 . ${srcdir}/emulparams/elf64btsmip.sh
 MAXPAGESIZE=0x10000
-COMMONPAGESIZE=0x1000
+COMMONPAGESIZE=0x4000
 TEXT_START_ADDR="0x10000000"
 . ${srcdir}/emulparams/elf_obsd.sh
 # XXX causes GOT oflows
index dfe851c..e88dcf6 100644 (file)
@@ -1,6 +1,6 @@
 . ${srcdir}/emulparams/elf64ltsmip.sh
 MAXPAGESIZE=0x10000
-COMMONPAGESIZE=0x1000
+COMMONPAGESIZE=0x4000
 TEXT_START_ADDR="0x10000000"
 . ${srcdir}/emulparams/elf_obsd.sh
 # XXX causes GOT oflows
index fc82e3e..d960088 100644 (file)
@@ -299,7 +299,7 @@ main (int argc, char **argv)
   link_info.new_dtags = FALSE;
   link_info.combreloc = TRUE;
   link_info.eh_frame_hdr = FALSE;
-#if defined(__mips64__) || defined(__m88k__)
+#if defined(__m88k__)
   link_info.relro = FALSE;
 #else
   link_info.relro = TRUE;