Re: [GIT PULL] SLAB changes for v2.6.39-rc1

From: Pekka Enberg
Date: Thu Mar 24 2011 - 15:14:43 EST


On Thu, Mar 24, 2011 at 9:05 PM, Christoph Lameter <cl@xxxxxxxxx> wrote:
> On Thu, 24 Mar 2011, Pekka Enberg wrote:
>
>> It hanged here which is pretty much expected on this box if
>> kmem_cache_init() oopses. I'm now trying to see if I'm able to find
>> the config option that breaks things. CONFIG_PREEMPT_NONE is a
>> suspect:
>>
>> penberg@tiger:~/linux$ grep PREEMPT ../config-ingo
>> # CONFIG_PREEMPT_RCU is not set
>> CONFIG_PREEMPT_NONE=y
>> # CONFIG_PREEMPT_VOLUNTARY is not set
>> # CONFIG_PREEMPT is not set
>
> The following patch should ensure that all percpu data is touched
> before any emulation functions are called:
>
> ---
>  mm/slub.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> Index: linux-2.6/mm/slub.c
> ===================================================================
> --- linux-2.6.orig/mm/slub.c    2011-03-24 14:03:10.000000000 -0500
> +++ linux-2.6/mm/slub.c 2011-03-24 14:04:08.000000000 -0500
> @@ -1604,7 +1604,7 @@ static inline void note_cmpxchg_failure(
>
>  void init_kmem_cache_cpus(struct kmem_cache *s)
>  {
> -#if defined(CONFIG_CMPXCHG_LOCAL) && defined(CONFIG_PREEMPT)
> +#ifdef CONFIG_CMPXCHG_LOCAL
>        int cpu;
>
>        for_each_possible_cpu(cpu)
>

Ingo, can you try this patch out, please? I'm compiling here but
unfortunately I'm stuck with a really slow laptop...
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/