linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] powerpc/32: Fix early access to cpu_spec relocation
@ 2016-08-02  5:53 Benjamin Herrenschmidt
  0 siblings, 0 replies; only message in thread
From: Benjamin Herrenschmidt @ 2016-08-02  5:53 UTC (permalink / raw)
  To: linuxppc-dev

Commit 9402c684613163888714df0955fa1f17142b08bf introduced a subtle bug
on 32-bit. When reading the cpu spec from the global, we not only need
to do a pointer relocation on the global address but also on the pointer
we read from it.

This fixes crashes reported on MPC5200 based machines.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Fixes: 9402c684613163888714df0955fa1f17142b08bf
--
diff --git a/arch/powerpc/lib/feature-fixups.c b/arch/powerpc/lib/feature-fixups.c
index defb299..fd36e13 100644
--- a/arch/powerpc/lib/feature-fixups.c
+++ b/arch/powerpc/lib/feature-fixups.c
@@ -154,7 +154,7 @@ static void do_final_fixups(void)
 
 void apply_feature_fixups(void)
 {
-	struct cpu_spec *spec = *PTRRELOC(&cur_cpu_spec);
+	struct cpu_spec *spec = PTRRELOC(*PTRRELOC(&cur_cpu_spec));
 
 	/*
 	 * Apply the CPU-specific and firmware specific fixups to kernel text

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2016-08-02  5:53 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-02  5:53 [PATCH] powerpc/32: Fix early access to cpu_spec relocation Benjamin Herrenschmidt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).