Lines Matching refs:tcp

25     lm_tcp_state_t      * tcp,
32 lm_tcp_state_t *tcp,
39 lm_tcp_state_t * tcp,
45 lm_tcp_state_t * tcp,
53 lm_tcp_state_t * tcp,
80 lm_tcp_state_t * tcp, in _lm_tcp_isle_find() argument
87 DbgBreakIf(!(tcp && tcp->rx_con)); in _lm_tcp_isle_find()
88 gen_info = &tcp->rx_con->u.rx.gen_info; in _lm_tcp_isle_find()
107 lm_tcp_state_t * tcp, in _lm_tcp_isle_remove() argument
119 DbgBreakIf(!(tcp && tcp->rx_con)); in _lm_tcp_isle_remove()
120 gen_info = &tcp->rx_con->u.rx.gen_info; in _lm_tcp_isle_remove()
123 isle = _lm_tcp_isle_find(pdev,tcp,num_isle); in _lm_tcp_isle_remove()
177 u32_t lm_tcp_rx_peninsula_to_rq(lm_device_t * pdev, lm_tcp_state_t * tcp, u32_t max_num_bytes_to_co…
196 lm_tcp_state_t *tcp in lm_tcp_rx_write_db() argument
199 lm_tcp_con_t *rx_con = tcp->rx_con; in lm_tcp_rx_write_db()
208 tcp->cid, rx_con->db_more_bytes, rx_con->db_more_bds); in lm_tcp_rx_write_db()
209 TOE_RX_DOORBELL(pdev, tcp->cid); in lm_tcp_rx_write_db()
231 lm_tcp_state_t * tcp, in lm_tcp_rx_post_sws() argument
252 RESET_FLAGS(tcp->rx_con->db_data.rx->flags, TOE_RX_DB_DATA_IGNORE_WND_UPDATES); in lm_tcp_rx_post_sws()
283 (diff_to_fw >= (((s32_t)tcp->tcp_cached.initial_rcv_wnd) / 2)))) { in lm_tcp_rx_post_sws()
290 … if (!(tcp->rx_con->flags & TCP_RX_DB_BLOCKED) && !(tcp->rx_con->flags & TCP_RX_POST_BLOCKED)) { in lm_tcp_rx_post_sws()
294 tcp->cid, diff_to_fw); in lm_tcp_rx_post_sws()
295 TOE_RX_DOORBELL(pdev, tcp->cid); in lm_tcp_rx_post_sws()
336 …lm_device_t * pdev, lm_tcp_state_t * tcp, lm_tcp_con_t * con, lm_tcp_buffer_t * tcp_buf, u32_t com… in lm_tcp_complete_tcp_buf() argument
369 tcp->cid, tcp_buf->size); in lm_tcp_complete_tcp_buf()
375 mm_tcp_complete_bufs(pdev, tcp, con, &completed_bufs, LM_STATUS_SUCCESS); in lm_tcp_complete_tcp_buf()
383 lm_tcp_state_t * tcp, in lm_tcp_rx_cmp_process() argument
392 … "##lm_tcp_rx_cmp_process, completed_bytes=%d, push=%d cid=%d\n", completed_bytes, push, tcp->cid); in lm_tcp_rx_cmp_process()
395 rx_con = tcp->rx_con; in lm_tcp_rx_cmp_process()
408 … actual_bytes_completed = lm_tcp_complete_nbytes(pdev, tcp, rx_con, completed_bytes , push); in lm_tcp_rx_cmp_process()
428 lm_tcp_state_t * tcp, in lm_tcp_rx_skp_process() argument
437 …pdev, VERBOSEl4rx, "##lm_tcp_rx_skp_process, bytes_skipped=%d, cid=%d\n", bytes_skipped, tcp->cid); in lm_tcp_rx_skp_process()
445 rx_con = tcp->rx_con; in lm_tcp_rx_skp_process()
453 comp_bytes = min(bytes_skipped, tcp->rx_con->u.rx.skp_bytes_copied); in lm_tcp_rx_skp_process()
455 tcp->rx_con->bytes_comp_cnt += comp_bytes; in lm_tcp_rx_skp_process()
457 lm_tcp_complete_nbytes(pdev, tcp, tcp->rx_con, comp_bytes, /* push=*/ 0); in lm_tcp_rx_skp_process()
459 tcp->rx_con->u.rx.skp_bytes_copied -= comp_bytes; in lm_tcp_rx_skp_process()
470 …rx_con->u.rx.gen_info.bytes_copied_cnt_in_process += lm_tcp_rx_peninsula_to_rq(pdev, tcp, bytes_sk… in lm_tcp_rx_skp_process()
480 lm_tcp_state_t * tcp, in lm_tcp_rx_delete_isle() argument
485 lm_tcp_con_t * rx_con = tcp->rx_con; in lm_tcp_rx_delete_isle()
492 DbgMessage(pdev, VERBOSEl4rx, "##lm_tcp_rx_delete_isle cid=%d isle=%d\n", tcp->cid, num_isle); in lm_tcp_rx_delete_isle()
497 …isle_nbytes = _lm_tcp_isle_remove(pdev, tcp, sb_idx, num_isle + (num_of_isles - 1), &removed_list); in lm_tcp_rx_delete_isle()
506 … lm_tcp_return_list_of_gen_bufs(pdev,tcp ,&removed_list, MM_TCP_RGB_COLLECT_GEN_BUFS, sb_idx); in lm_tcp_rx_delete_isle()
507 tcp->rx_con->droped_non_empty_isles++; in lm_tcp_rx_delete_isle()
510 tcp->rx_con->droped_empty_isles++; in lm_tcp_rx_delete_isle()
563 lm_tcp_state_t * tcp, in lm_tcp_incr_consumed_gen() argument
567 volatile struct toe_rx_db_data *db_data = tcp->rx_con->db_data.rx; in lm_tcp_incr_consumed_gen()
577 if (nbytes < tcp->rx_con->u.rx.sws_info.mss) { in lm_tcp_incr_consumed_gen()
578 if (!(tcp->rx_con->flags & TCP_RX_DB_BLOCKED)) { in lm_tcp_incr_consumed_gen()
579 TOE_RX_DOORBELL(pdev, tcp->cid); in lm_tcp_incr_consumed_gen()
614 lm_tcp_state_t * tcp, in lm_tcp_rx_peninsula_to_rq_copy() argument
628 …l4rx, "###lm_tcp_rx_peninsula_to_rq_copy tcp_buf = 0x%x cid=%d\n", *((u32_t *)&tcp_buf), tcp->cid); in lm_tcp_rx_peninsula_to_rq_copy()
630 gen_info = &tcp->rx_con->u.rx.gen_info; in lm_tcp_rx_peninsula_to_rq_copy()
648 if (mm_tcp_copy_to_tcp_buf(pdev, tcp, tcp_buf, in lm_tcp_rx_peninsula_to_rq_copy()
658 tcp, in lm_tcp_rx_peninsula_to_rq_copy()
714 u32_t lm_tcp_rx_peninsula_to_rq(lm_device_t * pdev, lm_tcp_state_t * tcp, u32_t max_num_bytes_to_co… in lm_tcp_rx_peninsula_to_rq() argument
721 DbgMessage(pdev, VERBOSEl4rx, "###lm_tcp_rx_peninsula_to_rq cid=%d\n", tcp->cid); in lm_tcp_rx_peninsula_to_rq()
723 gen_info = &tcp->rx_con->u.rx.gen_info; in lm_tcp_rx_peninsula_to_rq()
730 curr_tcp_buf = lm_tcp_next_entry_dpc_active_list(tcp->rx_con); in lm_tcp_rx_peninsula_to_rq()
736 …currently_copied = lm_tcp_rx_peninsula_to_rq_copy(pdev, tcp, curr_tcp_buf, &return_list, max_num_b… in lm_tcp_rx_peninsula_to_rq()
745 lm_tcp_return_list_of_gen_bufs(pdev,tcp , &return_list, in lm_tcp_rx_peninsula_to_rq()
756 tcp->rx_con->bytes_comp_cnt += copied_bytes; in lm_tcp_rx_peninsula_to_rq()
758 lm_tcp_complete_nbytes(pdev, tcp, tcp->rx_con, copied_bytes, /* push=*/ 0); in lm_tcp_rx_peninsula_to_rq()
760 …e(pdev, VERBOSEl4rx, "lm_tcp_rx_peninsula_to_rq copied %d bytes cid=%d\n", copied_bytes, tcp->cid); in lm_tcp_rx_peninsula_to_rq()
792 void lm_tcp_rx_gen_peninsula_process(lm_device_t * pdev, lm_tcp_state_t * tcp, u32_t nbytes, lm_tcp… in lm_tcp_rx_gen_peninsula_process() argument
794 lm_tcp_con_t * rx_con = tcp->rx_con; in lm_tcp_rx_gen_peninsula_process()
798 …ev, VERBOSEl4rx, "##lm_tcp_rx_gen_peninsula_process, nbytes=%d, cid=%d add=%s\n", nbytes, tcp->cid, in lm_tcp_rx_gen_peninsula_process()
825 void lm_tcp_rx_gen_isle_create(lm_device_t * pdev, lm_tcp_state_t * tcp, lm_tcp_gen_buf_t * gen_buf… in lm_tcp_rx_gen_isle_create() argument
829 lm_tcp_con_t * rx_con = tcp->rx_con; in lm_tcp_rx_gen_isle_create()
843 current_isle->dedicated_cid = tcp->cid; in lm_tcp_rx_gen_isle_create()
861 next_isle = _lm_tcp_isle_find(pdev,tcp,isle_num); in lm_tcp_rx_gen_isle_create()
886 void lm_tcp_rx_gen_isle_right_process(lm_device_t * pdev, lm_tcp_state_t * tcp, u32_t nbytes, lm_tc… in lm_tcp_rx_gen_isle_right_process() argument
888 lm_tcp_con_t * rx_con = tcp->rx_con; in lm_tcp_rx_gen_isle_right_process()
893 …DbgMessage(pdev, VERBOSEl4rx, "##lm_tcp_rx_gen_isle_process nbytes = %d cid=%d\n", nbytes, tcp->ci… in lm_tcp_rx_gen_isle_right_process()
896 requested_isle = _lm_tcp_isle_find(pdev,tcp,isle_num); in lm_tcp_rx_gen_isle_right_process()
936 void lm_tcp_rx_gen_isle_left_process(lm_device_t * pdev, lm_tcp_state_t * tcp, u32_t nbytes, lm_tcp… in lm_tcp_rx_gen_isle_left_process() argument
938 lm_tcp_con_t * rx_con = tcp->rx_con; in lm_tcp_rx_gen_isle_left_process()
943 …DbgMessage(pdev, VERBOSEl4rx, "##lm_tcp_rx_gen_isle_process nbytes = %d cid=%d\n", nbytes, tcp->ci… in lm_tcp_rx_gen_isle_left_process()
946 requested_isle = _lm_tcp_isle_find(pdev,tcp,isle_num); in lm_tcp_rx_gen_isle_left_process()
979 void lm_tcp_rx_gen_join_process(lm_device_t * pdev, lm_tcp_state_t * tcp, u8_t sb_idx, u8_t isle_nu… in lm_tcp_rx_gen_join_process() argument
981 lm_tcp_con_t * rx_con = tcp->rx_con; in lm_tcp_rx_gen_join_process()
986 DbgMessage(pdev, VERBOSEl4rx, "##lm_tcp_rx_gen_join_process cid=%d\n", tcp->cid); in lm_tcp_rx_gen_join_process()
996 isle_nbytes = _lm_tcp_isle_remove(pdev, tcp, sb_idx, 1, &gen_buf_list); in lm_tcp_rx_gen_join_process()
1010 start_isle = _lm_tcp_isle_find(pdev,tcp,isle_num); in lm_tcp_rx_gen_join_process()
1012 isle_nbytes = _lm_tcp_isle_remove(pdev, tcp, sb_idx, isle_num + 1, &gen_buf_list); in lm_tcp_rx_gen_join_process()
1063 void lm_tcp_rx_complete_tcp_fp(lm_device_t * pdev, lm_tcp_state_t * tcp, lm_tcp_con_t * con) in lm_tcp_rx_complete_tcp_fp() argument
1072 if (tcp->rx_con->u.rx.skp_bytes_copied) { in lm_tcp_rx_complete_tcp_fp()
1074 tcp->rx_con->bytes_comp_cnt += tcp->rx_con->u.rx.skp_bytes_copied; in lm_tcp_rx_complete_tcp_fp()
1076 … lm_tcp_complete_nbytes(pdev, tcp, tcp->rx_con, tcp->rx_con->u.rx.skp_bytes_copied, /* push=*/ 0); in lm_tcp_rx_complete_tcp_fp()
1077 tcp->rx_con->u.rx.skp_bytes_copied = 0; in lm_tcp_rx_complete_tcp_fp()
1087 …con->u.rx.gen_info.bytes_copied_cnt_in_comp += lm_tcp_rx_peninsula_to_rq(pdev, tcp, 0xffffffff,NON… in lm_tcp_rx_complete_tcp_fp()
1161 lm_tcp_complete_bufs(pdev,tcp,con); in lm_tcp_rx_complete_tcp_fp()
1166 mm_tcp_rx_indicate_gen(pdev,tcp); in lm_tcp_rx_complete_tcp_fp()
1167 …add_sws_bytes += tcp->rx_con->u.rx.gen_info.add_sws_bytes; /* any bytes we need to update will be … in lm_tcp_rx_complete_tcp_fp()
1168 tcp->rx_con->u.rx.gen_info.add_sws_bytes = 0; in lm_tcp_rx_complete_tcp_fp()
1172 lm_tcp_rx_post_sws(pdev, tcp, con, add_sws_bytes, TCP_RX_POST_SWS_INC); in lm_tcp_rx_complete_tcp_fp()
1184 lm_tcp_state_t * tcp, in lm_tcp_rx_process_cqe() argument
1208 DbgBreakIf(nbytes && tcp->rx_con->dpc_info.dpc_comp_blocked); in lm_tcp_rx_process_cqe()
1211 && d_list_entry_cnt(&tcp->rx_con->u.rx.gen_info.first_isle.isle_gen_bufs_list_head)) { in lm_tcp_rx_process_cqe()
1212 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_TOO_MANY_ISLES; in lm_tcp_rx_process_cqe()
1222 lm_tcp_rx_gen_peninsula_process(pdev, tcp, nbytes, in lm_tcp_rx_process_cqe()
1228 lm_tcp_rx_gen_isle_create(pdev, tcp, in lm_tcp_rx_process_cqe()
1233 lm_tcp_rx_gen_isle_right_process(pdev, tcp, nbytes, in lm_tcp_rx_process_cqe()
1237 …DbgMessage(pdev, WARN, "GenericAddIsleL cid=%d isle_num=%d nbytes=%d!\n", tcp->cid, isle_num, nbyt… in lm_tcp_rx_process_cqe()
1240 lm_tcp_rx_gen_isle_left_process(pdev, tcp, nbytes, in lm_tcp_rx_process_cqe()
1245 lm_tcp_rx_gen_isle_left_process(pdev, tcp, 0, in lm_tcp_rx_process_cqe()
1251 lm_tcp_rx_gen_isle_right_process(pdev, tcp, nbytes, NULL, sb_idx, isle_num); in lm_tcp_rx_process_cqe()
1255 lm_tcp_rx_gen_peninsula_process(pdev, tcp, nbytes, NULL); in lm_tcp_rx_process_cqe()
1259 lm_tcp_rx_gen_join_process(pdev, tcp, sb_idx, isle_num); in lm_tcp_rx_process_cqe()
1264 lm_tcp_rx_cmp_process(pdev, tcp, nbytes, 1); in lm_tcp_rx_process_cqe()
1268 lm_tcp_rx_cmp_process(pdev, tcp, nbytes, 0); in lm_tcp_rx_process_cqe()
1272 lm_tcp_rx_skp_process(pdev, tcp, nbytes, sb_idx); in lm_tcp_rx_process_cqe()
1275 DbgMessage(pdev, WARN, "Delete Isle cid=%d!\n", tcp->cid); in lm_tcp_rx_process_cqe()
1276 lm_tcp_rx_delete_isle(pdev, tcp, sb_idx, isle_num, nbytes); in lm_tcp_rx_process_cqe()
1284 … gen_buf = (lm_tcp_gen_buf_t *)d_list_peek_tail(&tcp->rx_con->u.rx.gen_info.dpc_peninsula_list); in lm_tcp_rx_process_cqe()
1286 lm_tcp_rx_gen_peninsula_process(pdev, tcp, nbytes, NULL); in lm_tcp_rx_process_cqe()
1291 DbgBreakIf(!d_list_is_empty(&tcp->rx_con->u.rx.gen_info.peninsula_list)); in lm_tcp_rx_process_cqe()
1292 …DbgBreakIf(tcp->rx_con->rq_nbytes <= tcp->rx_con->u.rx.gen_info.dpc_peninsula_nbytes+tcp->rx_con->… in lm_tcp_rx_process_cqe()
1293 …lm_tcp_rx_skp_process(pdev, tcp, tcp->rx_con->u.rx.gen_info.dpc_peninsula_nbytes+tcp->rx_con->u.rx… in lm_tcp_rx_process_cqe()
1297 lm_tcp_rx_cmp_process(pdev, tcp, nbytes, 2 /* push as result of sp-completion*/); in lm_tcp_rx_process_cqe()
1303 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_FIN_RECV; in lm_tcp_rx_process_cqe()
1304 tcp->rx_con->dpc_info.dpc_comp_blocked = TRUE; /* TCP_REMOTE_FIN_RECEIVED */ in lm_tcp_rx_process_cqe()
1307 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_FIN_RECV_UPL; in lm_tcp_rx_process_cqe()
1308tcp->rx_con->dpc_info.dpc_comp_blocked = TRUE; /* TCP_REMOTE_FIN_RECEIVED + Request to upload the … in lm_tcp_rx_process_cqe()
1311 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_RESET_RECV; in lm_tcp_rx_process_cqe()
1312 tcp->rx_con->dpc_info.dpc_comp_blocked = TRUE; /* TCP_REMOTE_RST_RECEIVED */ in lm_tcp_rx_process_cqe()
1315 …DbgBreakIf( (tcp->hdr.status != STATE_STATUS_NORMAL) && (tcp->hdr.status != STATE_STATUS_ABORTED)); in lm_tcp_rx_process_cqe()
1316 DbgBreakIf(tcp->sp_request == NULL); in lm_tcp_rx_process_cqe()
1317 DbgBreakIf((tcp->sp_request->type != SP_REQUEST_UPDATE_NEIGH) && in lm_tcp_rx_process_cqe()
1318 (tcp->sp_request->type != SP_REQUEST_UPDATE_PATH) && in lm_tcp_rx_process_cqe()
1319 (tcp->sp_request->type != SP_REQUEST_UPDATE_TCP) && in lm_tcp_rx_process_cqe()
1320 (tcp->sp_request->type != SP_REQUEST_UPDATE_PATH_RELINK)); in lm_tcp_rx_process_cqe()
1321 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_RAMROD_CMP; in lm_tcp_rx_process_cqe()
1325 …if ((tcp->sp_request->type == SP_REQUEST_UPDATE_TCP) && (GET_FLAGS(tcp->rx_con->db_data.rx->flags,… in lm_tcp_rx_process_cqe()
1327 tcp->rx_con->dpc_info.dpc_fw_wnd_after_dec = nbytes; in lm_tcp_rx_process_cqe()
1331 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_URG; in lm_tcp_rx_process_cqe()
1334 DbgMessage(pdev, WARNl4, "lm_tcp_rx_process_cqe: CMP_OPCODE_TOE_MAX_RT cid=%d\n", tcp->cid); in lm_tcp_rx_process_cqe()
1335 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_RT_TO; in lm_tcp_rx_process_cqe()
1338 DbgMessage(pdev, WARNl4, "lm_tcp_rx_process_cqe: CMP_OPCODE_TOE_RT_TO cid=%d\n", tcp->cid); in lm_tcp_rx_process_cqe()
1339 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_RT_TO; in lm_tcp_rx_process_cqe()
1342 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_KA_TO; in lm_tcp_rx_process_cqe()
1349 …bgMessage(pdev, INFORMl4, "lm_tcp_rx_process_cqe: RCQE CMP_OPCODE_TOE_DBT_RE, cid=%d\n", tcp->cid); in lm_tcp_rx_process_cqe()
1350 …pdev, WARNl4, "lm_tcp_rx_process_cqe: RCQE CMP_OPCODE_TOE_DBT_RE, cid=%d IGNORING!!!\n", tcp->cid); in lm_tcp_rx_process_cqe()
1353 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_DBT_RE; in lm_tcp_rx_process_cqe()
1358 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_UPLD_CLOSE; in lm_tcp_rx_process_cqe()
1361 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_UPLD_CLOSE; in lm_tcp_rx_process_cqe()
1364 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_OPT_ERR; in lm_tcp_rx_process_cqe()
1367 DbgBreakIf(! tcp->sp_request ); in lm_tcp_rx_process_cqe()
1368 DbgBreakIf(tcp->sp_request->type != SP_REQUEST_QUERY); in lm_tcp_rx_process_cqe()
1369 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_RAMROD_CMP; in lm_tcp_rx_process_cqe()
1372 DbgBreakIf(tcp->sp_request->type != SP_REQUEST_TERMINATE_OFFLOAD); in lm_tcp_rx_process_cqe()
1373 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_RAMROD_CMP; in lm_tcp_rx_process_cqe()
1376 DbgBreakIf(! tcp->sp_request); in lm_tcp_rx_process_cqe()
1377 DbgBreakIf(tcp->sp_request->type != SP_REQUEST_ABORTIVE_DISCONNECT); in lm_tcp_rx_process_cqe()
1378 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_RAMROD_CMP; in lm_tcp_rx_process_cqe()
1379 tcp->rx_con->dpc_info.dpc_comp_blocked = TRUE; /* TCP_RST_REQ_COMPLETED */ in lm_tcp_rx_process_cqe()
1382 DbgBreakIf(! tcp->sp_request); in lm_tcp_rx_process_cqe()
1383 DbgBreakIf(tcp->sp_request->type != SP_REQUEST_INVALIDATE); in lm_tcp_rx_process_cqe()
1384 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_RAMROD_CMP; in lm_tcp_rx_process_cqe()
1385 tcp->rx_con->dpc_info.dpc_comp_blocked = TRUE; /* TCP_INV_REQ_COMPLETED */ in lm_tcp_rx_process_cqe()
1388 DbgBreakIf(! tcp->sp_request); in lm_tcp_rx_process_cqe()
1389 DbgBreakIf(tcp->sp_request->type != SP_REQUEST_TERMINATE1_OFFLOAD); in lm_tcp_rx_process_cqe()
1390 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_RAMROD_CMP; in lm_tcp_rx_process_cqe()
1391 tcp->rx_con->dpc_info.dpc_comp_blocked = TRUE; /* TCP_TRM_REQ_COMPLETED */ in lm_tcp_rx_process_cqe()
1395 DbgBreakIf(! tcp->sp_request ); in lm_tcp_rx_process_cqe()
1396 DbgBreakIf((tcp->sp_request->type != SP_REQUEST_PENDING_LOCAL_FIN_DISCONNECT) && in lm_tcp_rx_process_cqe()
1397 (tcp->sp_request->type != SP_REQUEST_PENDING_REMOTE_DISCONNECT) && in lm_tcp_rx_process_cqe()
1398 (tcp->sp_request->type != SP_REQUEST_PENDING_TX_RST)); in lm_tcp_rx_process_cqe()
1399 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_RAMROD_CMP; in lm_tcp_rx_process_cqe()
1403 DbgBreakIf(! tcp->sp_request ); in lm_tcp_rx_process_cqe()
1404 DbgBreakIf(tcp->sp_request->type != SP_REQUEST_INITIATE_OFFLOAD); in lm_tcp_rx_process_cqe()
1408 lm_tcp_comp_initiate_offload_request(pdev, tcp, LM_STATUS_SUCCESS); in lm_tcp_rx_process_cqe()
1409 …q_complete(pdev, CMD_PRIORITY_NORMAL, RAMROD_OPCODE_TOE_INITIATE_OFFLOAD, tcp->ulp_type, tcp->cid); in lm_tcp_rx_process_cqe()
1413 DbgBreakIf(! tcp->sp_request ); in lm_tcp_rx_process_cqe()
1414 DbgBreakIf(tcp->sp_request->type != SP_REQUEST_INITIATE_OFFLOAD); in lm_tcp_rx_process_cqe()
1415 tcp->rx_con->dpc_info.dpc_flags |= LM_TCP_DPC_RAMROD_CMP; in lm_tcp_rx_process_cqe()
1428 lm_tcp_state_t *tcp = NULL; in lm_tcp_rx_process_cqes() local
1534 tcp = lm_cid_cookie(pdev, TOE_CONNECTION_TYPE, cid); in lm_tcp_rx_process_cqes()
1535 DbgBreakIf(!tcp); in lm_tcp_rx_process_cqes()
1537 … hist_cqe = (struct toe_rx_cqe *)lm_tcp_qe_buffer_next_cqe_override(&tcp->rx_con->history_cqes); in lm_tcp_rx_process_cqes()
1545 defer_cqe = ((tcp->rx_con->flags & TCP_RX_COMP_DEFERRED) == TCP_RX_COMP_DEFERRED); in lm_tcp_rx_process_cqes()
1551 mm_acquire_tcp_lock(pdev, tcp->rx_con); in lm_tcp_rx_process_cqes()
1553 defer_cqe = ((tcp->rx_con->flags & TCP_RX_COMP_DEFERRED) == TCP_RX_COMP_DEFERRED); in lm_tcp_rx_process_cqes()
1555 tcp->rx_con->flags |= TCP_DEFERRED_PROCESSING; in lm_tcp_rx_process_cqes()
1561 mm_release_tcp_lock(pdev, tcp->rx_con); in lm_tcp_rx_process_cqes()
1564 lm_tcp_rx_process_cqe(pdev,cqe,tcp,drv_toe_rss_id); in lm_tcp_rx_process_cqes()
1571 mm_release_tcp_lock(pdev, tcp->rx_con); in lm_tcp_rx_process_cqes()
1578 if (s_list_next_entry(&tcp->rx_con->dpc_info.link) == NULL) { in lm_tcp_rx_process_cqes()
1579 s_list_push_head(connections, &tcp->rx_con->dpc_info.link); in lm_tcp_rx_process_cqes()
1581 lm_tcp_rx_process_cqe(pdev, cqe, tcp, drv_toe_rss_id); in lm_tcp_rx_process_cqes()
1659 lm_tcp_state_t * tcp; in lm_toe_service_rx_intr() local
1684 tcp = con->tcp_state; in lm_toe_service_rx_intr()
1690 tcp = con->tcp_state; in lm_toe_service_rx_intr()
1696 tcp = con->tcp_state; in lm_toe_service_rx_intr()
1701 lm_tcp_rx_complete_tcp_sp(pdev, tcp, con); in lm_toe_service_rx_intr()
1705 tcp = con->tcp_state; in lm_toe_service_rx_intr()
1742 lm_tcp_state_t *tcp, in lm_tcp_rx_post_buf() argument
1755 DbgMessage(pdev, VERBOSEl4rx, "###lm_tcp_rx_post_buf cid=%d\n", tcp->cid); in lm_tcp_rx_post_buf()
1756 DbgBreakIf(!(pdev && tcp)); in lm_tcp_rx_post_buf()
1757 DbgBreakIf(tcp->cid && (tcp != lm_cid_cookie(pdev, TOE_CONNECTION_TYPE, tcp->cid))); in lm_tcp_rx_post_buf()
1762 rx_con = tcp->rx_con; in lm_tcp_rx_post_buf()
1766 tcp->rx_con->zb_rx_post_blocked++; in lm_tcp_rx_post_buf()
1769 tcp->rx_con->rx_post_blocked++; in lm_tcp_rx_post_buf()
1797 lm_tcp_rx_write_db(pdev, tcp); in lm_tcp_rx_post_buf()
1800 tcp->cid, lm_bd_chain_avail_bds(&rx_con->bd_chain), frag_list->cnt); in lm_tcp_rx_post_buf()
1831 s_list_push_tail(&(tcp->rx_con->active_tb_list), &(tcp_buf->link)); in lm_tcp_rx_post_buf()
1834 lm_tcp_complete_tcp_buf(pdev, tcp, rx_con,tcp_buf,0); in lm_tcp_rx_post_buf()
1842tcp->cid, tcp_buf, frag_list ? frag_list->size : 0, tcp_buf ? tcp_buf->flags : 0, rx_con->u.rx.gen… in lm_tcp_rx_post_buf()
1845 … copied_bytes = lm_tcp_rx_peninsula_to_rq_copy(pdev,tcp,tcp_buf,&return_list, 0xffffffff, FALSE); in lm_tcp_rx_post_buf()
1848 …lm_tcp_return_list_of_gen_bufs(pdev,tcp,&return_list, MM_TCP_RGB_COMPENSATE_GRQS, NON_EXISTENT_SB_… in lm_tcp_rx_post_buf()
1852 lm_tcp_incr_consumed_gen(pdev, tcp, tcp_buf->size); in lm_tcp_rx_post_buf()
1854 s_list_push_tail(&(tcp->rx_con->active_tb_list), &(tcp_buf->link)); in lm_tcp_rx_post_buf()
1861 lm_tcp_complete_tcp_buf(pdev, tcp, rx_con,tcp_buf,copied_bytes); in lm_tcp_rx_post_buf()
1867 lm_stat = _lm_tcp_rx_post_buf(pdev, tcp, tcp_buf, frag_list); in lm_tcp_rx_post_buf()
1870 …lm_tcp_rx_write_db(pdev, tcp); /* for the case of split buffer in which bytes/bds are accumulated … in lm_tcp_rx_post_buf()
1875 lm_tcp_complete_tcp_buf(pdev, tcp, rx_con,tcp_buf,copied_bytes); in lm_tcp_rx_post_buf()
1882 mm_tcp_rx_indicate_gen(pdev, tcp); in lm_tcp_rx_post_buf()
1889tcp->cid, tcp_buf, frag_list->size, tcp_buf->flags, rx_con->u.rx.gen_info.peninsula_nbytes); in lm_tcp_rx_post_buf()
1890 lm_stat = _lm_tcp_rx_post_buf(pdev, tcp, tcp_buf, frag_list); in lm_tcp_rx_post_buf()
1895 lm_tcp_rx_post_sws(pdev, tcp, rx_con, add_sws_bytes, TCP_RX_POST_SWS_INC); in lm_tcp_rx_post_buf()
1911 lm_tcp_state_t *tcp, in _lm_tcp_rx_post_buf() argument
1916 lm_tcp_con_t *rx_con = tcp->rx_con; in _lm_tcp_rx_post_buf()
1968 tcp->rx_con->u.rx.last_rx_bd = rx_bd; in _lm_tcp_rx_post_buf()
1992 lm_tcp_rx_write_db(pdev, tcp); in _lm_tcp_rx_post_buf()
2001 lm_tcp_state_t * tcp, in _lm_tcp_rx_get_buffered_data() argument
2006 lm_tcp_con_t * rx_con = tcp->rx_con; in _lm_tcp_rx_get_buffered_data()
2016 DbgMessage(pdev, VERBOSEl4rx, "###_lm_tcp_rx_get_buffered_data cid=%d\n", tcp->cid); in _lm_tcp_rx_get_buffered_data()
2021 if ((u16_t)tcp->tcp_cached.rcv_indication_size != 0) { in _lm_tcp_rx_get_buffered_data()
2038 num_bufs_to_indicate, (*frag_list)->cnt, tcp->cid); in _lm_tcp_rx_get_buffered_data()
2049 > tcp->tcp_cached.initial_rcv_wnd) { in _lm_tcp_rx_get_buffered_data()
2073 head_of_indication->tcp = tcp; in _lm_tcp_rx_get_buffered_data()
2101 lm_tcp_state_t * tcp, in lm_tcp_rx_get_buffered_data_from_terminate() argument
2106 lm_tcp_con_t * rx_con = tcp->rx_con; in lm_tcp_rx_get_buffered_data_from_terminate()
2113 … DbgMessage(pdev, VERBOSEl4rx, "###lm_tcp_rx_get_buffered_data_from_terminate cid=%d\n", tcp->cid); in lm_tcp_rx_get_buffered_data_from_terminate()
2129 lm_bd_chain_t *bd_chain = &tcp->rx_con->bd_chain; in lm_tcp_rx_get_buffered_data_from_terminate()
2135 tcp->cid, buff_cnt, gen_info->max_frag_count); in lm_tcp_rx_get_buffered_data_from_terminate()
2152 tcp->cid, buff_cnt, possible_frag_count); in lm_tcp_rx_get_buffered_data_from_terminate()
2157 tcp->cid, possible_frag_count, buff_cnt); in lm_tcp_rx_get_buffered_data_from_terminate()
2166 …u16_t returned_buff_cnt = lm_squeeze_rx_buffer_list(pdev, tcp, decreased_count, &unwanted_gen_buf); in lm_tcp_rx_get_buffered_data_from_terminate()
2174 tcp->type_of_aux_memory = TCP_CON_AUX_RT_MEM; in lm_tcp_rx_get_buffered_data_from_terminate()
2175 tcp->aux_memory = new_frag_list; in lm_tcp_rx_get_buffered_data_from_terminate()
2176 tcp->aux_mem_size = mem_size_for_new_frag_list; in lm_tcp_rx_get_buffered_data_from_terminate()
2180 tcp->aux_mem_flag = TCP_CON_AUX_RT_MEM_SUCCSESS_ALLOCATION; in lm_tcp_rx_get_buffered_data_from_terminate()
2185 tcp->aux_mem_flag = TCP_CON_AUX_RT_MEM_FAILED_ALLOCATION; in lm_tcp_rx_get_buffered_data_from_terminate()
2209 _lm_tcp_rx_get_buffered_data(pdev, tcp, frag_list, gen_buf); in lm_tcp_rx_get_buffered_data_from_terminate()
2221 …lm_tcp_return_gen_bufs(pdev, tcp, unwanted_gen_buf,MM_TCP_RGB_COMPENSATE_GRQS, NON_EXISTENT_SB_IDX… in lm_tcp_rx_get_buffered_data_from_terminate()
2235 lm_tcp_state_t * tcp, in lm_tcp_rx_get_buffered_data() argument
2240 lm_tcp_con_t * rx_con = tcp->rx_con; in lm_tcp_rx_get_buffered_data()
2244 DbgMessage(pdev, VERBOSEl4rx, "###lm_tcp_rx_get_buffered_data cid=%d\n", tcp->cid); in lm_tcp_rx_get_buffered_data()
2254 lm_status = _lm_tcp_rx_get_buffered_data(pdev, tcp, frag_list, gen_buf); in lm_tcp_rx_get_buffered_data()
2274 lm_tcp_state_t * tcp, in lm_tcp_rx_buffered_data_indicated() argument
2279 lm_tcp_con_rx_gen_info_t * gen_info = &tcp->rx_con->u.rx.gen_info; in lm_tcp_rx_buffered_data_indicated()
2281 …x , "###lm_tcp_rx_buffered_data_indicated accepted_bytes = %d cid=%d\n", accepted_bytes, tcp->cid); in lm_tcp_rx_buffered_data_indicated()
2285 lm_tcp_incr_consumed_gen(pdev, tcp, accepted_bytes); in lm_tcp_rx_buffered_data_indicated()
2295 tcp->rx_con->u.rx.zero_byte_posted_during_ind = FALSE; in lm_tcp_rx_buffered_data_indicated()
2310 (accepted_bytes == 0)? "Rejected" : "Partial", tcp->cid, accepted_bytes); in lm_tcp_rx_buffered_data_indicated()
2315 DbgBreakIf(gen_buf->tcp->rx_con->flags & TCP_INDICATE_REJECTED); in lm_tcp_rx_buffered_data_indicated()
2316 if (tcp->rx_con->u.rx.zero_byte_posted_during_ind) { in lm_tcp_rx_buffered_data_indicated()
2317 tcp->rx_con->u.rx.zero_byte_posted_during_ind = FALSE; in lm_tcp_rx_buffered_data_indicated()
2319 gen_buf->tcp->rx_con->flags |= TCP_INDICATE_REJECTED; in lm_tcp_rx_buffered_data_indicated()
2364 …lm_tcp_return_list_of_gen_bufs(pdev, tcp, &return_to_pool_list, MM_TCP_RGB_COMPENSATE_GRQS, NON_EX… in lm_tcp_rx_buffered_data_indicated()
2380 void lm_tcp_return_gen_bufs(struct _lm_device_t * pdev, lm_tcp_state_t * tcp, lm_tcp_gen_buf_t * ge… in lm_tcp_return_gen_bufs() argument
2402 void lm_tcp_return_list_of_gen_bufs(struct _lm_device_t * pdev, lm_tcp_state_t * tcp, d_list_t * ge… in lm_tcp_return_list_of_gen_bufs() argument
2422 void lm_tcp_rx_indication_returned(struct _lm_device_t *pdev, lm_tcp_state_t * tcp, lm_tcp_gen_buf_… in lm_tcp_rx_indication_returned() argument
2424 DbgMessage(pdev, VERBOSEl4rx, "###lm_tcp_rx_con_indication_returned cid=%d\n", tcp->cid); in lm_tcp_rx_indication_returned()
2426 DbgBreakIf(tcp != gen_buf->tcp); in lm_tcp_rx_indication_returned()
2427 DbgBreakIf(tcp->cid && (tcp != lm_cid_cookie(pdev, TOE_CONNECTION_TYPE, tcp->cid))); in lm_tcp_rx_indication_returned()
2432 tcp->rx_con->u.rx.gen_info.pending_return_indications--; in lm_tcp_rx_indication_returned()
2433 tcp->rx_con->u.rx.gen_info.pending_indicated_bytes -= gen_buf->ind_bytes; in lm_tcp_rx_indication_returned()
2438 lm_tcp_rx_post_sws(pdev, tcp, tcp->rx_con, gen_buf->ind_bytes, TCP_RX_POST_SWS_INC); in lm_tcp_rx_indication_returned()
2439 lm_tcp_return_gen_bufs(pdev, tcp, gen_buf, MM_TCP_RGB_COMPENSATE_GRQS, NON_EXISTENT_SB_IDX); in lm_tcp_rx_indication_returned()
2442 u8_t lm_tcp_is_tcp_dead(struct _lm_device_t * pdev, lm_tcp_state_t * tcp, u8_t op) in lm_tcp_is_tcp_dead() argument
2447 DbgBreakIf(tcp->hdr.status != STATE_STATUS_UPLOAD_PENDING); in lm_tcp_is_tcp_dead()
2448 tcp->hdr.status = STATE_STATUS_UPLOAD_DONE; in lm_tcp_is_tcp_dead()
2450 if (GET_FLAGS(tcp->rx_con->flags, TCP_COMP_DEFERRED)) { in lm_tcp_is_tcp_dead()
2455 if (tcp->rx_con->u.rx.gen_info.pending_return_indications == 0) { in lm_tcp_is_tcp_dead()
2459 DbgBreakIf(!(tcp->rx_con->flags & TCP_RX_IND_BLOCKED) && in lm_tcp_is_tcp_dead()
2460 (tcp->rx_con->u.rx.gen_info.peninsula_nbytes != 0) && in lm_tcp_is_tcp_dead()
2462 if (tcp->hdr.status == STATE_STATUS_UPLOAD_DONE) { in lm_tcp_is_tcp_dead()
2512 lm_tcp_state_t * tcp, in lm_squeeze_rx_buffer_list() argument
2518 lm_tcp_con_t * rx_con = tcp->rx_con; in lm_squeeze_rx_buffer_list()
2582 tcp->cid, buffers_number, adjust_number); in lm_squeeze_rx_buffer_list()
2590tcp->cid, tcp->tcp_cached.initial_rcv_wnd, tcp->tcp_cached.rcv_indication_size, gen_buff_size, buf… in lm_squeeze_rx_buffer_list()
2594 tcp->cid, tcp->tcp_cached.initial_rcv_wnd, tcp->tcp_cached.rcv_indication_size, in lm_squeeze_rx_buffer_list()