mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-21 22:21:21 +00:00
openvswitch: Pack struct sw_flow_key.
struct sw_flow_key has two 16-bit holes. Move the most matched conntrack match fields there. In some typical cases this reduces the size of the key that needs to be hashed into half and into one cache line. Signed-off-by: Jarno Rajahalme <jarno@ovn.org> Acked-by: Joe Stringer <joe@ovn.org> Acked-by: Pravin B Shelar <pshelar@ovn.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
dd41d33f0b
commit
316d4d78cf
4 changed files with 39 additions and 34 deletions
|
@ -76,14 +76,14 @@ static inline int ovs_ct_execute(struct net *net, struct sk_buff *skb,
|
|||
static inline void ovs_ct_fill_key(const struct sk_buff *skb,
|
||||
struct sw_flow_key *key)
|
||||
{
|
||||
key->ct.state = 0;
|
||||
key->ct.zone = 0;
|
||||
key->ct_state = 0;
|
||||
key->ct_zone = 0;
|
||||
key->ct.mark = 0;
|
||||
memset(&key->ct.labels, 0, sizeof(key->ct.labels));
|
||||
/* Clear 'ct.orig_proto' to mark the non-existence of original
|
||||
/* Clear 'ct_orig_proto' to mark the non-existence of original
|
||||
* direction key fields.
|
||||
*/
|
||||
key->ct.orig_proto = 0;
|
||||
key->ct_orig_proto = 0;
|
||||
}
|
||||
|
||||
static inline int ovs_ct_put_key(const struct sw_flow_key *swkey,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue