This pathcset restores the pfifo_fast qdisc behavior of dropping packets based on latest dev->tx_queue_len. Patch 1 introduces a helper, patch 2 introduces a new Qdisc ops which is called when we modify tx_queue_len, patch 3 implements this ops for pfifo_fast.
Please see each patch for details. --- v3: use skb_array_resize_multiple() v2: handle error case for ->change_tx_queue_len() Cong Wang (3): net: introduce helper dev_change_tx_queue_len() net_sched: plug in qdisc ops change_tx_queue_len net_sched: implement ->change_tx_queue_len() for pfifo_fast include/linux/netdevice.h | 1 + include/net/sch_generic.h | 2 ++ net/core/dev.c | 29 +++++++++++++++++++++++++++ net/core/net-sysfs.c | 25 +---------------------- net/core/rtnetlink.c | 18 +++++------------ net/sched/sch_generic.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 89 insertions(+), 37 deletions(-) -- 2.13.0