• Home
  • Raw
  • Download

Lines Matching refs:nport

203 	struct fcloop_nport *nport;  member
210 struct fcloop_nport *nport; member
799 struct fcloop_nport *nport = in fcloop_nport_free() local
804 list_del(&nport->nport_list); in fcloop_nport_free()
807 kfree(nport); in fcloop_nport_free()
811 fcloop_nport_put(struct fcloop_nport *nport) in fcloop_nport_put() argument
813 kref_put(&nport->ref, fcloop_nport_free); in fcloop_nport_put()
817 fcloop_nport_get(struct fcloop_nport *nport) in fcloop_nport_get() argument
819 return kref_get_unless_zero(&nport->ref); in fcloop_nport_get()
837 fcloop_nport_put(rport->nport); in fcloop_remoteport_delete()
845 fcloop_nport_put(tport->nport); in fcloop_targetport_delete()
1010 struct fcloop_nport *newnport, *nport = NULL; in fcloop_alloc_nport() local
1062 list_for_each_entry(nport, &fcloop_nports, nport_list) { in fcloop_alloc_nport()
1063 if (nport->node_name == opts->wwnn && in fcloop_alloc_nport()
1064 nport->port_name == opts->wwpn) { in fcloop_alloc_nport()
1065 if ((remoteport && nport->rport) || in fcloop_alloc_nport()
1066 (!remoteport && nport->tport)) { in fcloop_alloc_nport()
1067 nport = NULL; in fcloop_alloc_nport()
1071 fcloop_nport_get(nport); in fcloop_alloc_nport()
1076 nport->lport = lport; in fcloop_alloc_nport()
1078 nport->port_role = opts->roles; in fcloop_alloc_nport()
1080 nport->port_id = opts->fcaddr; in fcloop_alloc_nport()
1098 return nport; in fcloop_alloc_nport()
1106 struct fcloop_nport *nport; in fcloop_create_remote_port() local
1111 nport = fcloop_alloc_nport(buf, count, true); in fcloop_create_remote_port()
1112 if (!nport) in fcloop_create_remote_port()
1116 pinfo.node_name = nport->node_name; in fcloop_create_remote_port()
1117 pinfo.port_name = nport->port_name; in fcloop_create_remote_port()
1118 pinfo.port_role = nport->port_role; in fcloop_create_remote_port()
1119 pinfo.port_id = nport->port_id; in fcloop_create_remote_port()
1121 ret = nvme_fc_register_remoteport(nport->lport->localport, in fcloop_create_remote_port()
1124 fcloop_nport_put(nport); in fcloop_create_remote_port()
1131 rport->targetport = (nport->tport) ? nport->tport->targetport : NULL; in fcloop_create_remote_port()
1132 if (nport->tport) { in fcloop_create_remote_port()
1133 nport->tport->remoteport = remoteport; in fcloop_create_remote_port()
1134 nport->tport->lport = nport->lport; in fcloop_create_remote_port()
1136 rport->nport = nport; in fcloop_create_remote_port()
1137 rport->lport = nport->lport; in fcloop_create_remote_port()
1138 nport->rport = rport; in fcloop_create_remote_port()
1145 __unlink_remote_port(struct fcloop_nport *nport) in __unlink_remote_port() argument
1147 struct fcloop_rport *rport = nport->rport; in __unlink_remote_port()
1149 if (rport && nport->tport) in __unlink_remote_port()
1150 nport->tport->remoteport = NULL; in __unlink_remote_port()
1151 nport->rport = NULL; in __unlink_remote_port()
1157 __remoteport_unreg(struct fcloop_nport *nport, struct fcloop_rport *rport) in __remoteport_unreg() argument
1169 struct fcloop_nport *nport = NULL, *tmpport; in fcloop_delete_remote_port() local
1184 nport = tmpport; in fcloop_delete_remote_port()
1185 rport = __unlink_remote_port(nport); in fcloop_delete_remote_port()
1192 if (!nport) in fcloop_delete_remote_port()
1195 ret = __remoteport_unreg(nport, rport); in fcloop_delete_remote_port()
1205 struct fcloop_nport *nport; in fcloop_create_target_port() local
1210 nport = fcloop_alloc_nport(buf, count, false); in fcloop_create_target_port()
1211 if (!nport) in fcloop_create_target_port()
1214 tinfo.node_name = nport->node_name; in fcloop_create_target_port()
1215 tinfo.port_name = nport->port_name; in fcloop_create_target_port()
1216 tinfo.port_id = nport->port_id; in fcloop_create_target_port()
1221 fcloop_nport_put(nport); in fcloop_create_target_port()
1228 tport->remoteport = (nport->rport) ? nport->rport->remoteport : NULL; in fcloop_create_target_port()
1229 if (nport->rport) in fcloop_create_target_port()
1230 nport->rport->targetport = targetport; in fcloop_create_target_port()
1231 tport->nport = nport; in fcloop_create_target_port()
1232 tport->lport = nport->lport; in fcloop_create_target_port()
1233 nport->tport = tport; in fcloop_create_target_port()
1240 __unlink_target_port(struct fcloop_nport *nport) in __unlink_target_port() argument
1242 struct fcloop_tport *tport = nport->tport; in __unlink_target_port()
1244 if (tport && nport->rport) in __unlink_target_port()
1245 nport->rport->targetport = NULL; in __unlink_target_port()
1246 nport->tport = NULL; in __unlink_target_port()
1252 __targetport_unreg(struct fcloop_nport *nport, struct fcloop_tport *tport) in __targetport_unreg() argument
1264 struct fcloop_nport *nport = NULL, *tmpport; in fcloop_delete_target_port() local
1279 nport = tmpport; in fcloop_delete_target_port()
1280 tport = __unlink_target_port(nport); in fcloop_delete_target_port()
1287 if (!nport) in fcloop_delete_target_port()
1290 ret = __targetport_unreg(nport, tport); in fcloop_delete_target_port()
1358 struct fcloop_nport *nport; in fcloop_exit() local
1367 nport = list_first_entry_or_null(&fcloop_nports, in fcloop_exit()
1368 typeof(*nport), nport_list); in fcloop_exit()
1369 if (!nport) in fcloop_exit()
1372 tport = __unlink_target_port(nport); in fcloop_exit()
1373 rport = __unlink_remote_port(nport); in fcloop_exit()
1377 ret = __targetport_unreg(nport, tport); in fcloop_exit()
1381 ret = __remoteport_unreg(nport, rport); in fcloop_exit()