> Date: Fri, 21 Apr 2023 18:28:38 +0200 > From: Alexander Bluhm <alexander.bl...@gmx.net> > > On Fri, Apr 21, 2023 at 07:35:22AM -0600, Theo de Raadt wrote: > > It may still be better to add it to match the style. On i386, also. > > Here is the diff for arm64. No -fcf-protection for i386 yet. > > Before: > > root@ot11:.../GENERIC.MP# objdump -s obj/gapdummy.o | grep 'Contents of > section' > Contents of section .note.gnu.property: > Contents of section .comment: > root@ot11:.../GENERIC.MP# objdump -s obj/gap.o | grep 'Contents of section' > Contents of section .text: > Contents of section .rodata: > Contents of section .data: > Contents of section .comment: > Contents of section .note.gnu.property: > root@ot11:.../GENERIC.MP# objdump -s obj/bsd | grep 'Contents of section' > Contents of section .text: > Contents of section .rodata: > Contents of section .openbsd.randomdata: > Contents of section .data: > Contents of section .comment: > Contents of section .SUNW_ctf: > > After my fix: > > root@ot10:.../GENERIC.MP# objdump -s obj/gapdummy.o | grep 'Contents of secti > > > root@ot10:.../GENERIC.MP# objdump -s obj/gap.o | grep 'Contents of section' > Contents of section .text: > Contents of section .rodata: > Contents of section .data: > Contents of section .comment: > root@ot10:.../GENERIC.MP# objdump -s obj/bsd | grep 'Contents of section' > Contents of section .text: > Contents of section .rodata: > Contents of section .openbsd.randomdata: > Contents of section .data: > Contents of section .comment: > Contents of section .SUNW_ctf: > > ok?
I don't see the point of doing this on arm64. We need to figure out what the .plt thing is on amd64 (I don't immediately understand why that is happening). But the .plt thing doesn't happen on arm64 and the .note.gnu.property note is harmless and won't end up in the final binary anyway. > Index: arch/arm64/conf/Makefile.arm64 > =================================================================== > RCS file: /mount/openbsd/cvs/src/sys/arch/arm64/conf/Makefile.arm64,v > retrieving revision 1.46 > diff -u -p -r1.46 Makefile.arm64 > --- arch/arm64/conf/Makefile.arm64 9 Apr 2023 19:48:37 -0000 1.46 > +++ arch/arm64/conf/Makefile.arm64 21 Apr 2023 15:51:50 -0000 > @@ -154,7 +154,7 @@ ld.script: ${_archdir}/conf/kern.ldscrip > -e 's/@KERNEL_BASE_VIRT@/${KERNEL_BASE_VIRT}/' > ld.script > gapdummy.o: > echo '__asm(".section .rodata,\"a\"");' > gapdummy.c > - ${CC} -c ${CFLAGS} ${CPPFLAGS} gapdummy.c -o $@ > + ${CC} -c ${CFLAGS} ${CPPFLAGS} -mbranch-protection=none gapdummy.c -o $@ > > makegap.sh: > cp $S/conf/makegap.sh $@ > >