* [PATCH 1/3] ath9k: Remove bogus assert in ath_clone_txbuf()
@ 2009-07-13 7:02 Vasanthakumar Thiagarajan
2009-07-13 7:02 ` [PATCH 2/3] ath9k: Handle tx desc shortage more appropriately Vasanthakumar Thiagarajan
0 siblings, 1 reply; 3+ messages in thread
From: Vasanthakumar Thiagarajan @ 2009-07-13 7:02 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, Luis.Rodriguez, Jouni.Malinen, ath9k-devel
oops, this one should be part of the original patch
"ath9k: downgrade assert in ath_clone_txbuf()"
Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
---
drivers/net/wireless/ath/ath9k/xmit.c | 1 -
1 files changed, 0 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/ath/ath9k/xmit.c b/drivers/net/wireless/ath/ath9k/xmit.c
index 5de9878..45eac35 100644
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -242,7 +242,6 @@ static struct ath_buf* ath_clone_txbuf(struct ath_softc *sc, struct ath_buf *bf)
spin_unlock_bh(&sc->tx.txbuflock);
return NULL;
}
- ASSERT(!list_empty((&sc->tx.txbuf)));
tbf = list_first_entry(&sc->tx.txbuf, struct ath_buf, list);
list_del(&tbf->list);
spin_unlock_bh(&sc->tx.txbuflock);
--
1.5.5.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH 2/3] ath9k: Handle tx desc shortage more appropriately
2009-07-13 7:02 [PATCH 1/3] ath9k: Remove bogus assert in ath_clone_txbuf() Vasanthakumar Thiagarajan
@ 2009-07-13 7:02 ` Vasanthakumar Thiagarajan
2009-07-13 7:02 ` [PATCH 3/3] ath9k: Remove pointless ath9k_ps_restore() in ath_detach() Vasanthakumar Thiagarajan
0 siblings, 1 reply; 3+ messages in thread
From: Vasanthakumar Thiagarajan @ 2009-07-13 7:02 UTC (permalink / raw)
To: linville; +Cc: linux-wireless, Luis.Rodriguez, Jouni.Malinen, ath9k-devel
Update tx BA window and complete the frame as failed
one if we can't clone the holding descriptor due to
unavailability of descriptors.
Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
---
drivers/net/wireless/ath/ath9k/xmit.c | 17 ++++++++++++++++-
1 files changed, 16 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/ath/ath9k/xmit.c b/drivers/net/wireless/ath/ath9k/xmit.c
index 45eac35..cbeff1a 100644
--- a/drivers/net/wireless/ath/ath9k/xmit.c
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -382,8 +382,23 @@ static void ath_tx_complete_aggr(struct ath_softc *sc, struct ath_txq *txq,
struct ath_buf *tbf;
tbf = ath_clone_txbuf(sc, bf_last);
- if (!tbf)
+ /*
+ * Update tx baw and complete the frame with
+ * failed status if we run out of tx buf
+ */
+ if (!tbf) {
+ spin_lock_bh(&txq->axq_lock);
+ ath_tx_update_baw(sc, tid,
+ bf->bf_seqno);
+ spin_unlock_bh(&txq->axq_lock);
+
+ bf->bf_state.bf_type |= BUF_XRETRY;
+ ath_tx_rc_status(bf, ds, nbad,
+ 0, false);
+ ath_tx_complete_buf(sc, bf, &bf_head,
+ 0, 0);
break;
+ }
ath9k_hw_cleartxdesc(sc->sc_ah, tbf->bf_desc);
list_add_tail(&tbf->list, &bf_head);
} else {
--
1.5.5.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-07-13 7:09 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-07-13 7:02 [PATCH 1/3] ath9k: Remove bogus assert in ath_clone_txbuf() Vasanthakumar Thiagarajan
2009-07-13 7:02 ` [PATCH 2/3] ath9k: Handle tx desc shortage more appropriately Vasanthakumar Thiagarajan
2009-07-13 7:02 ` [PATCH 3/3] ath9k: Remove pointless ath9k_ps_restore() in ath_detach() Vasanthakumar Thiagarajan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox