On 16-02-22 05:21 AM, Jamal Hadi Salim wrote: > From: Jamal Hadi Salim <j...@mojatatu.com> > > hard code static value of 10 for qmap > mark of 12 > prio of 13 > and hashid of 11 > > sudo tc filter add dev $ETH parent 1: protocol ip prio 10 \ > u32 match ip protocol 1 0xff flowid 1:2 \ > action ife encode \ > type 0xDEAD \ > use mark 12 \ > use prio 13 \ > use hashid 11 \ > use qmap 10 \ > dst 02:15:15:15:15:15 > > Note: as of the time of submission skbedit of queue map doesnt work > (just in case you try to use it) > > Signed-off-by: Jamal Hadi Salim <j...@mojatatu.com> > ---
Well the skbedit queue_mapping action does work I'm just guessing it is not working as you expect? We probably haven't done a good job explaining how to set it up. If you set it on the clsact egress filter chain for example it will map traffic to a queue if you disable XPS and get sk_tx_queue() to return -1. This is because XPS and socket mappings have a higher precedence in queue selection. Anyways just tested on net-next and it works, the following puts ip traffic with src 15.0.0.1 on hardware queue 6, ./tc/tc qdisc add dev eth4 clsact ./tc/tc filter add dev eth4 egress protocol ip \ u32 ht 800: order 1 \ match ip src 15.0.0.1/32 \ action skbedit queue_mapping 6 Thanks, .John