linux/arch/powerpc
Christophe Leroy 252eb55816 powerpc: Fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX
On powerpc32, patch_instruction() is called by apply_feature_fixups()
which is called from early_init()

There is the following note in front of early_init():
 * Note that the kernel may be running at an address which is different
 * from the address that it was linked at, so we must use RELOC/PTRRELOC
 * to access static data (including strings).  -- paulus

Therefore, slab_is_available() cannot be called yet, and
text_poke_area must be addressed with PTRRELOC()

Fixes: 95902e6c88 ("powerpc/mm: Implement STRICT_KERNEL_RWX on PPC32")
Cc: stable@vger.kernel.org # v4.14+
Reported-by: Meelis Roos <mroos@linux.ee>
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2017-11-22 23:04:20 +11:00
..
boot powerpc: dts: acadia: DT fix s/#interrupts-parent/#interrupt-parent/ 2017-10-22 12:08:31 +02:00
configs powerpc/configs: Enable I2C_CHARDEV for pseries and powernv 2017-10-22 12:08:31 +02:00
crypto Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2017-05-02 15:53:46 -07:00
include powerpc/64s: Fix Power9 DD2.0 workarounds by adding DD2.1 feature 2017-11-15 14:25:42 +11:00
kernel powerpc/64s: Fix Power9 DD2.0 workarounds by adding DD2.1 feature 2017-11-15 14:25:42 +11:00
kvm KVM: PPC: Book3S HV: Handle host system reset in guest mode 2017-11-06 16:48:06 +11:00
lib powerpc: Fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX 2017-11-22 23:04:20 +11:00
math-emu Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
mm powerpc/64s/slice: Use addr limit when computing slice mask 2017-11-20 19:28:25 +11:00
net bpf: take advantage of stack_depth tracking in powerpc JIT 2017-11-06 16:48:16 +11:00
oprofile powerpc/oprofile: Use setup_timer() helper 2017-10-04 11:28:01 +11:00
perf powerpc/perf/imc: Use cpu_to_node() not topology_physical_package_id() 2017-11-22 12:24:46 +11:00
platforms powerpc/vas: Export chip_to_vas_id() 2017-11-21 21:02:26 +11:00
purgatory powerpc/asm: Convert .llong directives to .8byte 2017-08-31 14:26:47 +10:00
sysdev Merge branch 'fixes' into next 2017-11-10 20:55:03 +11:00
tools powerpc/64: Tool to check head sections location sanity 2017-05-30 14:59:51 +10:00
xmon powerpc/xmon: Support dumping software pagetables 2017-11-08 22:04:10 +11:00
Kconfig powerpc/lib: Implement UACCESS_FLUSHCACHE API 2017-11-13 08:00:31 +11:00
Kconfig.debug powerpc: Disable the fast-endian switch syscall by default 2017-10-22 12:08:31 +02:00
Makefile Merge branch 'fixes' into next 2017-08-23 22:20:10 +10:00
Makefile.postlink powerpc/64: Tool to check head sections location sanity 2017-05-30 14:59:51 +10:00