Re: Failure in pcpu_extend_area_map()

From: Tejun Heo
Date: Fri Sep 10 2010 - 06:19:42 EST


Hello,

On 09/09/2010 11:40 PM, Jack Steiner wrote:
> We have started to see failures in the percpu allocator in recent
> linux-next kernels. Failures seem to occur immediately
> after pcpu_chunk_relocate() is called to relocate a chunk from slot
> 10 in pcpu_slot[] to slot 0.
>
> It appears that the list_for_each_entry() in pcpu_alloc() fails
> after pcpu_chunk_relocate() does the list_move().
>
>
> Call tree is:
> pcpu_alloc -> pcpu_alloc_area -> pcpu_chunk_relocate (at end of function - /* fully scanned */)
>
>
> Adding the following patch fixes the problem but I suspect this is not the proper
> fix. Has anyone else seen this this failure?

I've been trying to reproduce it but without success yet. Can you
please attach .config you're using? How reproducible is the problem?
If it's reliably reproducible, can you please check whether the
offending chunk (which gets moved to slot 0 before crash) equals
pcpu_first_chunk?

Thanks.

--
tejun
--
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/