From: Vlad Buslov <vladbu@mellanox.com>
Date: Mon, 6 Aug 2018 11:27:10 +0300
Subject: net: sched: cls_flower: set correct offload data in fl_reoffload
Patch-mainline: v4.19-rc1
Git-commit: 9ca6163005e6abdf2a39eb581abc6060f677a2d7
References: bsc#1109837
fl_reoffload implementation sets following members of struct
tc_cls_flower_offload incorrectly:
- masked key instead of mask
- key instead of masked key
Fix fl_reoffload to provide correct data to offload callback.
Fixes: 31533cba4327 ("net: sched: cls_flower: implement offload tcf_proto_op")
Signed-off-by: Vlad Buslov <vladbu@mellanox.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
---
net/sched/cls_flower.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/net/sched/cls_flower.c
+++ b/net/sched/cls_flower.c
@@ -1338,8 +1338,8 @@ static int fl_reoffload(struct tcf_proto
TC_CLSFLOWER_REPLACE : TC_CLSFLOWER_DESTROY;
cls_flower.cookie = (unsigned long)f;
cls_flower.dissector = &mask->dissector;
- cls_flower.mask = &f->mkey;
- cls_flower.key = &f->key;
+ cls_flower.mask = &mask->key;
+ cls_flower.key = &f->mkey;
cls_flower.exts = &f->exts;
cls_flower.classid = f->res.classid;