aboutsummaryrefslogtreecommitdiffstats
path: root/net/openvswitch/flow.h
diff options
context:
space:
mode:
Diffstat (limited to 'net/openvswitch/flow.h')
-rw-r--r--net/openvswitch/flow.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/net/openvswitch/flow.h b/net/openvswitch/flow.h
index 76e05b25f030..a9bc1c875965 100644
--- a/net/openvswitch/flow.h
+++ b/net/openvswitch/flow.h
@@ -85,6 +85,11 @@ struct sw_flow_key {
85 struct vlan_head cvlan; 85 struct vlan_head cvlan;
86 __be16 type; /* Ethernet frame type. */ 86 __be16 type; /* Ethernet frame type. */
87 } eth; 87 } eth;
88 /* Filling a hole of two bytes. */
89 u8 ct_state;
90 u8 ct_orig_proto; /* CT original direction tuple IP
91 * protocol.
92 */
88 union { 93 union {
89 struct { 94 struct {
90 __be32 top_lse; /* top label stack entry */ 95 __be32 top_lse; /* top label stack entry */
@@ -96,6 +101,7 @@ struct sw_flow_key {
96 u8 frag; /* One of OVS_FRAG_TYPE_*. */ 101 u8 frag; /* One of OVS_FRAG_TYPE_*. */
97 } ip; 102 } ip;
98 }; 103 };
104 u16 ct_zone; /* Conntrack zone. */
99 struct { 105 struct {
100 __be16 src; /* TCP/UDP/SCTP source port. */ 106 __be16 src; /* TCP/UDP/SCTP source port. */
101 __be16 dst; /* TCP/UDP/SCTP destination port. */ 107 __be16 dst; /* TCP/UDP/SCTP destination port. */
@@ -138,16 +144,12 @@ struct sw_flow_key {
138 } ipv6; 144 } ipv6;
139 }; 145 };
140 struct { 146 struct {
141 /* Connection tracking fields. */ 147 /* Connection tracking fields not packed above. */
142 u8 state;
143 u8 orig_proto; /* CT orig tuple IP protocol. */
144 u16 zone;
145 u32 mark;
146 struct { 148 struct {
147 __be16 src; /* CT orig tuple tp src port. */ 149 __be16 src; /* CT orig tuple tp src port. */
148 __be16 dst; /* CT orig tuple tp dst port. */ 150 __be16 dst; /* CT orig tuple tp dst port. */
149 } orig_tp; 151 } orig_tp;
150 152 u32 mark;
151 struct ovs_key_ct_labels labels; 153 struct ovs_key_ct_labels labels;
152 } ct; 154 } ct;
153 155