From: Marc Zyngier <Marc.Zyngier@arm.com>
Date: Fri, 18 Dec 2015 10:06:47 +0000 (+0100)
Subject: ARM: 8488/1: Make IPI_CPU_BACKTRACE a "non-secure" SGI
X-Git-Tag: v4.5-rc1~142^2~1^2~9
X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=e7273ff49acf;p=linux.git

ARM: 8488/1: Make IPI_CPU_BACKTRACE a "non-secure" SGI

Having IPI_CPU_BACKTRACE as SGI15 may not work if the kernel is
running in non-secure mode and that the secure firmware has
decided to follow ARM's recommendations that SGI8-15 should
be reserved for secure purpose.

Now that we are "only" using SGI0-6, change IPI_CPU_BACKTRACE
to use SGI7, which makes it more likely to work.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
---

diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
index d50a77d638d3..37312f6749f3 100644
--- a/arch/arm/kernel/smp.c
+++ b/arch/arm/kernel/smp.c
@@ -72,7 +72,12 @@ enum ipi_msg_type {
 	IPI_CPU_STOP,
 	IPI_IRQ_WORK,
 	IPI_COMPLETION,
-	IPI_CPU_BACKTRACE = 15,
+	IPI_CPU_BACKTRACE,
+	/*
+	 * SGI8-15 can be reserved by secure firmware, and thus may
+	 * not be usable by the kernel. Please keep the above limited
+	 * to at most 8 entries.
+	 */
 };
 
 static DECLARE_COMPLETION(cpu_running);