[PATCH] selftests/powerpc: Fix try-run when source tree is not writable

Michael Ellerman patch-notifications at ellerman.id.au
Wed Apr 1 23:53:35 AEDT 2020


On Fri, 2020-03-27 at 09:53:19 UTC, Michael Ellerman wrote:
> We added a usage of try-run to pmu/ebb/Makefile to detect if the
> toolchain supported the -no-pie option.
> 
> This fails if we build out-of-tree and the source tree is not
> writable, as try-run tries to write its temporary files to the current
> directory. That leads to the -no-pie option being silently dropped,
> which leads to broken executables with some toolchains.
> 
> If we remove the redirect to /dev/null in try-run, we see the error:
> 
>   make[3]: Entering directory '/linux/tools/testing/selftests/powerpc/pmu/ebb'
>   /usr/bin/ld: cannot open output file .54.tmp: Read-only file system
>   collect2: error: ld returned 1 exit status
>   make[3]: Nothing to be done for 'all'.
> 
> And looking with strace we see it's trying to use a file that's in the
> source tree:
> 
>   lstat("/linux/tools/testing/selftests/powerpc/pmu/ebb/.54.tmp", 0x7ffffc0f83c8)
> 
> We can fix it by setting TMPOUT to point to the $(OUTPUT) directory,
> and we can verify with strace it's now trying to write to the output
> directory:
> 
>   lstat("/output/kselftest/powerpc/pmu/ebb/.54.tmp", 0x7fffd1bf6bf8)
> 
> And also see that the -no-pie option is now correctly detected.
> 
> Fixes: 0695f8bca93e ("selftests/powerpc: Handle Makefile for unrecognized option")
> Cc: stable at vger.kernel.org # v5.5+
> Signed-off-by: Michael Ellerman <mpe at ellerman.id.au>

Applied to powerpc next.

https://git.kernel.org/powerpc/c/9686813f6e9d5568bc045de0be853411e44958c8

cheers


More information about the Linuxppc-dev mailing list