Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Aug 2011 08:42:39 +0000 (UTC)
From:      Adrian Chadd <adrian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r224962 - user/adrian/if_ath_tx/sys/dev/ath
Message-ID:  <201108180842.p7I8gdTE046320@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: adrian
Date: Thu Aug 18 08:42:39 2011
New Revision: 224962
URL: http://svn.freebsd.org/changeset/base/224962

Log:
  More updates, the LORs have mostly gone.

Modified:
  user/adrian/if_ath_tx/sys/dev/ath/README

Modified: user/adrian/if_ath_tx/sys/dev/ath/README
==============================================================================
--- user/adrian/if_ath_tx/sys/dev/ath/README	Thu Aug 18 08:40:11 2011	(r224961)
+++ user/adrian/if_ath_tx/sys/dev/ath/README	Thu Aug 18 08:42:39 2011	(r224962)
@@ -20,6 +20,25 @@ Things that need doing!
 
 Things that need investigating!
 
+There's a crash which occurs when a wlan interface is destroyed and
+re-created.
+
+<an up STA interface that's done some traffic and was in addba mode>
+ifconfig wlan0 destroy
+<stuff goes away>
+adrian-home-mips# /root/wifi-client ath0 CACHEBOY_11N_1
+ifconfig: interface wlan0 does not exist
+wlan0: Ethernet address: 00:15:6d:84:05:52
+kern.msgbuf_clear: 0 -> 0
+net.wlan.0.debug: 0x0 => 0x80000000<11n>
+net.wlan.0.debug: 0x80000000 => 0x80800000<11n,assoc>
+Trap cause = 4 (address error (load or I-fetch) - kernel mode)
+[ thread pid 0 tid 100025 ]
+Stopped at      ieee80211_node_attach+0x3f4:    lw      v0,24(v0)
+db> reset
+
+Maybe do a bit of kernel version bisecting to see when this was first broken?
+Hopefully it's something easy
 
 * How should channel scanning be handled? Right now it's causing both a HW TXQ
   and SW TXQ / node flush; this means the BAW will need to be slid along. Eek.
@@ -27,63 +46,6 @@ Things that need investigating!
 * When a node is flushed (but not being deleted) should the BAW also be updated?
   I don't think it is right now and this could be incorrect.
 
