From: Jiri Pirko <j...@mellanox.com>

This function is going to be used for templates as well, so we need to
pass the pointer separately.

Signed-off-by: Jiri Pirko <j...@mellanox.com>
---
 net/sched/cls_flower.c | 39 ++++++++++++++++++++-------------------
 1 file changed, 20 insertions(+), 19 deletions(-)

diff --git a/net/sched/cls_flower.c b/net/sched/cls_flower.c
index 0e8991e49860..0f753260594d 100644
--- a/net/sched/cls_flower.c
+++ b/net/sched/cls_flower.c
@@ -795,47 +795,48 @@ static int fl_init_mask_hashtable(struct fl_flow_mask 
*mask)
                        FL_KEY_SET(keys, cnt, id, member);                      
\
        } while(0);
 
-static void fl_init_dissector(struct fl_flow_mask *mask)
+static void fl_init_dissector(struct flow_dissector *dissector,
+                             struct fl_flow_key *mask)
 {
        struct flow_dissector_key keys[FLOW_DISSECTOR_KEY_MAX];
        size_t cnt = 0;
 
        FL_KEY_SET(keys, cnt, FLOW_DISSECTOR_KEY_CONTROL, control);
        FL_KEY_SET(keys, cnt, FLOW_DISSECTOR_KEY_BASIC, basic);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_ETH_ADDRS, eth);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_IPV4_ADDRS, ipv4);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_IPV6_ADDRS, ipv6);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_PORTS, tp);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_IP, ip);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_TCP, tcp);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_ICMP, icmp);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_ARP, arp);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_MPLS, mpls);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_VLAN, vlan);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_ENC_KEYID, enc_key_id);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS, enc_ipv4);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_ENC_IPV6_ADDRS, enc_ipv6);
-       if (FL_KEY_IS_MASKED(&mask->key, enc_ipv4) ||
-           FL_KEY_IS_MASKED(&mask->key, enc_ipv6))
+       if (FL_KEY_IS_MASKED(mask, enc_ipv4) ||
+           FL_KEY_IS_MASKED(mask, enc_ipv6))
                FL_KEY_SET(keys, cnt, FLOW_DISSECTOR_KEY_ENC_CONTROL,
                           enc_control);
-       FL_KEY_SET_IF_MASKED(&mask->key, keys, cnt,
+       FL_KEY_SET_IF_MASKED(mask, keys, cnt,
                             FLOW_DISSECTOR_KEY_ENC_PORTS, enc_tp);
 
-       skb_flow_dissector_init(&mask->dissector, keys, cnt);
+       skb_flow_dissector_init(dissector, keys, cnt);
 }
 
 static struct fl_flow_mask *fl_create_new_mask(struct cls_fl_head *head,
@@ -854,7 +855,7 @@ static struct fl_flow_mask *fl_create_new_mask(struct 
cls_fl_head *head,
        if (err)
                goto errout_free;
 
-       fl_init_dissector(newmask);
+       fl_init_dissector(&newmask->dissector, &newmask->key);
 
        INIT_LIST_HEAD_RCU(&newmask->filters);
 
-- 
2.14.4

Reply via email to