On Thu, 2012-05-10 at 23:55 -0400, David Miller wrote:
> From a5a737e090e25981e99d69f01400e3a80356581c Mon Sep 17 00:00:00 2001
> From: "David S. Miller" <[email protected]>
> Date: Thu, 10 May 2012 11:00:46 -0700
> Subject: [PATCH 28/41] sparc64: Do not clobber %g2 in
>  xcall_fetch_glob_regs().
> 
> [ Upstream commit a5a737e090e25981e99d69f01400e3a80356581c ]
> 
> %g2 is meant to hold the CPUID number throughout this routine, since
> at the very beginning, and at the very end, we use %g2 to calculate
> indexes into per-cpu arrays.
> 
> However we erroneously clobber it in order to hold the %cwp register
> value mid-stream.
> 
> Fix this code to use %g3 for the %cwp read and related calulcations
> instead.
> 
> Reported-by: Meelis Roos <[email protected]>
> Signed-off-by: David S. Miller <[email protected]>
> ---
>  arch/sparc/kernel/central.c |    2 +-
>  arch/sparc/mm/ultra.S       |    6 +++---
>  2 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/arch/sparc/kernel/central.c b/arch/sparc/kernel/central.c
> index 38d48a5..9708851 100644
> --- a/arch/sparc/kernel/central.c
> +++ b/arch/sparc/kernel/central.c
> @@ -269,4 +269,4 @@ static int __init sunfire_init(void)
>         return 0;
>  }
>  
> -subsys_initcall(sunfire_init);
> +fs_initcall(sunfire_init);
[...]

Your commit message didn't mention the init order change; is that
needed/safe in 3.2.y?

Ben.

-- 
Ben Hutchings
Experience is directly proportional to the value of equipment destroyed.
                                                         - Carolyn Scheppner

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to