]> asedeno.scripts.mit.edu Git - linux.git/commit
cxgb4: fix Tx multi channel port rate limit
authorRahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Fri, 17 Jan 2020 12:53:55 +0000 (18:23 +0530)
committerDavid S. Miller <davem@davemloft.net>
Sun, 19 Jan 2020 15:12:02 +0000 (16:12 +0100)
commitc856e2b6fc5c675512e578225ade545c1834f3ee
tree41d0fcefbcc5a509b7aaefb7108c964bec455a87
parent09d4f10a5e78d76a53e3e584f1e6a701b6d24108
cxgb4: fix Tx multi channel port rate limit

T6 can support 2 egress traffic management channels per port to
double the total number of traffic classes that can be configured.
In this configuration, if the class belongs to the other channel,
then all the queues must be bound again explicitly to the new class,
for the rate limit parameters on the other channel to take effect.

So, always explicitly bind all queues to the port rate limit traffic
class, regardless of the traffic management channel that it belongs
to. Also, only bind queues to port rate limit traffic class, if all
the queues don't already belong to an existing different traffic
class.

Fixes: 4ec4762d8ec6 ("cxgb4: add TC-MATCHALL classifier egress offload")
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c
drivers/net/ethernet/chelsio/cxgb4/cxgb4_tc_matchall.c
drivers/net/ethernet/chelsio/cxgb4/sched.c
drivers/net/ethernet/chelsio/cxgb4/sched.h