diff mbox

[2/2] ARM: Make IPI_CPU_BACKTRACE a "non-secure" SGI

Message ID 5673D683.8050002@arm.com (mailing list archive)
State New, archived
Headers show

Commit Message

Marc Zyngier Dec. 18, 2015, 9:48 a.m. UTC
On 18/12/15 09:34, Russell King - ARM Linux wrote:
> On Fri, Dec 18, 2015 at 09:16:13AM +0000, Marc Zyngier wrote:
>> 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.
> 
> We should add a comment to the enum explaining this, so it's obvious
> for the future - best place is after the IPI_CPU_BACKTRACE entry.
> Not everyone checks the git logs for these kinds of details.

Indeed. How about something like this:


Thanks,

	M.

Comments

Russell King - ARM Linux Dec. 18, 2015, 9:52 a.m. UTC | #1
On Fri, Dec 18, 2015 at 09:48:51AM +0000, Marc Zyngier wrote:
> On 18/12/15 09:34, Russell King - ARM Linux wrote:
> > On Fri, Dec 18, 2015 at 09:16:13AM +0000, Marc Zyngier wrote:
> >> 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.
> > 
> > We should add a comment to the enum explaining this, so it's obvious
> > for the future - best place is after the IPI_CPU_BACKTRACE entry.
> > Not everyone checks the git logs for these kinds of details.
> 
> Indeed. How about something like this:

Yep.
diff mbox

Patch

diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
index fe517f1..37312f6 100644
--- a/arch/arm/kernel/smp.c
+++ b/arch/arm/kernel/smp.c
@@ -73,6 +73,11 @@  enum ipi_msg_type {
 	IPI_IRQ_WORK,
 	IPI_COMPLETION,
 	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);