diff options
| author | 2016-12-01 18:24:28 +0530 | |
|---|---|---|
| committer | 2016-12-02 13:32:59 -0500 | |
| commit | bd3ad7d3a14b07aeeb4f92abc757672719e2a0eb (patch) | |
| tree | 401add62a6c03cc480f2e4addba361eafe87abff /lib/debugobjects.c | |
| parent | Merge branch 'offloading-tc-rules-hw' (diff) | |
| download | wireguard-linux-bd3ad7d3a14b07aeeb4f92abc757672719e2a0eb.tar.xz wireguard-linux-bd3ad7d3a14b07aeeb4f92abc757672719e2a0eb.zip | |
net: thunderx: Fix transmit queue timeout issue
Transmit queue timeout issue is seen in two cases
- Due to a race condition btw setting stop_queue at xmit()
and checking for stopped_queue in NAPI poll routine, at times
transmission from a SQ comes to a halt. This is fixed
by using barriers and also added a check for SQ free descriptors,
incase SQ is stopped and there are only CQE_RX i.e no CQE_TX.
- Contrary to an assumption, a HW errata where HW doesn't stop transmission
even though there are not enough CQEs available for a CQE_TX is
not fixed in T88 pass 2.x. This results in a Qset error with
'CQ_WR_FULL' stalling transmission. This is fixed by adjusting
RXQ's RED levels for CQ level such that there is always enough
space left for CQE_TXs.
Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'lib/debugobjects.c')
0 files changed, 0 insertions, 0 deletions
