Lines Matching refs:ct_entry
1562 map->ct_entry = entry; in nfp_fl_ct_add_flow()
1613 pre_ct_map_ent.ct_entry = m_entry->next_pre_ct_entry; in cleanup_nft_merge_entry()
1632 struct nfp_fl_ct_flow_entry *ct_entry = entry; in nfp_free_nft_merge_children() local
1634 list_for_each_entry_safe(m_entry, tmp, &ct_entry->children, in nfp_free_nft_merge_children()
1640 struct nfp_fl_ct_tc_merge *ct_entry = entry; in nfp_free_nft_merge_children() local
1642 list_for_each_entry_safe(m_entry, tmp, &ct_entry->children, in nfp_free_nft_merge_children()
1792 struct nfp_fl_ct_flow_entry *ct_entry; in nfp_fl_ct_handle_pre_ct() local
1828 ct_entry = nfp_fl_ct_add_flow(zt, netdev, flow, false, extack); in nfp_fl_ct_handle_pre_ct()
1829 if (IS_ERR(ct_entry)) in nfp_fl_ct_handle_pre_ct()
1830 return PTR_ERR(ct_entry); in nfp_fl_ct_handle_pre_ct()
1831 ct_entry->type = CT_TYPE_PRE_CT; in nfp_fl_ct_handle_pre_ct()
1832 ct_entry->chain_index = flow->common.chain_index; in nfp_fl_ct_handle_pre_ct()
1833 ct_entry->goto_chain_index = ct_goto->chain_index; in nfp_fl_ct_handle_pre_ct()
1841 ct_entry->prev_m_entries[i] = pre_ct_entry->prev_m_entries[i]; in nfp_fl_ct_handle_pre_ct()
1842 ct_entry->prev_m_entries[i++] = m_entry; in nfp_fl_ct_handle_pre_ct()
1843 ct_entry->num_prev_m_entries = i; in nfp_fl_ct_handle_pre_ct()
1845 m_entry->next_pre_ct_entry = ct_entry; in nfp_fl_ct_handle_pre_ct()
1848 list_add(&ct_entry->list_node, &zt->pre_ct_list); in nfp_fl_ct_handle_pre_ct()
1851 nfp_ct_merge_tc_entries(ct_entry, zt, zt); in nfp_fl_ct_handle_pre_ct()
1855 nfp_ct_merge_tc_entries(ct_entry, priv->ct_zone_wc, zt); in nfp_fl_ct_handle_pre_ct()
1866 struct nfp_fl_ct_flow_entry *ct_entry; in nfp_fl_ct_handle_post_ct() local
1889 ct_entry = nfp_fl_ct_add_flow(zt, netdev, flow, false, extack); in nfp_fl_ct_handle_post_ct()
1890 if (IS_ERR(ct_entry)) in nfp_fl_ct_handle_post_ct()
1891 return PTR_ERR(ct_entry); in nfp_fl_ct_handle_post_ct()
1893 ct_entry->type = CT_TYPE_POST_CT; in nfp_fl_ct_handle_post_ct()
1894 ct_entry->chain_index = flow->common.chain_index; in nfp_fl_ct_handle_post_ct()
1896 ct_entry->goto_chain_index = ct_goto ? ct_goto->chain_index : 0; in nfp_fl_ct_handle_post_ct()
1897 list_add(&ct_entry->list_node, &zt->post_ct_list); in nfp_fl_ct_handle_post_ct()
1913 nfp_ct_merge_tc_entries(ct_entry, zone_table, zone_table); in nfp_fl_ct_handle_post_ct()
1919 nfp_ct_merge_tc_entries(ct_entry, zt, zt); in nfp_fl_ct_handle_post_ct()
2026 struct nfp_fl_ct_flow_entry *ct_entry = ct_map_ent->ct_entry; in nfp_fl_ct_stats() local
2033 spin_lock_bh(&ct_entry->zt->priv->stats_lock); in nfp_fl_ct_stats()
2035 if (ct_entry->type == CT_TYPE_PRE_CT) { in nfp_fl_ct_stats()
2037 list_for_each_entry_safe(tc_merge, tc_m_tmp, &ct_entry->children, in nfp_fl_ct_stats()
2056 } else if (ct_entry->type == CT_TYPE_POST_CT) { in nfp_fl_ct_stats()
2058 list_for_each_entry_safe(tc_merge, tc_m_tmp, &ct_entry->children, in nfp_fl_ct_stats()
2079 list_for_each_entry_safe(nft_merge, nft_m_tmp, &ct_entry->children, in nfp_fl_ct_stats()
2089 flow_stats_update(&ct_entry->stats, bytes, pkts, 0, used, in nfp_fl_ct_stats()
2092 flow_stats_update(&flow->stats, ct_entry->stats.bytes, in nfp_fl_ct_stats()
2093 ct_entry->stats.pkts, 0, in nfp_fl_ct_stats()
2094 ct_entry->stats.lastused, in nfp_fl_ct_stats()
2099 ct_entry->stats.pkts = 0; in nfp_fl_ct_stats()
2100 ct_entry->stats.bytes = 0; in nfp_fl_ct_stats()
2101 spin_unlock_bh(&ct_entry->zt->priv->stats_lock); in nfp_fl_ct_stats()
2131 struct nfp_fl_ct_flow_entry *ct_entry; in nfp_fl_ct_offload_nft_flow() local
2146 ct_entry = nfp_fl_ct_add_flow(zt, NULL, flow, true, extack); in nfp_fl_ct_offload_nft_flow()
2147 if (IS_ERR(ct_entry)) in nfp_fl_ct_offload_nft_flow()
2148 return PTR_ERR(ct_entry); in nfp_fl_ct_offload_nft_flow()
2149 ct_entry->type = CT_TYPE_NFT; in nfp_fl_ct_offload_nft_flow()
2150 list_add(&ct_entry->list_node, &zt->nft_flows_list); in nfp_fl_ct_offload_nft_flow()
2152 nfp_ct_merge_nft_with_tc(ct_entry, zt); in nfp_fl_ct_offload_nft_flow()
2210 struct nfp_fl_ct_flow_entry *ct_entry; in nfp_fl_ct_del_flow() local
2218 zt = ct_map_ent->ct_entry->zt; in nfp_fl_ct_del_flow()
2219 ct_entry = ct_map_ent->ct_entry; in nfp_fl_ct_del_flow()
2222 switch (ct_entry->type) { in nfp_fl_ct_del_flow()
2228 nfp_fl_ct_clean_flow_entry(ct_entry); in nfp_fl_ct_del_flow()
2245 nfp_fl_ct_clean_flow_entry(ct_entry); in nfp_fl_ct_del_flow()
2252 nfp_fl_ct_clean_flow_entry(ct_map_ent->ct_entry); in nfp_fl_ct_del_flow()