act_ct.c (41d91ec3de8a90167159275bde7ed65768723556) act_ct.c (beb97d3a3192c00575580af9073921c6283cf93d)
1// SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB
2/* -
3 * net/sched/act_ct.c Connection Tracking action
4 *
5 * Authors: Paul Blakey <paulb@mellanox.com>
6 * Yossi Kuperman <yossiku@mellanox.com>
7 * Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
8 */

--- 16 unchanged lines hidden (view full) ---

25#include <uapi/linux/tc_act/tc_ct.h>
26#include <net/tc_act/tc_ct.h>
27
28#include <net/netfilter/nf_flow_table.h>
29#include <net/netfilter/nf_conntrack.h>
30#include <net/netfilter/nf_conntrack_core.h>
31#include <net/netfilter/nf_conntrack_zones.h>
32#include <net/netfilter/nf_conntrack_helper.h>
1// SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB
2/* -
3 * net/sched/act_ct.c Connection Tracking action
4 *
5 * Authors: Paul Blakey <paulb@mellanox.com>
6 * Yossi Kuperman <yossiku@mellanox.com>
7 * Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
8 */

--- 16 unchanged lines hidden (view full) ---

25#include <uapi/linux/tc_act/tc_ct.h>
26#include <net/tc_act/tc_ct.h>
27
28#include <net/netfilter/nf_flow_table.h>
29#include <net/netfilter/nf_conntrack.h>
30#include <net/netfilter/nf_conntrack_core.h>
31#include <net/netfilter/nf_conntrack_zones.h>
32#include <net/netfilter/nf_conntrack_helper.h>
33#include <net/netfilter/nf_conntrack_acct.h>
33#include <net/netfilter/ipv6/nf_defrag_ipv6.h>
34#include <uapi/linux/netfilter/nf_nat.h>
35
36static struct workqueue_struct *act_ct_wq;
37static struct rhashtable zones_ht;
38static DEFINE_MUTEX(zones_mutex);
39
40struct tcf_ct_flow_table {

--- 490 unchanged lines hidden (view full) ---

531 }
532
533 ctinfo = dir == FLOW_OFFLOAD_DIR_ORIGINAL ? IP_CT_ESTABLISHED :
534 IP_CT_ESTABLISHED_REPLY;
535
536 flow_offload_refresh(nf_ft, flow);
537 nf_conntrack_get(&ct->ct_general);
538 nf_ct_set(skb, ct, ctinfo);
34#include <net/netfilter/ipv6/nf_defrag_ipv6.h>
35#include <uapi/linux/netfilter/nf_nat.h>
36
37static struct workqueue_struct *act_ct_wq;
38static struct rhashtable zones_ht;
39static DEFINE_MUTEX(zones_mutex);
40
41struct tcf_ct_flow_table {

--- 490 unchanged lines hidden (view full) ---

532 }
533
534 ctinfo = dir == FLOW_OFFLOAD_DIR_ORIGINAL ? IP_CT_ESTABLISHED :
535 IP_CT_ESTABLISHED_REPLY;
536
537 flow_offload_refresh(nf_ft, flow);
538 nf_conntrack_get(&ct->ct_general);
539 nf_ct_set(skb, ct, ctinfo);
540 nf_ct_acct_update(ct, dir, skb->len);
539
540 return true;
541}
542
543static int tcf_ct_flow_tables_init(void)
544{
545 return rhashtable_init(&zones_ht, &zones_params);
546}

--- 1013 unchanged lines hidden ---
541
542 return true;
543}
544
545static int tcf_ct_flow_tables_init(void)
546{
547 return rhashtable_init(&zones_ht, &zones_params);
548}

--- 1013 unchanged lines hidden ---