linux-hardened/arch/powerpc
Anton Blanchard 98679fb092 powerpc: Avoid load of static chain register when calling nested functions through a pointer on 64bit
The ppc64 ABI has a static chain register (r11) which is only used
when calling nested functions through a pointer. Considering that
we take a dim view of nested functions in the kernel, we have a lot
of unnecessary overhead here.

gcc 4.7 has an option to disable loading of r11 so lets use it.

If hell freezes over and hipsters manage to litter the kernel
with nested functions, gcc will give us an error message and
won't simply compile bad code:

    You cannot take the address of a nested function if you use
    the -mno-pointers-to-nested-functions option.

Furthermore our kernel module trampolines don't setup the static
chain register so adding this option and forcing gcc to error out
makes even more sense.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2013-01-10 17:01:27 +11:00
..
boot powerpc/dts/virtex440: Add ethernet phy to virtex440-ml507 board 2013-01-10 15:09:05 +11:00
configs powerpc: Enable devtmpfs, EFI partition support and tmpfs ACLs on pseries, ppc64 and ppc64e defconfig 2013-01-10 17:01:25 +11:00
crypto powerpc: Add a powerpc implementation of SHA-1 2013-01-10 14:43:45 +11:00
include powerpc: Implement PPR save/restore 2013-01-10 17:01:13 +11:00
kernel powerpc: Implement PPR save/restore 2013-01-10 17:01:13 +11:00
kvm powerpc: Disable relocation on exceptions whenever PR KVM is active 2013-01-10 17:00:42 +11:00
lib powerpc: Build kernel with -mcmodel=medium 2013-01-10 17:00:31 +11:00
math-emu powerpc/math_emu/efp: Look for errata handler when type mismatches 2011-10-06 23:36:47 -05:00
mm powerpc: Build kernel with -mcmodel=medium 2013-01-10 17:00:31 +11:00
net PPC: net: bpf_jit_comp: add VLAN instructions for BPF JIT 2012-11-17 22:12:47 -05:00
oprofile powerpc: Build kernel with -mcmodel=medium 2013-01-10 17:00:31 +11:00
perf powerpc/perf: Add stalled-cycles events 2013-01-10 17:00:56 +11:00
platforms powerpc: Convert print_symbol to %pSR 2013-01-10 17:01:16 +11:00
sysdev powerpc: Build kernel with -mcmodel=medium 2013-01-10 17:00:31 +11:00
xmon powerpc: Build kernel with -mcmodel=medium 2013-01-10 17:00:31 +11:00
Kconfig powerpc: Enable ARCH_USE_BUILTIN_BSWAP 2013-01-10 17:00:54 +11:00
Kconfig.debug powerpc: IOMMU fault injection 2012-07-10 19:18:59 +10:00
Makefile powerpc: Avoid load of static chain register when calling nested functions through a pointer on 64bit 2013-01-10 17:01:27 +11:00
relocs_check.pl powerpc: Process dynamic relocations for kernel 2011-12-20 10:21:08 -05:00