Lines Matching full:ini
732 struct smc_init_info *ini) in smc_link_save_peer_info() argument
735 memcpy(link->peer_gid, ini->peer_gid, SMC_GID_SIZE); in smc_link_save_peer_info()
736 memcpy(link->peer_mac, ini->peer_mac, sizeof(link->peer_mac)); in smc_link_save_peer_info()
991 static int smc_find_rdma_device(struct smc_sock *smc, struct smc_init_info *ini) in smc_find_rdma_device() argument
997 smc_pnet_find_roce_resource(smc->clcsock->sk, ini); in smc_find_rdma_device()
998 if (!ini->check_smcrv2 && !ini->ib_dev) in smc_find_rdma_device()
1000 if (ini->check_smcrv2 && !ini->smcrv2.ib_dev_v2) in smc_find_rdma_device()
1007 static int smc_find_ism_device(struct smc_sock *smc, struct smc_init_info *ini) in smc_find_ism_device() argument
1010 smc_pnet_find_ism_resource(smc->clcsock->sk, ini); in smc_find_ism_device()
1011 if (!ini->ism_dev[0]) in smc_find_ism_device()
1014 ini->ism_chid[0] = smc_ism_get_chid(ini->ism_dev[0]); in smc_find_ism_device()
1019 static bool smc_find_ism_v2_is_unique_chid(u16 chid, struct smc_init_info *ini, in smc_find_ism_v2_is_unique_chid() argument
1022 int i = (!ini->ism_dev[0]) ? 1 : 0; in smc_find_ism_v2_is_unique_chid()
1025 if (ini->ism_chid[i] == chid) in smc_find_ism_v2_is_unique_chid()
1034 struct smc_init_info *ini) in smc_find_ism_v2_device_clnt() argument
1042 if (smcd_indicated(ini->smc_type_v1)) in smc_find_ism_v2_device_clnt()
1046 if (smcd->going_away || smcd == ini->ism_dev[0]) in smc_find_ism_v2_device_clnt()
1049 if (!smc_find_ism_v2_is_unique_chid(chid, ini, i)) in smc_find_ism_v2_device_clnt()
1061 ini->ism_dev[i] = smcd; in smc_find_ism_v2_device_clnt()
1062 ini->ism_chid[i] = chid; in smc_find_ism_v2_device_clnt()
1063 ini->is_smcd = true; in smc_find_ism_v2_device_clnt()
1072 ini->ism_offered_cnt = i - 1; in smc_find_ism_v2_device_clnt()
1073 if (!ini->ism_dev[0] && !ini->ism_dev[1]) in smc_find_ism_v2_device_clnt()
1074 ini->smcd_version = 0; in smc_find_ism_v2_device_clnt()
1081 struct smc_init_info *ini) in smc_connect_ism_vlan_setup() argument
1083 if (ini->vlan_id && smc_ism_get_vlan(ini->ism_dev[0], ini->vlan_id)) in smc_connect_ism_vlan_setup()
1089 struct smc_init_info *ini) in smc_find_proposal_devices() argument
1094 if (!(ini->smcd_version & SMC_V1) || in smc_find_proposal_devices()
1095 smc_find_ism_device(smc, ini) || in smc_find_proposal_devices()
1096 smc_connect_ism_vlan_setup(smc, ini)) in smc_find_proposal_devices()
1097 ini->smcd_version &= ~SMC_V1; in smc_find_proposal_devices()
1101 if (!(ini->smcr_version & SMC_V1) || in smc_find_proposal_devices()
1102 smc_find_rdma_device(smc, ini)) in smc_find_proposal_devices()
1103 ini->smcr_version &= ~SMC_V1; in smc_find_proposal_devices()
1106 ini->smc_type_v1 = smc_indicated_type(ini->smcd_version & SMC_V1, in smc_find_proposal_devices()
1107 ini->smcr_version & SMC_V1); in smc_find_proposal_devices()
1110 if (!(ini->smcd_version & SMC_V2) || in smc_find_proposal_devices()
1112 smc_find_ism_v2_device_clnt(smc, ini)) in smc_find_proposal_devices()
1113 ini->smcd_version &= ~SMC_V2; in smc_find_proposal_devices()
1116 ini->check_smcrv2 = true; in smc_find_proposal_devices()
1117 ini->smcrv2.saddr = smc->clcsock->sk->sk_rcv_saddr; in smc_find_proposal_devices()
1118 if (!(ini->smcr_version & SMC_V2) || in smc_find_proposal_devices()
1121 smc_find_rdma_device(smc, ini)) in smc_find_proposal_devices()
1122 ini->smcr_version &= ~SMC_V2; in smc_find_proposal_devices()
1123 ini->check_smcrv2 = false; in smc_find_proposal_devices()
1125 ini->smc_type_v2 = smc_indicated_type(ini->smcd_version & SMC_V2, in smc_find_proposal_devices()
1126 ini->smcr_version & SMC_V2); in smc_find_proposal_devices()
1129 if (ini->smc_type_v1 == SMC_TYPE_N && ini->smc_type_v2 == SMC_TYPE_N) in smc_find_proposal_devices()
1139 struct smc_init_info *ini) in smc_connect_ism_vlan_cleanup() argument
1141 if (!smcd_indicated(ini->smc_type_v1)) in smc_connect_ism_vlan_cleanup()
1143 if (ini->vlan_id && smc_ism_put_vlan(ini->ism_dev[0], ini->vlan_id)) in smc_connect_ism_vlan_cleanup()
1156 struct smc_init_info *ini) in smc_connect_clc() argument
1161 rc = smc_clc_send_proposal(smc, ini); in smc_connect_clc()
1199 struct smc_init_info *ini) in smc_connect_rdma_v2_prepare() argument
1206 if (!ini->first_contact_peer || aclc->hdr.version == SMC_V1) in smc_connect_rdma_v2_prepare()
1210 memcpy(ini->smcrv2.nexthop_mac, &aclc->r0.lcl.mac, ETH_ALEN); in smc_connect_rdma_v2_prepare()
1211 ini->smcrv2.uses_gateway = false; in smc_connect_rdma_v2_prepare()
1215 ini->smcrv2.nexthop_mac, in smc_connect_rdma_v2_prepare()
1216 &ini->smcrv2.uses_gateway)) in smc_connect_rdma_v2_prepare()
1218 if (!ini->smcrv2.uses_gateway) { in smc_connect_rdma_v2_prepare()
1224 ini->release_nr = fce->release; in smc_connect_rdma_v2_prepare()
1225 rc = smc_clc_clnt_v2x_features_validate(fce, ini); in smc_connect_rdma_v2_prepare()
1235 struct smc_init_info *ini) in smc_connect_rdma() argument
1241 ini->is_smcd = false; in smc_connect_rdma()
1242 ini->ib_clcqpn = ntoh24(aclc->r0.qpn); in smc_connect_rdma()
1243 ini->first_contact_peer = aclc->hdr.typev2 & SMC_FIRST_CONTACT_MASK; in smc_connect_rdma()
1244 memcpy(ini->peer_systemid, aclc->r0.lcl.id_for_peer, SMC_SYSTEMID_LEN); in smc_connect_rdma()
1245 memcpy(ini->peer_gid, aclc->r0.lcl.gid, SMC_GID_SIZE); in smc_connect_rdma()
1246 memcpy(ini->peer_mac, aclc->r0.lcl.mac, ETH_ALEN); in smc_connect_rdma()
1247 ini->max_conns = SMC_CONN_PER_LGR_MAX; in smc_connect_rdma()
1248 ini->max_links = SMC_LINKS_ADD_LNK_MAX; in smc_connect_rdma()
1250 reason_code = smc_connect_rdma_v2_prepare(smc, aclc, ini); in smc_connect_rdma()
1255 reason_code = smc_conn_create(smc, ini); in smc_connect_rdma()
1263 if (ini->first_contact_local) { in smc_connect_rdma()
1294 if (ini->first_contact_local) in smc_connect_rdma()
1295 smc_link_save_peer_info(link, aclc, ini); in smc_connect_rdma()
1304 if (ini->first_contact_local) { in smc_connect_rdma()
1325 if (ini->first_contact_local) in smc_connect_rdma()
1326 smc_fill_gid_list(link->lgr, &ini->smcrv2.gidlist, in smc_connect_rdma()
1330 reason_code = smc_clc_send_confirm(smc, ini->first_contact_local, in smc_connect_rdma()
1331 aclc->hdr.version, eid, ini); in smc_connect_rdma()
1337 if (ini->first_contact_local) { in smc_connect_rdma()
1354 smc_conn_abort(smc, ini->first_contact_local); in smc_connect_rdma()
1366 struct smc_init_info *ini) in smc_v2_determine_accepted_chid() argument
1370 for (i = 0; i < ini->ism_offered_cnt + 1; i++) { in smc_v2_determine_accepted_chid()
1371 if (ini->ism_chid[i] == ntohs(aclc->d1.chid)) { in smc_v2_determine_accepted_chid()
1372 ini->ism_selected = i; in smc_v2_determine_accepted_chid()
1383 struct smc_init_info *ini) in smc_connect_ism() argument
1388 ini->is_smcd = true; in smc_connect_ism()
1389 ini->first_contact_peer = aclc->hdr.typev2 & SMC_FIRST_CONTACT_MASK; in smc_connect_ism()
1392 if (ini->first_contact_peer) { in smc_connect_ism()
1396 ini->release_nr = fce->release; in smc_connect_ism()
1397 rc = smc_clc_clnt_v2x_features_validate(fce, ini); in smc_connect_ism()
1402 rc = smc_v2_determine_accepted_chid(aclc, ini); in smc_connect_ism()
1406 if (__smc_ism_is_virtual(ini->ism_chid[ini->ism_selected])) in smc_connect_ism()
1407 ini->ism_peer_gid[ini->ism_selected].gid_ext = in smc_connect_ism()
1411 ini->ism_peer_gid[ini->ism_selected].gid = ntohll(aclc->d0.gid); in smc_connect_ism()
1415 rc = smc_conn_create(smc, ini); in smc_connect_ism()
1443 rc = smc_clc_send_confirm(smc, ini->first_contact_local, in smc_connect_ism()
1444 aclc->hdr.version, eid, ini); in smc_connect_ism()
1456 smc_conn_abort(smc, ini->first_contact_local); in smc_connect_ism()
1464 static int smc_connect_check_aclc(struct smc_init_info *ini, in smc_connect_check_aclc() argument
1473 !smcr_indicated(ini->smc_type_v2)) || in smc_connect_check_aclc()
1475 !smcd_indicated(ini->smc_type_v2))) in smc_connect_check_aclc()
1479 !smcr_indicated(ini->smc_type_v1)) || in smc_connect_check_aclc()
1481 !smcd_indicated(ini->smc_type_v1))) in smc_connect_check_aclc()
1493 struct smc_init_info *ini = NULL; in __smc_connect() local
1509 ini = kzalloc(sizeof(*ini), GFP_KERNEL); in __smc_connect()
1510 if (!ini) in __smc_connect()
1514 ini->smcd_version = SMC_V1 | SMC_V2; in __smc_connect()
1515 ini->smcr_version = SMC_V1 | SMC_V2; in __smc_connect()
1516 ini->smc_type_v1 = SMC_TYPE_B; in __smc_connect()
1517 ini->smc_type_v2 = SMC_TYPE_B; in __smc_connect()
1520 if (smc_vlan_by_tcpsk(smc->clcsock, ini)) { in __smc_connect()
1521 ini->smcd_version &= ~SMC_V1; in __smc_connect()
1522 ini->smcr_version = 0; in __smc_connect()
1523 ini->smc_type_v1 = SMC_TYPE_N; in __smc_connect()
1524 if (!ini->smcd_version) { in __smc_connect()
1530 rc = smc_find_proposal_devices(smc, ini); in __smc_connect()
1542 rc = smc_connect_clc(smc, aclc, ini); in __smc_connect()
1553 rc = smc_connect_check_aclc(ini, aclc); in __smc_connect()
1560 ini->smcr_version = version; in __smc_connect()
1561 rc = smc_connect_rdma(smc, aclc, ini); in __smc_connect()
1563 ini->smcd_version = version; in __smc_connect()
1564 rc = smc_connect_ism(smc, aclc, ini); in __smc_connect()
1570 smc_connect_ism_vlan_cleanup(smc, ini); in __smc_connect()
1572 kfree(ini); in __smc_connect()
1576 smc_connect_ism_vlan_cleanup(smc, ini); in __smc_connect()
1579 kfree(ini); in __smc_connect()
1973 struct smc_init_info *ini) in smc_listen_v2_check() argument
1979 ini->smc_type_v1 = pclc->hdr.typev1; in smc_listen_v2_check()
1980 ini->smc_type_v2 = pclc->hdr.typev2; in smc_listen_v2_check()
1981 ini->smcd_version = smcd_indicated(ini->smc_type_v1) ? SMC_V1 : 0; in smc_listen_v2_check()
1982 ini->smcr_version = smcr_indicated(ini->smc_type_v1) ? SMC_V1 : 0; in smc_listen_v2_check()
1984 if (smcd_indicated(ini->smc_type_v2)) in smc_listen_v2_check()
1985 ini->smcd_version |= SMC_V2; in smc_listen_v2_check()
1986 if (smcr_indicated(ini->smc_type_v2)) in smc_listen_v2_check()
1987 ini->smcr_version |= SMC_V2; in smc_listen_v2_check()
1989 if (!(ini->smcd_version & SMC_V2) && !(ini->smcr_version & SMC_V2)) { in smc_listen_v2_check()
1995 ini->smcd_version &= ~SMC_V2; in smc_listen_v2_check()
1996 ini->smcr_version &= ~SMC_V2; in smc_listen_v2_check()
2001 if (ini->smcd_version & SMC_V2) { in smc_listen_v2_check()
2003 ini->smcd_version &= ~SMC_V2; in smc_listen_v2_check()
2006 ini->smcd_version &= ~SMC_V2; in smc_listen_v2_check()
2010 ini->smcd_version &= ~SMC_V2; in smc_listen_v2_check()
2014 if (ini->smcr_version & SMC_V2) { in smc_listen_v2_check()
2016 ini->smcr_version &= ~SMC_V2; in smc_listen_v2_check()
2021 ini->release_nr = pclc_v2_ext->hdr.flag.release; in smc_listen_v2_check()
2023 ini->release_nr = SMC_RELEASE; in smc_listen_v2_check()
2026 if (!ini->smcd_version && !ini->smcr_version) in smc_listen_v2_check()
2052 struct smc_init_info *ini) in smc_listen_rdma_init() argument
2057 rc = smc_conn_create(new_smc, ini); in smc_listen_rdma_init()
2063 smc_conn_abort(new_smc, ini->first_contact_local); in smc_listen_rdma_init()
2072 struct smc_init_info *ini) in smc_listen_ism_init() argument
2076 rc = smc_conn_create(new_smc, ini); in smc_listen_ism_init()
2083 smc_conn_abort(new_smc, ini->first_contact_local); in smc_listen_ism_init()
2092 struct smc_init_info *ini, in smc_is_already_selected() argument
2098 if (smcd == ini->ism_dev[i]) in smc_is_already_selected()
2105 static void smc_check_ism_v2_match(struct smc_init_info *ini, in smc_check_ism_v2_match() argument
2115 if (smc_is_already_selected(smcd, ini, *matches)) in smc_check_ism_v2_match()
2119 ini->ism_peer_gid[*matches].gid = proposed_gid->gid; in smc_check_ism_v2_match()
2121 ini->ism_peer_gid[*matches].gid_ext = in smc_check_ism_v2_match()
2124 ini->ism_dev[*matches] = smcd; in smc_check_ism_v2_match()
2131 static void smc_find_ism_store_rc(u32 rc, struct smc_init_info *ini) in smc_find_ism_store_rc() argument
2133 if (!ini->rc) in smc_find_ism_store_rc()
2134 ini->rc = rc; in smc_find_ism_store_rc()
2139 struct smc_init_info *ini) in smc_find_ism_v2_device_serv() argument
2151 if (!(ini->smcd_version & SMC_V2) || !smcd_indicated(ini->smc_type_v2)) in smc_find_ism_v2_device_serv()
2165 smc_check_ism_v2_match(ini, ntohs(pclc_smcd->ism.chid), in smc_find_ism_v2_device_serv()
2189 smc_check_ism_v2_match(ini, chid, &smcd_gid, &matches); in smc_find_ism_v2_device_serv()
2193 if (!ini->ism_dev[0]) { in smc_find_ism_v2_device_serv()
2194 smc_find_ism_store_rc(SMC_CLC_DECL_NOSMCD2DEV, ini); in smc_find_ism_v2_device_serv()
2199 if (!smc_clc_match_eid(ini->negotiated_eid, smc_v2_ext, in smc_find_ism_v2_device_serv()
2204 smcd_version = ini->smcd_version; in smc_find_ism_v2_device_serv()
2206 ini->smcd_version = SMC_V2; in smc_find_ism_v2_device_serv()
2207 ini->is_smcd = true; in smc_find_ism_v2_device_serv()
2208 ini->ism_selected = i; in smc_find_ism_v2_device_serv()
2209 rc = smc_listen_ism_init(new_smc, ini); in smc_find_ism_v2_device_serv()
2211 smc_find_ism_store_rc(rc, ini); in smc_find_ism_v2_device_serv()
2218 ini->smcd_version = smcd_version; /* restore original value */ in smc_find_ism_v2_device_serv()
2219 ini->negotiated_eid[0] = 0; in smc_find_ism_v2_device_serv()
2222 ini->smcd_version &= ~SMC_V2; in smc_find_ism_v2_device_serv()
2223 ini->ism_dev[0] = NULL; in smc_find_ism_v2_device_serv()
2224 ini->is_smcd = false; in smc_find_ism_v2_device_serv()
2229 struct smc_init_info *ini) in smc_find_ism_v1_device_serv() argument
2235 if (!(ini->smcd_version & SMC_V1) || in smc_find_ism_v1_device_serv()
2236 !smcd_indicated(ini->smc_type_v1) || in smc_find_ism_v1_device_serv()
2239 ini->is_smcd = true; /* prepare ISM check */ in smc_find_ism_v1_device_serv()
2240 ini->ism_peer_gid[0].gid = ntohll(pclc_smcd->ism.gid); in smc_find_ism_v1_device_serv()
2241 ini->ism_peer_gid[0].gid_ext = 0; in smc_find_ism_v1_device_serv()
2242 rc = smc_find_ism_device(new_smc, ini); in smc_find_ism_v1_device_serv()
2245 ini->ism_selected = 0; in smc_find_ism_v1_device_serv()
2246 rc = smc_listen_ism_init(new_smc, ini); in smc_find_ism_v1_device_serv()
2251 smc_find_ism_store_rc(rc, ini); in smc_find_ism_v1_device_serv()
2252 ini->smcd_version &= ~SMC_V1; in smc_find_ism_v1_device_serv()
2253 ini->ism_dev[0] = NULL; in smc_find_ism_v1_device_serv()
2254 ini->is_smcd = false; in smc_find_ism_v1_device_serv()
2278 struct smc_init_info *ini) in smc_find_rdma_v2_device_serv() argument
2284 if (!(ini->smcr_version & SMC_V2) || !smcr_indicated(ini->smc_type_v2)) in smc_find_rdma_v2_device_serv()
2289 !smc_clc_match_eid(ini->negotiated_eid, smc_v2_ext, NULL, NULL)) in smc_find_rdma_v2_device_serv()
2293 memcpy(ini->peer_systemid, pclc->lcl.id_for_peer, SMC_SYSTEMID_LEN); in smc_find_rdma_v2_device_serv()
2294 memcpy(ini->peer_gid, smc_v2_ext->roce, SMC_GID_SIZE); in smc_find_rdma_v2_device_serv()
2295 memcpy(ini->peer_mac, pclc->lcl.mac, ETH_ALEN); in smc_find_rdma_v2_device_serv()
2296 ini->check_smcrv2 = true; in smc_find_rdma_v2_device_serv()
2297 ini->smcrv2.clc_sk = new_smc->clcsock->sk; in smc_find_rdma_v2_device_serv()
2298 ini->smcrv2.saddr = new_smc->clcsock->sk->sk_rcv_saddr; in smc_find_rdma_v2_device_serv()
2299 ini->smcrv2.daddr = smc_ib_gid_to_ipv4(smc_v2_ext->roce); in smc_find_rdma_v2_device_serv()
2300 rc = smc_find_rdma_device(new_smc, ini); in smc_find_rdma_v2_device_serv()
2302 smc_find_ism_store_rc(rc, ini); in smc_find_rdma_v2_device_serv()
2305 if (!ini->smcrv2.uses_gateway) in smc_find_rdma_v2_device_serv()
2306 memcpy(ini->smcrv2.nexthop_mac, pclc->lcl.mac, ETH_ALEN); in smc_find_rdma_v2_device_serv()
2308 smcr_version = ini->smcr_version; in smc_find_rdma_v2_device_serv()
2309 ini->smcr_version = SMC_V2; in smc_find_rdma_v2_device_serv()
2310 rc = smc_listen_rdma_init(new_smc, ini); in smc_find_rdma_v2_device_serv()
2312 rc = smc_listen_rdma_reg(new_smc, ini->first_contact_local); in smc_find_rdma_v2_device_serv()
2314 smc_conn_abort(new_smc, ini->first_contact_local); in smc_find_rdma_v2_device_serv()
2318 ini->smcr_version = smcr_version; in smc_find_rdma_v2_device_serv()
2319 smc_find_ism_store_rc(rc, ini); in smc_find_rdma_v2_device_serv()
2322 ini->smcr_version &= ~SMC_V2; in smc_find_rdma_v2_device_serv()
2323 ini->smcrv2.ib_dev_v2 = NULL; in smc_find_rdma_v2_device_serv()
2324 ini->check_smcrv2 = false; in smc_find_rdma_v2_device_serv()
2329 struct smc_init_info *ini) in smc_find_rdma_v1_device_serv() argument
2333 if (!(ini->smcr_version & SMC_V1) || !smcr_indicated(ini->smc_type_v1)) in smc_find_rdma_v1_device_serv()
2337 memcpy(ini->peer_systemid, pclc->lcl.id_for_peer, SMC_SYSTEMID_LEN); in smc_find_rdma_v1_device_serv()
2338 memcpy(ini->peer_gid, pclc->lcl.gid, SMC_GID_SIZE); in smc_find_rdma_v1_device_serv()
2339 memcpy(ini->peer_mac, pclc->lcl.mac, ETH_ALEN); in smc_find_rdma_v1_device_serv()
2340 rc = smc_find_rdma_device(new_smc, ini); in smc_find_rdma_v1_device_serv()
2345 rc = smc_listen_rdma_init(new_smc, ini); in smc_find_rdma_v1_device_serv()
2348 return smc_listen_rdma_reg(new_smc, ini->first_contact_local); in smc_find_rdma_v1_device_serv()
2354 struct smc_init_info *ini) in smc_listen_find_device() argument
2359 smc_find_ism_v2_device_serv(new_smc, pclc, ini); in smc_listen_find_device()
2360 if (ini->ism_dev[0]) in smc_listen_find_device()
2366 smc_find_ism_store_rc(prfx_rc, ini); in smc_listen_find_device()
2369 if (smc_vlan_by_tcpsk(new_smc->clcsock, ini)) in smc_listen_find_device()
2370 return ini->rc ?: SMC_CLC_DECL_GETVLANERR; in smc_listen_find_device()
2374 smc_find_ism_v1_device_serv(new_smc, pclc, ini); in smc_listen_find_device()
2375 if (ini->ism_dev[0]) in smc_listen_find_device()
2381 return ini->rc ?: SMC_CLC_DECL_NOSMCDDEV; in smc_listen_find_device()
2384 smc_find_rdma_v2_device_serv(new_smc, pclc, ini); in smc_listen_find_device()
2385 if (ini->smcrv2.ib_dev_v2) in smc_listen_find_device()
2392 rc = smc_find_rdma_v1_device_serv(new_smc, pclc, ini); in smc_listen_find_device()
2393 smc_find_ism_store_rc(rc, ini); in smc_listen_find_device()
2394 return (!rc) ? 0 : ini->rc; in smc_listen_find_device()
2403 struct smc_init_info *ini) in smc_listen_rdma_finish() argument
2409 smc_link_save_peer_info(link, cclc, ini); in smc_listen_rdma_finish()
2434 struct smc_init_info *ini = NULL; in smc_listen_work() local
2481 ini = kzalloc(sizeof(*ini), GFP_KERNEL); in smc_listen_work()
2482 if (!ini) { in smc_listen_work()
2488 rc = smc_listen_v2_check(new_smc, pclc, ini); in smc_listen_work()
2492 rc = smc_clc_srv_v2x_features_validate(pclc, ini); in smc_listen_work()
2501 rc = smc_listen_find_device(new_smc, pclc, ini); in smc_listen_work()
2506 accept_version = ini->is_smcd ? ini->smcd_version : ini->smcr_version; in smc_listen_work()
2507 rc = smc_clc_send_accept(new_smc, ini->first_contact_local, in smc_listen_work()
2508 accept_version, ini->negotiated_eid, ini); in smc_listen_work()
2513 if (ini->is_smcd) in smc_listen_work()
2522 if (!ini->is_smcd) in smc_listen_work()
2527 rc = smc_clc_v2x_features_confirm_check(cclc, ini); in smc_listen_work()
2529 if (!ini->is_smcd) in smc_listen_work()
2540 if (!ini->is_smcd) { in smc_listen_work()
2542 ini->first_contact_local, ini); in smc_listen_work()
2549 if (ini->is_smcd && in smc_listen_work()
2557 SMC_STAT_SERV_SUCC_INC(sock_net(newclcsock->sk), ini); in smc_listen_work()
2563 smc_listen_decline(new_smc, rc, ini ? ini->first_contact_local : 0, in smc_listen_work()
2566 kfree(ini); in smc_listen_work()