-* LOR between the net80211 node lock and the txqs
-
-lock order reversal:
- 1st 0x80a02738 ath1_txq1 (ath1_txq1) @ /data/freebsd/mips/if_ath_tx/src/sys/dev/ath/if_ath.c:4154
- 2nd 0xc086c6cc ath1_node_lock (ath1_node_lock) @ /data/freebsd/mips/if_ath_tx/src/sys/net80211/ieee80211_node.c:1702
-KDB: stack backtrace:
-db_trace_thread+30 (?,?,?,?) ra 8038aacc sp c7713a88 sz 24
-db_trace_self+1c (?,?,?,?) ra 80074c3c sp c7713aa0 sz 24
-80074c08+34 (?,?,?,?) ra 801ce304 sp c7713ab8 sz 416
-kdb_backtrace+44 (?,?,?,?) ra 801e5dc0 sp c7713c58 sz 24
-801e5d8c+34 (?,?,?,?) ra 801e6a04 sp c7713c70 sz 32
-witness_checkorder+954 (?,?,?,?) ra 80186ea0 sp c7713c90 sz 88
-_mtx_lock_flags+c4 (?,?,?,?) ra 8029885c sp c7713ce8 sz 48
-ieee80211_free_node+40 (?,?,?,?) ra 80079c80 sp c7713d18 sz 48
-ath_tx_freebuf+68 (?,?,?,?) ra 80079d2c sp c7713d48 sz 40
-ath_tx_default_comp+34 (?,?,?,?) ra 8007d664 sp c7713d70 sz 24
-8007d2b0+3b4 (?,?,?,?) ra 8007df3c sp c7713d88 sz 64
-8007deb4+88 (?,?,?,?) ra 801dc284 sp c7713dc8 sz 48
-801dc19c+e8 (?,?,?,?) ra 801dcd4c sp c7713df8 sz 56
-taskqueue_thread_loop+60 (?,?,?,?) ra 8016c2c4 sp c7713e30 sz 40
-fork_exit+a8 (?,?,?,?) ra 80383210 sp c7713e58 sz 40
-fork_trampoline+10 (?,?,?,?) ra 0 sp c7713e80 sz 0
-pid 0
-
-And another LOR:
-
-lock order reversal:
- 1st 0xc08316cc ath0_node_lock (ath0_node_lock) @ /data/freebsd/mips/if_ath_tx/src/sys/net80211/ieee80211_node.c:1702
- 2nd 0x80a03738 ath0_txq1 (ath0_txq1) @ /data/freebsd/mips/if_ath_tx/src/sys/dev/ath/if_ath_tx.c:1854
-KDB: stack backtrace:
-db_trace_thread+30 (?,?,?,?) ra 8038ab6c sp c7bf9798 sz 24
-db_trace_self+1c (?,?,?,?) ra 80074c3c sp c7bf97b0 sz 24
-80074c08+34 (?,?,?,?) ra 801ce3a4 sp c7bf97c8 sz 416
-kdb_backtrace+44 (?,?,?,?) ra 801e5e60 sp c7bf9968 sz 24
-801e5e2c+34 (?,?,?,?) ra 801e6aa4 sp c7bf9980 sz 32
-witness_checkorder+954 (?,?,?,?) ra 80186f40 sp c7bf99a0 sz 88
-_mtx_lock_flags+c4 (?,?,?,?) ra 80085fc4 sp c7bf99f8 sz 48
-ath_tx_node_flush+8c (?,?,?,?) ra 800860d0 sp c7bf9a28 sz 48
-ath_tx_tid_cleanup+10 (?,?,?,?) ra 8007c654 sp c7bf9a58 sz 24
-8007c5fc+58 (?,?,?,?) ra 80298318 sp c7bf9a70 sz 32
-802981fc+11c (?,?,?,?) ra 80298914 sp c7bf9a90 sz 24
-ieee80211_free_node+58 (?,?,?,?) ra 8029a110 sp c7bf9aa8 sz 48
-8029a078+98 (?,?,?,?) ra 8029c044 sp c7bf9ad8 sz 40
-ieee80211_sta_join+20c (?,?,?,?) ra 8028e720 sp c7bf9b00 sz 40
-8028e688+98 (?,?,?,?) ra 80290148 sp c7bf9b28 sz 48
-802900e4+64 (?,?,?,?) ra 80290948 sp c7bf9b58 sz 72
-802903f4+554 (?,?,?,?) ra 80292604 sp c7bf9ba0 sz 128
-ieee80211_ioctl+2c8 (?,?,?,?) ra 802b9e84 sp c7bf9c20 sz 48
-in_control+1c8 (?,?,?,?) ra 802514d8 sp c7bf9c50 sz 88
-ifioctl+13cc (?,?,80aaada0,80dda900) ra 801ee8c0 sp c7bf9ca8 sz 144
-soo_ioctl+3b0 (?,?,?,?) ra 801e91c4 sp c7bf9d38 sz 40
-kern_ioctl+23c (?,?,?,?) ra 801e936c sp c7bf9d60 sz 64
-ioctl+130 (?,?,?,?) ra 8037eb6c sp c7bf9da0 sz 56
-trap+8a4 (?,?,?,?) ra 80376fec sp c7bf9dd8 sz 168
-MipsUserGenException+10c (?,?,?,40818e20) ra 0 sp c7bf9e80 sz 0
-pid 1510
-
 Fixed issues:
 
 * Recursive TXQ lock on interface destruction:
@@ -159,3 +121,63 @@ pid 0
   - There's a dirty workaround to unpause the queue if BAR TX is definitely
     failing. This needs to be addressed before this work is merged back into
     -HEAD.
