*/
int num_rx_threads = -1;
int num_stxds = 5;
-
-ptl_handle_ni_t kgmnal_ni;
-
+int gm_port_id = 4;
int
gmnal_cmd(struct portals_cfg *pcfg, void *private)
case(GMNAL_IOC_GET_GNID):
PORTAL_ALLOC(name, pcfg->pcfg_plen1);
- copy_from_user(name, pcfg->pcfg_pbuf1, pcfg->pcfg_plen1);
+ copy_from_user(name, PCFG_PBUF(pcfg, 1), pcfg->pcfg_plen1);
GMNAL_GM_LOCK(nal_data);
- nid = gm_host_name_to_node_id(nal_data->gm_port, name);
+ //nid = gm_host_name_to_node_id(nal_data->gm_port, name);
+ gm_status = gm_host_name_to_node_id_ex (nal_data->gm_port, 0, name, &nid);
GMNAL_GM_UNLOCK(nal_data);
- CDEBUG(D_INFO, "Local node id is [%d]\n", nid);
+ if (gm_status != GM_SUCCESS) {
+ CDEBUG(D_INFO, "gm_host_name_to_node_id_ex(...host %s) failed[%d]\n",
+ name, gm_status);
+ return (-1);
+ } else
+ CDEBUG(D_INFO, "Local node %s id is [%d]\n", name, nid);
GMNAL_GM_LOCK(nal_data);
gm_status = gm_node_id_to_global_id(nal_data->gm_port,
nid, &gnid);
return(-1);
}
CDEBUG(D_INFO, "Global node is is [%u][%x]\n", gnid, gnid);
- copy_to_user(pcfg->pcfg_pbuf2, &gnid, pcfg->pcfg_plen2);
+ copy_to_user(PCFG_PBUF(pcfg, 2), &gnid, pcfg->pcfg_plen2);
break;
default:
CDEBUG(D_INFO, "gmnal_cmd UNKNOWN[%d]\n", pcfg->pcfg_command);
CDEBUG(D_TRACE, "This is the gmnal module initialisation routine\n");
-
CDEBUG(D_INFO, "Calling gmnal_init\n");
- status = PtlNIInit(gmnal_init, 32, 4, 0, &kgmnal_ni);
+ status = gmnal_init();
if (status == PTL_OK) {
- CDEBUG(D_INFO, "Portals GMNAL initialised ok kgmnal_ni\n");
+ CDEBUG(D_INFO, "Portals GMNAL initialised ok\n");
} else {
CDEBUG(D_INFO, "Portals GMNAL Failed to initialise\n");
- return(1);
+ return(-ENODEV);
}
- CDEBUG(D_INFO, "Calling kportal_nal_register\n");
- /*
- * global_nal_data is set by gmnal_init
- */
- if (kportal_nal_register(GMNAL, &gmnal_cmd, global_nal_data) != 0) {
- CDEBUG(D_INFO, "kportal_nal_register failed\n");
- return(1);
- }
-
- CDEBUG(D_INFO, "Calling PORTAL_SYMBOL_REGISTER\n");
- PORTAL_SYMBOL_REGISTER(kgmnal_ni);
CDEBUG(D_INFO, "This is the end of the gmnal init routine");
static void __exit
gmnal_unload(void)
{
-
- kportal_nal_unregister(GMNAL);
- PORTAL_SYMBOL_UNREGISTER(kgmnal_ni);
gmnal_fini();
- global_nal_data = NULL;
return;
}
module_exit(gmnal_unload);
-EXPORT_SYMBOL(kgmnal_ni);
-
MODULE_PARM(gmnal_small_msg_size, "i");
MODULE_PARM(num_rx_threads, "i");
MODULE_PARM(num_stxds, "i");
+MODULE_PARM(gm_port_id, "i");
MODULE_AUTHOR("Morgan Doyle");