• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500-V1.0.1.40_1.0.68/src/linux/linux-2.6/arch/x86_64/mm/

Lines Matching defs:nodes

51 populate_memnodemap(const struct bootnode *nodes, int numnodes, int shift)
59 addr = nodes[i].start;
60 end = nodes[i].end;
108 extract_lsb_from_nodes (const struct bootnode *nodes, int numnodes)
115 start = nodes[i].start;
116 end = nodes[i].end;
132 int __init compute_hash_shift(struct bootnode *nodes, int numnodes)
136 shift = extract_lsb_from_nodes(nodes, numnodes);
142 if (populate_memnodemap(nodes, numnodes, shift) != 1) {
261 We round robin the existing nodes. */
287 static int __init setup_node_range(int nid, struct bootnode *nodes, u64 *addr,
291 nodes[nid].start = *addr;
297 nodes[nid].end = *addr;
300 nodes[nid].start, nodes[nid].end,
301 (nodes[nid].end - nodes[nid].start) >> 20);
306 * Splits num_nodes nodes up equally starting at node_start. The return value
307 * is the number of nodes split up and addr is adjusted to be at the end of the
310 static int __init split_nodes_equally(struct bootnode *nodes, u64 *addr,
325 * Calculate the number of big nodes that can be allocated as a result
345 * nodes receive roughly the same amount of available pages.
358 if (setup_node_range(i, nodes, addr, end - *addr, max_addr) < 0)
367 * nodes split.
369 static int __init split_nodes_by_size(struct bootnode *nodes, u64 *addr,
374 while (!setup_node_range(i++, nodes, addr, size, max_addr))
385 struct bootnode nodes[MAX_NUMNODES];
395 memset(&nodes, 0, sizeof(nodes));
398 * system RAM into N fake nodes.
401 num_nodes = split_nodes_equally(nodes, &addr, max_addr, 0,
429 if (setup_node_range(num_nodes, nodes,
445 /* Split remaining nodes into num-sized chunks */
446 num_nodes += split_nodes_by_size(nodes, &addr, max_addr,
452 /* Split remaining nodes into coeff chunks */
455 num_nodes += split_nodes_equally(nodes, &addr, max_addr,
463 setup_node_range(num_nodes, nodes, &addr,
469 memnode_shift = compute_hash_shift(nodes, num_nodes);
483 e820_register_active_regions(i, nodes[i].start >> PAGE_SHIFT,
484 nodes[i].end >> PAGE_SHIFT);
485 setup_node_bootmem(i, nodes[i].start, nodes[i].end);