+
+
+* LOR between the net80211 node lock and the txqs
+  - These have disappeared now that the locking has been reworked.
+
+lock order reversal:
+ 1st 0x80a02738 ath1_txq1 (ath1_txq1) @ /data/freebsd/mips/if_ath_tx/src/sys/dev/ath/if_ath.c:4154
+ 2nd 0xc086c6cc ath1_node_lock (ath1_node_lock) @ /data/freebsd/mips/if_ath_tx/src/sys/net80211/ieee80211_node.c:1702
+KDB: stack backtrace:
+db_trace_thread+30 (?,?,?,?) ra 8038aacc sp c7713a88 sz 24
+db_trace_self+1c (?,?,?,?) ra 80074c3c sp c7713aa0 sz 24
+80074c08+34 (?,?,?,?) ra 801ce304 sp c7713ab8 sz 416
+kdb_backtrace+44 (?,?,?,?) ra 801e5dc0 sp c7713c58 sz 24
+801e5d8c+34 (?,?,?,?) ra 801e6a04 sp c7713c70 sz 32
+witness_checkorder+954 (?,?,?,?) ra 80186ea0 sp c7713c90 sz 88
+_mtx_lock_flags+c4 (?,?,?,?) ra 8029885c sp c7713ce8 sz 48
+ieee80211_free_node+40 (?,?,?,?) ra 80079c80 sp c7713d18 sz 48
+ath_tx_freebuf+68 (?,?,?,?) ra 80079d2c sp c7713d48 sz 40
+ath_tx_default_comp+34 (?,?,?,?) ra 8007d664 sp c7713d70 sz 24
+8007d2b0+3b4 (?,?,?,?) ra 8007df3c sp c7713d88 sz 64
+8007deb4+88 (?,?,?,?) ra 801dc284 sp c7713dc8 sz 48
+801dc19c+e8 (?,?,?,?) ra 801dcd4c sp c7713df8 sz 56
+taskqueue_thread_loop+60 (?,?,?,?) ra 8016c2c4 sp c7713e30 sz 40
+fork_exit+a8 (?,?,?,?) ra 80383210 sp c7713e58 sz 40
+fork_trampoline+10 (?,?,?,?) ra 0 sp c7713e80 sz 0
+pid 0
+
+And another LOR:
+
+lock order reversal:
+ 1st 0xc08316cc ath0_node_lock (ath0_node_lock) @ /data/freebsd/mips/if_ath_tx/src/sys/net80211/ieee80211_node.c:1702
+ 2nd 0x80a03738 ath0_txq1 (ath0_txq1) @ /data/freebsd/mips/if_ath_tx/src/sys/dev/ath/if_ath_tx.c:1854
+KDB: stack backtrace:
+db_trace_thread+30 (?,?,?,?) ra 8038ab6c sp c7bf9798 sz 24
+db_trace_self+1c (?,?,?,?) ra 80074c3c sp c7bf97b0 sz 24
+80074c08+34 (?,?,?,?) ra 801ce3a4 sp c7bf97c8 sz 416
+kdb_backtrace+44 (?,?,?,?) ra 801e5e60 sp c7bf9968 sz 24
+801e5e2c+34 (?,?,?,?) ra 801e6aa4 sp c7bf9980 sz 32
+witness_checkorder+954 (?,?,?,?) ra 80186f40 sp c7bf99a0 sz 88
+_mtx_lock_flags+c4 (?,?,?,?) ra 80085fc4 sp c7bf99f8 sz 48
+ath_tx_node_flush+8c (?,?,?,?) ra 800860d0 sp c7bf9a28 sz 48
+ath_tx_tid_cleanup+10 (?,?,?,?) ra 8007c654 sp c7bf9a58 sz 24
+8007c5fc+58 (?,?,?,?) ra 80298318 sp c7bf9a70 sz 32
+802981fc+11c (?,?,?,?) ra 80298914 sp c7bf9a90 sz 24
+ieee80211_free_node+58 (?,?,?,?) ra 8029a110 sp c7bf9aa8 sz 48
+8029a078+98 (?,?,?,?) ra 8029c044 sp c7bf9ad8 sz 40
+ieee80211_sta_join+20c (?,?,?,?) ra 8028e720 sp c7bf9b00 sz 40
+8028e688+98 (?,?,?,?) ra 80290148 sp c7bf9b28 sz 48
+802900e4+64 (?,?,?,?) ra 80290948 sp c7bf9b58 sz 72
+802903f4+554 (?,?,?,?) ra 80292604 sp c7bf9ba0 sz 128
+ieee80211_ioctl+2c8 (?,?,?,?) ra 802b9e84 sp c7bf9c20 sz 48
+in_control+1c8 (?,?,?,?) ra 802514d8 sp c7bf9c50 sz 88
+ifioctl+13cc (?,?,80aaada0,80dda900) ra 801ee8c0 sp c7bf9ca8 sz 144
+soo_ioctl+3b0 (?,?,?,?) ra 801e91c4 sp c7bf9d38 sz 40
+kern_ioctl+23c (?,?,?,?) ra 801e936c sp c7bf9d60 sz 64
+ioctl+130 (?,?,?,?) ra 8037eb6c sp c7bf9da0 sz 56
+trap+8a4 (?,?,?,?) ra 80376fec sp c7bf9dd8 sz 168
+MipsUserGenException+10c (?,?,?,40818e20) ra 0 sp c7bf9e80 sz 0
+pid 1510
+



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201108180842.p7I8gdTE046320>