rtlwifi: rtl8192ee: Fix TX hang due to failure to update TX write point

Initially, the routine to update the write point in the FIFO buffer was
coded to save CPU time by not doing the calculation every interrupt. This
was an error and results in TX hangs.

Signed-off-by: Troy Tan <troy_tan@realsil.com.cn>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Stable <stable@vger.kernel.org> [V3.18]
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
Troy Tan 2015-01-20 11:01:23 -06:00 committed by Kalle Valo
parent b661a5da57
commit 6e5f443616
1 changed files with 1 additions and 2 deletions

View File

@ -1027,8 +1027,7 @@ bool rtl92ee_is_tx_desc_closed(struct ieee80211_hw *hw, u8 hw_queue, u16 index)
static u8 stop_report_cnt; static u8 stop_report_cnt;
struct rtl8192_tx_ring *ring = &rtlpci->tx_ring[hw_queue]; struct rtl8192_tx_ring *ring = &rtlpci->tx_ring[hw_queue];
/*checking Read/Write Point each interrupt wastes CPU */ {
if (stop_report_cnt > 15 || !rtlpriv->link_info.busytraffic) {
u16 point_diff = 0; u16 point_diff = 0;
u16 cur_tx_rp, cur_tx_wp; u16 cur_tx_rp, cur_tx_wp;
u32 tmpu32 = 0; u32 tmpu32 = 0;