On Tue, 2015-08-11 at 18:13 -0700, Alexei Starovoitov wrote: > Also why introduce the flag? Why not just add 'tx_queue_len = 0;' > to veth_setup() like the whole bunch of devices do?
Sigh. Because some people install htb or pfifo on veth, leaving tx_queue_len unchanged. If you install htb while tx_queue_len is 0, pfifo created on htb classe can only queue one packet. static int fifo_init(struct Qdisc *sch, struct nlattr *opt) { bool bypass; bool is_bfifo = sch->ops == &bfifo_qdisc_ops; if (opt == NULL) { u32 limit = qdisc_dev(sch)->tx_queue_len ? : 1; if (is_bfifo) limit *= psched_mtu(qdisc_dev(sch)); sch->limit = limit; Changing veth txqueuelen is too late. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html