Skip to contentSkip to conversation

Patch "arm64: Fix incorrect per-cpu usage for boot CPU" has been added to the 4.4-stable tree

PATCH [email protected] 1 participant 1 message Aug 17, 2016

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

arm64: Fix incorrect per-cpu usage for boot CPU

to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
arm64-fix-incorrect-per-cpu-usage-for-boot-cpu.patch
and it can be found in the queue-4.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 9113c2aa05e9848cd4f1154abee17d4f265f012d Mon Sep 17 00:00:00 2001

From: Suzuki K Poulose <[email protected]>
Date: Thu, 21 Jul 2016 11:12:55 +0100
Subject: arm64: Fix incorrect per-cpu usage for boot CPU

From: Suzuki K Poulose <[email protected]>

commit 9113c2aa05e9848cd4f1154abee17d4f265f012d upstream.

In smp_prepare_boot_cpu(), we invoke cpuinfo_store_boot_cpu to store the cpuinfo in a per-cpu ptr, before initialising the per-cpu offset for the boot CPU. This patch reorders the sequence to make sure we initialise the per-cpu offset before accessing the per-cpu area.

Commit 4b998ff1885eec ("arm64: Delay cpuinfo_store_boot_cpu") fixed the issue where we modified the per-cpu area even before the kernel initialises the per-cpu areas, but failed to wait until the boot cpu updated it's offset.

Fixes 4b998ff1885e ("arm64: Delay cpuinfo_store_boot_cpu")
Cc <[email protected]> # 4.4+
Cc Will Deacon <[email protected]>
---
 arch/arm64/kernel/smp.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
arch/arm64/kernel/smp.c +1 -1
@@ -333,8 +333,8 @@ void __init smp_cpus_done(unsigned int m
 
 void __init smp_prepare_boot_cpu(void)
 {
-	cpuinfo_store_boot_cpu();
 	set_my_cpu_offset(per_cpu_offset(smp_processor_id()));
+	cpuinfo_store_boot_cpu();
 }
 
 static u64 __init of_get_cpu_mpidr(struct device_node *dn)

Patches currently in stable-queue which might be from [email protected] are

queue-4.4/arm64-fix-incorrect-per-cpu-usage-for-boot-cpu.patch