Re: [PATCH 1/3] slqb: Do not use DEFINE_PER_CPU for per-node data

From: Tejun Heo
Date: Mon Sep 21 2009 - 09:46:34 EST


Hello,

Mel Gorman wrote:
> This latter guess was close to the mark but not for the reasons I was
> guessing. There isn't magic per-cpu-area-freeing going on. Once I examined
> the implementation of per-cpu data, it was clear that the per-cpu areas for
> the node IDs were never being allocated in the first place on PowerPC. It's
> probable that this never worked but that it took a long time before SLQB
> was run on a memoryless configuration.

Ah... okay, so node id was being used to access percpu memory but the
id wasn't in cpu_possible_map. Yeah, that will access weird places in
between proper percpu areas. I never thought about that. I'll add
debug version of percpu access macros which check that the offset and
cpu make sense so that things like this can be caught easier.

As Pekka suggested, using MAX_NUMNODES seems more appropriate tho
although it's suboptimal in that it would waste memory and more
importantly not use node-local memory. :-(

Sachin, does the hang you're seeing also disappear with Mel's patches?

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/