aboutsummaryrefslogtreecommitdiffstats
path: root/net/sched/cls_flow.c
diff options
context:
space:
mode:
authorJiri Pirko <jiri@mellanox.com>2017-10-13 14:01:03 +0200
committerDavid S. Miller <davem@davemloft.net>2017-10-16 21:00:41 +0100
commit1abf272022cf1d18469405f47b4ec49c6a3125db (patch)
tree581662b962aa5e3e4b47e2fb7f78390f9196e44b /net/sched/cls_flow.c
parentnet: sched: cls_u32: use block instead of q in tc_u_common (diff)
downloadlinux-dev-1abf272022cf1d18469405f47b4ec49c6a3125db.tar.xz
linux-dev-1abf272022cf1d18469405f47b4ec49c6a3125db.zip
net: sched: tcindex, fw, flow: use tcf_block_q helper to get struct Qdisc
Use helper to get q pointer per block. Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/cls_flow.c')
-rw-r--r--net/sched/cls_flow.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/net/sched/cls_flow.c b/net/sched/cls_flow.c
index 2a3a60ec5b86..f3be6667a253 100644
--- a/net/sched/cls_flow.c
+++ b/net/sched/cls_flow.c
@@ -491,8 +491,11 @@ static int flow_change(struct net *net, struct sk_buff *in_skb,
perturb_period = nla_get_u32(tb[TCA_FLOW_PERTURB]) * HZ;
}
- if (TC_H_MAJ(baseclass) == 0)
- baseclass = TC_H_MAKE(tp->q->handle, baseclass);
+ if (TC_H_MAJ(baseclass) == 0) {
+ struct Qdisc *q = tcf_block_q(tp->chain->block);
+
+ baseclass = TC_H_MAKE(q->handle, baseclass);
+ }
if (TC_H_MIN(baseclass) == 0)
baseclass = TC_H_MAKE(baseclass, 1);