On 16-06-05 07:30 PM, Cong Wang wrote:
Potentially all of the following:
net/sched/sch_choke.c: return NET_XMIT_CN;
net/sched/sch_fifo.c: return NET_XMIT_CN;
net/sched/sch_generic.c: return NET_XMIT_CN;
net/sched/sch_gred.c: return NET_XMIT_CN;
net/sched/sch_hhf.c: return NET_XMIT_CN;
net/sched/sch_red.c: return NET_XMIT_CN;
net/sched/sch_sfb.c: return NET_XMIT_CN;
net/sched/sch_sfq.c: return NET_XMIT_CN;
As long as we are not loosing the stat that the packet
is dropped. Some qdiscs have a counter which indicates
congestion drops(look at RED variants of early drops);
maybe codel needs one. The parent also must account for
childs drops.
BTW, returning NET_XMIT_CN could be confusing to tcp;
it does not mean that the packet that we are getting return
code for was dropped; it could mean _another_ packet in
the queue was dropped.
cheers,
jamal