]> git.baikalelectronics.ru Git - kernel.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)
commit18d05a9865f3585726fea9470df746ba8653a4b8
tree41d0fcefbcc5a509b7aaefb7108c964bec455a87
parenteb55b893726a24e443e8641503c7adcf1b27723d
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: 1b3d8236d9f7 ("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