linux-sg2042/arch/mips/vdso
Paul Burton 67fc5dc8a5
MIPS: VDSO: Include $(ccflags-vdso) in o32,n32 .lds builds
When generating vdso-o32.lds & vdso-n32.lds for use with programs
running as compat ABIs under 64b kernels, we previously haven't included
the compiler flags that are supposedly common to all ABIs - ie. those in
the ccflags-vdso variable.

This is problematic in cases where we need to provide the -m%-float flag
in order to ensure that we don't attempt to use a floating point ABI
that's incompatible with the target CPU & ABI. For example a toolchain
using current gcc trunk configured --with-fp-32=xx fails to build a
64r6el_defconfig kernel with the following error:

  cc1: error: '-march=mips1' requires '-mfp32'
  make[2]: *** [arch/mips/vdso/Makefile:135: arch/mips/vdso/vdso-o32.lds] Error 1

Include $(ccflags-vdso) for the compat VDSO .lds builds, just as it is
included for the native VDSO .lds & when compiling objects for the
compat VDSOs. This ensures we consistently provide the -msoft-float flag
amongst others, avoiding the problem by ensuring we're agnostic to the
toolchain defaults.

Signed-off-by: Paul Burton <paul.burton@mips.com>
Fixes: ebb5e78cc6 ("MIPS: Initial implementation of a VDSO")
Cc: linux-mips@vger.kernel.org
Cc: Kevin Hilman <khilman@baylibre.com>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Maciej W . Rozycki <macro@linux-mips.org>
Cc: stable@vger.kernel.org # v4.4+
2019-01-29 11:50:58 -08:00
..
.gitignore
Makefile MIPS: VDSO: Include $(ccflags-vdso) in o32,n32 .lds builds 2019-01-29 11:50:58 -08:00
elf.S MIPS: VDSO: Replace __mips_isa_rev with MIPS_ISA_REV 2018-03-09 11:22:48 +00:00
genvdso.c
genvdso.h MIPS: genvdso: Remove GOT checks 2018-08-06 15:28:46 -07:00
gettimeofday.c MIPS: VDSO: Avoid use of linux/irqchip/mips-gic.h 2017-09-04 13:53:14 +02:00
sigreturn.S MIPS: Add DWARF unwinding to assembly 2017-09-06 11:01:52 +02:00
vdso.h MIPS: VDSO: Add implementations of gettimeofday() and clock_gettime() 2015-11-11 08:36:41 +01:00
vdso.lds.S MIPS: VDSO: Add implementations of gettimeofday() and clock_gettime() 2015-11-11 08:36:41 +01:00