diff options
author | Paul Blakey <paulb@nvidia.com> | 2022-01-03 12:44:51 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2022-01-04 13:12:56 +0100 |
commit | b702436a51dfdf1e2960fb8e228009e09eedb462 (patch) | |
tree | 5e76f579737d1db512fa890f5f7a94a388112721 /net/openvswitch | |
parent | net/sched: act_ct: Fill offloading tuple iifidx (diff) | |
download | linux-b702436a51dfdf1e2960fb8e228009e09eedb462.tar.xz linux-b702436a51dfdf1e2960fb8e228009e09eedb462.zip |
net: openvswitch: Fill act ct extension
To give drivers the originating device information for optimized
connection tracking offload, fill in act ct extension with
ifindex from skb.
Signed-off-by: Paul Blakey <paulb@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/openvswitch')
-rw-r--r-- | net/openvswitch/conntrack.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/net/openvswitch/conntrack.c b/net/openvswitch/conntrack.c index 1b5eae57bc90..13294a55073a 100644 --- a/net/openvswitch/conntrack.c +++ b/net/openvswitch/conntrack.c @@ -25,6 +25,8 @@ #include <net/netfilter/nf_nat.h> #endif +#include <net/netfilter/nf_conntrack_act_ct.h> + #include "datapath.h" #include "conntrack.h" #include "flow.h" @@ -1045,6 +1047,8 @@ static int __ovs_ct_lookup(struct net *net, struct sw_flow_key *key, */ nf_ct_set_tcp_be_liberal(ct); } + + nf_conn_act_ct_ext_fill(skb, ct, ctinfo); } return 0; @@ -1245,6 +1249,8 @@ static int ovs_ct_commit(struct net *net, struct sw_flow_key *key, &info->labels.mask); if (err) return err; + + nf_conn_act_ct_ext_add(ct); } else if (IS_ENABLED(CONFIG_NF_CONNTRACK_LABELS) && labels_nonzero(&info->labels.mask)) { err = ovs_ct_set_labels(ct, key, &info->labels.value, |