diff mbox

[RESEND,4] ARM: plat-versatile: move secondary CPU startup into cpuinit

Message ID 50D02C89.9030307@huawei.com (mailing list archive)
State New, archived
Headers show

Commit Message

Claudio Fontana Dec. 18, 2012, 8:42 a.m. UTC
Using __CPUINIT instead of __INIT puts the secondary CPU startup code
into the "right" section: it will not be freed in hotplug configurations,
allowing hot-add of cpus, while still getting freed in non-hotplug configs.

Tested successfully on Fast-Models and on Arndale for VCPU hotplug. 

Signed-off-by: Claudio Fontana <claudio.fontana@huawei.com>
Tested-by: Claudio Fontana <claudio.fontana@huawei.com>

Comments

Christoffer Dall Dec. 30, 2012, 4:09 a.m. UTC | #1
On Tue, Dec 18, 2012 at 3:42 AM, Claudio Fontana
<Claudio.Fontana@huawei.com> wrote:
>
> Using __CPUINIT instead of __INIT puts the secondary CPU startup code
> into the "right" section: it will not be freed in hotplug configurations,
> allowing hot-add of cpus, while still getting freed in non-hotplug configs.
>
> Tested successfully on Fast-Models and on Arndale for VCPU hotplug.

not quite sure how testing on Arndale verifies this change?

>
> Signed-off-by: Claudio Fontana <claudio.fontana@huawei.com>
> Tested-by: Claudio Fontana <claudio.fontana@huawei.com>
>
> diff --git a/arch/arm/plat-versatile/headsmp.S b/arch/arm/plat-versatile/headsmp.S
> index dd703ef..19fe180 100644
> --- a/arch/arm/plat-versatile/headsmp.S
> +++ b/arch/arm/plat-versatile/headsmp.S
> @@ -11,7 +11,7 @@
>  #include <linux/linkage.h>
>  #include <linux/init.h>
>
> -       __INIT
> +       __CPUINIT
>
>  /*
>   * Realview/Versatile Express specific entry point for secondary CPUs.
> --
> 1.7.12.1
>

Otherwise looks ok to me (not guaranteeing that cpu hotplug will
magically work for KVM using this change though).

-Christoffer
diff mbox

Patch

diff --git a/arch/arm/plat-versatile/headsmp.S b/arch/arm/plat-versatile/headsmp.S
index dd703ef..19fe180 100644
--- a/arch/arm/plat-versatile/headsmp.S
+++ b/arch/arm/plat-versatile/headsmp.S
@@ -11,7 +11,7 @@ 
 #include <linux/linkage.h>
 #include <linux/init.h>
 
-	__INIT
+	__CPUINIT
 
 /*
  * Realview/Versatile Express specific entry point for secondary CPUs.