aboutsummaryrefslogtreecommitdiff
path: root/include/net/codel.h
diff options
context:
space:
mode:
authorAlex Shi <alex.shi@linaro.org>2016-07-21 13:58:19 +0800
committerAlex Shi <alex.shi@linaro.org>2016-07-21 13:58:19 +0800
commit74b60e9f6f938d0cd4c7a71e583aee3cc6c5fbba (patch)
tree15cbca70f3f6d7e10da7d82154a78e6ca35dca8c /include/net/codel.h
parentf24f1475658431d60bcd4e6e5de951ba1663dd43 (diff)
parent1d508e233d21a7848cf54d7d03b40dac2d9ea873 (diff)
Merge branch 'linux-linaro-lsk-v4.1' into linux-linaro-lsk-v4.1-rtlsk-v4.1-16.07-rt
Conflicts: mm/swap.c
Diffstat (limited to 'include/net/codel.h')
-rw-r--r--include/net/codel.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/net/codel.h b/include/net/codel.h
index 1e18005f7f65..0ee76108e741 100644
--- a/include/net/codel.h
+++ b/include/net/codel.h
@@ -160,11 +160,13 @@ struct codel_vars {
* struct codel_stats - contains codel shared variables and stats
* @maxpacket: largest packet we've seen so far
* @drop_count: temp count of dropped packets in dequeue()
+ * @drop_len: bytes of dropped packets in dequeue()
* ecn_mark: number of packets we ECN marked instead of dropping
*/
struct codel_stats {
u32 maxpacket;
u32 drop_count;
+ u32 drop_len;
u32 ecn_mark;
};
@@ -301,6 +303,7 @@ static struct sk_buff *codel_dequeue(struct Qdisc *sch,
vars->rec_inv_sqrt);
goto end;
}
+ stats->drop_len += qdisc_pkt_len(skb);
qdisc_drop(skb, sch);
stats->drop_count++;
skb = dequeue_func(vars, sch);
@@ -323,6 +326,7 @@ static struct sk_buff *codel_dequeue(struct Qdisc *sch,
if (params->ecn && INET_ECN_set_ce(skb)) {
stats->ecn_mark++;
} else {
+ stats->drop_len += qdisc_pkt_len(skb);
qdisc_drop(skb, sch);
stats->drop_count++;