[Patch 01/29] GRU - Initial GRU based on blade topology

From: steiner
Date: Tue Nov 24 2009 - 10:13:46 EST


From: Jack Steiner <steiner@xxxxxxx>

Change the GRU initialization code to initialize
based on blade topology instead of node topology. The result
is the same but blade-based initialization is cleaner.


Signed-off-by: Jack Steiner <steiner@xxxxxxx>


---
drivers/misc/sgi-gru/grufile.c | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)

Index: linux/drivers/misc/sgi-gru/grufile.c
===================================================================
--- linux.orig/drivers/misc/sgi-gru/grufile.c 2009-11-20 09:32:15.000000000 -0600
+++ linux/drivers/misc/sgi-gru/grufile.c 2009-11-20 09:32:26.000000000 -0600
@@ -264,11 +264,9 @@ static int gru_init_tables(unsigned long

max_user_cbrs = GRU_NUM_CB;
max_user_dsr_bytes = GRU_NUM_DSR_BYTES;
- for_each_online_node(nid) {
- bid = uv_node_to_blade_id(nid);
- pnode = uv_node_to_pnode(nid);
- if (bid < 0 || gru_base[bid])
- continue;
+ for_each_possible_blade(bid) {
+ pnode = uv_blade_to_pnode(bid);
+ nid = uv_blade_to_memory_nid(bid);
page = alloc_pages_exact_node(nid, GFP_KERNEL, order);
if (!page)
goto fail;
@@ -298,8 +296,8 @@ static int gru_init_tables(unsigned long
return 0;

fail:
- for (nid--; nid >= 0; nid--)
- free_pages((unsigned long)gru_base[nid], order);
+ for (bid--; bid >= 0; bid--)
+ free_pages((unsigned long)gru_base[bid], order);
return -ENOMEM;
}


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