Georgios Amanakis <gamana...@gmail.com> writes: >> Yes, the version submitted to upstream supports this. You can override >> which tin packets goes in by setting skb->priority from a filter or >> application (the major number needs to be set to the qdisc ID, and the >> minor number becomes the tin to queue packets in). > > Toke could you give an example how to do this? > > I am trying to put all traffic into tin 0: > #tc qdisc add dev enp1s0 root handle 8001 cake diffserv3 bandwidth 2mbit > #tc filter add dev enp1s0 parent 8001: protocol all \ > u32 match u32 0 0 \ > action skbedit priority 8001:1 > > However as soon as the second command is executed all traffic drops, > and it only resumes once I remove the filter. > > What am I doing wrong?
Hmm, nothing apart from using the classifiers in an unexpected (by me) way ;) Basically, what is happening is that the skbedit filter doesn't do classification. In which case Cake will cheerfully drop the packet. I just pushed a change to the upstream-4.18 branch which reworks the filter classification so it'll still hash packets if the filter doesn't make a decision, and also moves the tin selection to after the filter has run, to give priority selection a chance to work (even if the packets had not been dropped, you wouldn't have gotten the result you wanted, since the skb->priority field was checked before the filters we run...) Please see if that works better :) -Toke _______________________________________________ Cake mailing list Cake@lists.bufferbloat.net https://lists.bufferbloat.net/listinfo/cake