Subject: Re: [patch 09/16] powerpc: Replace old style lock initializer

From: Benjamin Herrenschmidt <[email-masked]>
Date: Sat, 07 Nov 2009 09:55:44 +1100

On Fri, 2009-11-06 at 22:41 +0000, Thomas Gleixner wrote:
> plain text document attachment
> (power-replace-old-style-lock-init.patch)
> SPIN_LOCK_UNLOCKED is deprecated. Init the lock array at runtime
> instead.
> 
> Signed-off-by: Thomas Gleixner <[email-masked]>
> Cc: Benjamin Herrenschmidt <[email-masked]>
> Cc: [email-masked]
> ---

Looks reasonable. But iseries can be a bitch, so we do need to test it
on monday.

Cheers,
Ben.

>  arch/powerpc/platforms/iseries/htab.c |    8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> Index: linux-2.6/arch/powerpc/platforms/iseries/htab.c
> ===================================================================
> --- linux-2.6.orig/arch/powerpc/platforms/iseries/htab.c
> +++ linux-2.6/arch/powerpc/platforms/iseries/htab.c
> @@ -19,8 +19,7 @@
>  
>  #include "call_hpt.h"
>  
> -static spinlock_t iSeries_hlocks[64] __cacheline_aligned_in_smp =
> -	{ [0 ... 63] = SPIN_LOCK_UNLOCKED};
> +static spinlock_t iSeries_hlocks[64] __cacheline_aligned_in_smp;
>  
>  /*
>   * Very primitive algorithm for picking up a lock
> @@ -245,6 +244,11 @@ static void iSeries_hpte_invalidate(unsi
>  
>  void __init hpte_init_iSeries(void)
>  {
> +	int i;
> +
> +	for (i = 0; i < ARRAY_SIZE(iSeries_hlocks); i++)
> +		spin_lock_init(&iSeries_hlocks[i]);
> +
>  	ppc_md.hpte_invalidate	= iSeries_hpte_invalidate;
>  	ppc_md.hpte_updatepp	= iSeries_hpte_updatepp;
>  	ppc_md.hpte_updateboltedpp = iSeries_hpte_updateboltedpp;
> 
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email-masked]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/