Re: [2.6.20][PATCH] fix mempolicy error check on a system withmemory-less-node

From: Christoph Lameter
Date: Tue Feb 06 2007 - 12:27:30 EST


On Tue, 6 Feb 2007, KAMEZAWA Hiroyuki wrote:

> This means an access to NULL,here.
> ==
> unsigned slab_node(struct mempolicy *policy)
> {
> case MPOL_BIND:
> /*
> * Follow bind policy behavior and start allocation at the
> * first node.
> */
> return zone_to_nid(policy->v.zonelist->zones[0]);
> }
> ==
> length of this zonelist was 0.
> It seems fixing a NULL access here is also O.K.
> This patch is just an idea.

Hmmm... Remove the node from the node_online_map instead?

> }
> - return nodes_subset(*nodes, node_online_map) ? 0 : -EINVAL;
> + nodes_clear(node_with_memory);
> + for_each_online_node(nd) {
> + if (node_present_pages(nd))
> + node_set(nd, node_with_memory);
> + }
> + return nodes_subset(*nodes, node_with_memory) ? 0 : -EINVAL;
> }

Uhh. No loops here please. If we really need this then we need to have
some sort of set operation here.


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