diff options
Diffstat (limited to 'net/sched')
-rw-r--r-- | net/sched/sch_api.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/sched/sch_api.c b/net/sched/sch_api.c index f7e6d13e270f..48bd969a1ff8 100644 --- a/net/sched/sch_api.c +++ b/net/sched/sch_api.c @@ -1173,10 +1173,11 @@ static int tc_get_qdisc(struct sk_buff *skb, struct nlmsghdr *n) /* * enable/disable flow on qdisc. */ -void +int tc_qdisc_flow_control(struct net_device *dev, u32 tcm_handle, int enable_flow) { struct Qdisc *q; + int qdisc_len = 0; struct __qdisc_change_req { struct nlattr attr; struct tc_prio_qopt data; @@ -1193,9 +1194,11 @@ tc_qdisc_flow_control(struct net_device *dev, u32 tcm_handle, int enable_flow) /* call registered change function */ if (q) { + qdisc_len = q->q.qlen; if (q->ops->change(q, &(req.attr)) != 0) pr_err("tc_qdisc_flow_control: qdisc change failed"); } + return qdisc_len; } EXPORT_SYMBOL(tc_qdisc_flow_control); |