void __init replicate_kernel_text() { cnodeid_t cnode; nasid_t client_nasid; nasid_t server_nasid; server_nasid = master_nasid; /* Record where the master node should get its kernel text */ set_ktext_source(master_nasid, master_nasid); for_each_online_node(cnode) { if (cnode == 0) continue; client_nasid = COMPACT_TO_NASID_NODEID(cnode); /* Check if this node should get a copy of the kernel */ if (cpu_isset(cnode, ktext_repmask)) { server_nasid = client_nasid; copy_kernel(server_nasid); } /* Record where this node should get its kernel text */ set_ktext_source(client_nasid, server_nasid); } }
void __init replicate_kernel_text(int maxnodes) { cnodeid_t cnode; nasid_t client_nasid; nasid_t server_nasid; server_nasid = master_nasid; /* Record where the master node should get its kernel text */ set_ktext_source(master_nasid, master_nasid); for (cnode = 1; cnode < maxnodes; cnode++) { client_nasid = COMPACT_TO_NASID_NODEID(cnode); /* Check if this node should get a copy of the kernel */ if (cpu_isset(cnode, ktext_repmask)) { server_nasid = client_nasid; copy_kernel(server_nasid); } /* Record where this node should get its kernel text */ set_ktext_source(client_nasid, server_nasid); } }