summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ralink/rt2x00/rt2800usb.c
diff options
context:
space:
mode:
authorStanislaw Gruszka2017-01-06 14:05:16 +0100
committerKalle Valo2017-01-17 12:58:37 +0100
commit1701221696764b6861d0ee66850812a8900b9b9b (patch)
tree731416799186dbf92a7dc54cd0034bcbf228341d /drivers/net/wireless/ralink/rt2x00/rt2800usb.c
parentrt2800: tune TX_RTS_CFG config (diff)
downloadkernel-qcow2-linux-1701221696764b6861d0ee66850812a8900b9b9b.tar.gz
kernel-qcow2-linux-1701221696764b6861d0ee66850812a8900b9b9b.tar.xz
kernel-qcow2-linux-1701221696764b6861d0ee66850812a8900b9b9b.zip
rt2800usb: mark tx failure on timeout
If we do not get TX status in reasonable time, we most likely fail to send frame hence mark it as so. Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Diffstat (limited to 'drivers/net/wireless/ralink/rt2x00/rt2800usb.c')
-rw-r--r--drivers/net/wireless/ralink/rt2x00/rt2800usb.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/net/wireless/ralink/rt2x00/rt2800usb.c b/drivers/net/wireless/ralink/rt2x00/rt2800usb.c
index 400f074fd94f..205a7b8ac8a7 100644
--- a/drivers/net/wireless/ralink/rt2x00/rt2800usb.c
+++ b/drivers/net/wireless/ralink/rt2x00/rt2800usb.c
@@ -602,10 +602,9 @@ static void rt2800usb_txdone_nostatus(struct rt2x00_dev *rt2x00dev)
!test_bit(ENTRY_DATA_STATUS_PENDING, &entry->flags))
break;
- if (test_bit(ENTRY_DATA_IO_FAILED, &entry->flags))
+ if (test_bit(ENTRY_DATA_IO_FAILED, &entry->flags) ||
+ rt2800usb_entry_txstatus_timeout(entry))
rt2x00lib_txdone_noinfo(entry, TXDONE_FAILURE);
- else if (rt2800usb_entry_txstatus_timeout(entry))
- rt2x00lib_txdone_noinfo(entry, TXDONE_UNKNOWN);
else
break;
}