From: Malcolm Priestley Date: Sun, 21 Dec 2014 12:56:34 +0000 (+0000) Subject: staging: vt6655: vnt_tx_packet Fix corrupted tx packets. X-Git-Tag: fixes-v4.0-rc1~285^2~2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b5745290af06a621aaddfd636bab4f08432d0492;p=pandora-kernel.git 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 Signed-off-by: Greg Kroah-Hartman --- Reading git-diff-tree failed