https://github.com/dtaht/sch_cake/commit/d6a890461ddb6df72e88c20c82ea5b14eea39ef6 'move stats keeping out of inner loop' & https://github.com/dtaht/sch_cake/commit/24a0f840d3b0c9ff2f2a10c57d12388766f7792f 'don't calculate rate unless doing autorate' mess with things other than that which they say they're messin': struct cake_tin_data *b = &q->tins[q->cur_tin]; struct cake_flow *flow; struct list_head *head; - u32 prev_drop_count, prev_ecn_mark; + u16 prev_drop_count, prev_ecn_mark; u32 len; u64 now = ktime_get_ns(); s32 i; b->tin_dropped += flow->cvars.drop_count - prev_drop_count; b->tin_ecn_mark += flow->cvars.ecn_mark - prev_ecn_mark; + flow->cvars.ecn_mark = 0; flow->dropped += flow->cvars.drop_count - prev_drop_count; - flow->dropped += flow->cvars.ecn_mark - prev_ecn_mark; + //flow->dropped += flow->cvars.ecn_mark - prev_ecn_mark; if (!skb) { /* codel dropped the last packet in this queue; try again */ 2nd commit: b->tin_ecn_mark += flow->cvars.ecn_mark - prev_ecn_mark; flow->cvars.ecn_mark = 0; flow->dropped += flow->cvars.drop_count - prev_drop_count; - //flow->dropped += flow->cvars.ecn_mark - prev_ecn_mark; if (!skb) { /* codel dropped the last packet in this queue; try again */ Intended to change 'prev_drop_count, prev_ecn_mark' & flow->dropped ?