On Fri, Apr 5, 2019 at 3:17 AM Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> wrote: > I want to propose alternative solution. > Please check the attached patches. In both patches: > I changed the Makefile to use $(LD) rahter than $(CC). I confirmed > the same vdso.so.raw was still produced. typo: rahter -> rather In the 0001 patch of arch/arm/vdso/Makefile: > ... > -VDSO_LDFLAGS += $(call cc-ldoption, -fuse-ld=bfd) > +ldflags-y = -Bsymbolic --no-undefined -soname=linux-vdso.so.1 \ > + -z max-page-size=4096 -z common-page-size=4096 \ > + -nostdlib -shared \ > + $(call ld-option, --hash-style=sysv) \ > + $(call ld-option, --build-id) \ > + -T I see that "-fuse-ld=bfd" is explicitly dropped here, which could reintroduce the problem fixed in d2b30cd4b722 ("ARM: 8384/1: VDSO: force use of BFD linker") (and 3473f26592c1c). Does ld.gold still exhibit this problem? If so, we'll need to detect gold and force bfd still maybe? -- Kees Cook