vdso image is not reproducible in different build directories as build path defines vdso image contents via .notes, build ID. Build ID is hashed across all sections (prior stripping), debug sections included. With debug sections containing build paths, hash is impacted. Finally vmlinux is not reproducible as it will differ in vdso_data. For users wanting reproducible builds, irrespective of build path, it is unwanted behavior. Issue is sorted out by passing related options via KAFLAGS, KCFLAGS, however due to mips' picking out specific/subset options, these are not getting passed through. Allow related option to be taken if user specified them. Signed-off-by: Matija Glavinic Pecotic <matija.glavinic-pecotic.ext@xxxxxxxxx> --- arch/mips/vdso/Makefile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/arch/mips/vdso/Makefile b/arch/mips/vdso/Makefile index f72658b3a53f..b8296ef2bfcf 100644 --- a/arch/mips/vdso/Makefile +++ b/arch/mips/vdso/Makefile @@ -35,8 +35,12 @@ cflags-vdso := $(ccflags-vdso) \ -O3 -g -fPIC -fno-strict-aliasing -fno-common -fno-builtin -G 0 \ -mrelax-pic-calls $(call cc-option, -mexplicit-relocs) \ -fno-stack-protector -fno-jump-tables -DDISABLE_BRANCH_PROFILING \ - $(call cc-option, -fno-asynchronous-unwind-tables) + $(call cc-option, -fno-asynchronous-unwind-tables) \ + $(filter -ffile-prefix-map%,$(KBUILD_CFLAGS)) \ + $(filter -fmacro-prefix-map%,$(KBUILD_CFLAGS)) \ + $(filter -fdebug-prefix-map%,$(KBUILD_CFLAGS)) aflags-vdso := $(ccflags-vdso) \ + $(filter --debug-prefix-map%,$(KBUILD_AFLAGS)) \ -D__ASSEMBLY__ -Wa,-gdwarf-2 ifneq ($(c-gettimeofday-y),) -- 2.26.0