diff options
author | Malcolm Priestley <tvboxspy@gmail.com> | 2014-12-21 12:56:34 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-01-12 19:49:47 -0800 |
commit | b5745290af06a621aaddfd636bab4f08432d0492 (patch) | |
tree | cc99212cedea7b790504c2d9c9605082d5265fdf /tools/perf/scripts/python/check-perf-trace.py | |
parent | 84c00afef41a2172b7290f3d75e082e6dd609a58 (diff) |
staging: vt6655: vnt_tx_packet Fix corrupted tx packets.
Move PSTxDesc->m_td1TD1 to inside spin locks.
if m_td1TD1.byTCR has TCR_EDP and TCR_STP are set, the interrupt handler will
try and complete the buffer before it is completed. Usually on the tail
of a burst of tx packets.
This results in a partially completed packet being transmitted or worse
sitll dead lock when skb is freed by the interrupt handler.
Set head_td->m_td1TD1.byTCR to 0 in first lock of vnt_tx_packet to stop
interrupt handler completing the buffer. Move Set TSR1 & ReqCount in
s_cbFillTxBufHead to the second lock.
cbReqCount is carried to the second lock in pTDInfo->dwReqCount without
the padding removed.
Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'tools/perf/scripts/python/check-perf-trace.py')
0 files changed, 0 insertions, 0 deletions