aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/ral/rt2661.c
diff options
context:
space:
mode:
authorMax Khon <fjoe@FreeBSD.org>2006-06-05 20:06:29 +0000
committerMax Khon <fjoe@FreeBSD.org>2006-06-05 20:06:29 +0000
commit3da2dc0763c47c3bce082ce20cc8e3fe97ce717e (patch)
treee502da66bfe872d1a60a689f9efeb78c9848956c /sys/dev/ral/rt2661.c
parentfbec079f0d6b4a0d5cb0f7a0d054a23caf3a297e (diff)
downloadsrc-3da2dc0763c47c3bce082ce20cc8e3fe97ce717e.tar.gz
src-3da2dc0763c47c3bce082ce20cc8e3fe97ce717e.zip
Fix kernel panic in rt2661_tx_intr() if no frames has been sent.
Obtained from: OpenBSD (sys/dev/ic/rt2661.c rev. 1.15)
Notes
Notes: svn path=/head/; revision=159301
Diffstat (limited to 'sys/dev/ral/rt2661.c')
-rw-r--r--sys/dev/ral/rt2661.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/dev/ral/rt2661.c b/sys/dev/ral/rt2661.c
index 408a6f290387..74b28565c18c 100644
--- a/sys/dev/ral/rt2661.c
+++ b/sys/dev/ral/rt2661.c
@@ -962,6 +962,10 @@ rt2661_tx_intr(struct rt2661_softc *sc)
data = &txq->data[txq->stat];
rn = (struct rt2661_node *)data->ni;
+ /* if no frame has been sent, ignore */
+ if (rn == NULL)
+ continue;
+
switch (RT2661_TX_RESULT(val)) {
case RT2661_TX_SUCCESS:
retrycnt = RT2661_TX_RETRYCNT(val);