Commit Graph

115 Commits

Author SHA1 Message Date
mentor
0b74c2ebe0 More cases to use ieee80211_skb_copy_noderef
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3262 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-26 17:46:36 +00:00
mentor
776a840f28 The netif_queue appears to be causing some performance problems. I'm going to go ahead and guess that we always want to prod the networking system to start sending packets; thus use netif_wake_queue()
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3261 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-26 17:31:51 +00:00
mtaylor
e479155497 Eliminate ether_sprintf in favor of new MAC_FMT and MAC_ADDR macros (which are faster and thread safe).
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3254 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-25 22:49:48 +00:00
mtaylor
77d9f966c0 - Add a iwpriv function that dumps a mapping of nasty obfuscated
symbol names to their corresponding HAL function names (ah.h) 
- Add a script to generate a SED script from the current HAL (ah.h)
    that will replace instances of obfuscated names with the correct names.
- Add the SED script for cleaning up text containing obfuscated function names for the current HAL


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3244 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-25 00:29:30 +00:00
br1
c585507798 beacon backoff configuration like the 802.11 standard describes
in "11.1.2.2 Beacon generation in an IBSS" the IEEE802.11 standard says, each
STA should...

"b) Calculate a random delay uniformly distributed in the range between zero
and twice aCWmin × aSlotTime,"


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3232 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-22 07:04:39 +00:00
mentor
751589f640 Revert r3220
Since r3076 ath_tx_capture no longer exists, and ath_capture no longer frees the SKB because it was a confusing place to do that. The reverted changeset has been tested to cause leaks, and once reverted the code operates correctly.i

*fwap*


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3222 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-19 15:45:28 +00:00
mtaylor
70339802ca Fix a bug where bf->bf_skb needs to be set to NULL because the skbuff have already been freed by
ath_tx_capture, for each frame in the list we have already freed the skb but the original pointer to
the list of skbs is still in bf->bf_skb.  So when bf is returned with ath_return_txbuf it tries to 
double-free, resuilting a spew of backtraces/warnings when reference debugging is enabled.  

Not to mention the fact that the skb is double-freed.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3220 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-19 01:02:26 +00:00
mtaylor
583f54226e Do not count requeued packets as discarded.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3217 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-19 00:56:25 +00:00
mtaylor
f5245bf3d0 Trivial spelling error
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3215 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-19 00:52:41 +00:00
mtaylor
9132c847c9 Add state debug messages when AP or STA returns to RUN state, indicating
whether or not beacons were going to be reconfigured.  Add logic so that
any time a STA on an AP mode radio comes back to RUN state we will
reconfigure beacons.  Also reconfigure beacons on AP return to RUN state
in a AP+STA configuration.  In this AP+STA mode, we need to be careful to update the beacons any time a STA or AP comes online to make sure the APs start beaconing.  This fixes issues where beacons are not restarted correctly after the station returns from SCAN/ASSOC/AUTH/INIT to RUN state while APs are pending completation of the STAs activity.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3213 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-18 22:14:41 +00:00
mtaylor
9e039dcd6a Two more places where running out of txbuf should cause requeue
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3211 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-18 22:01:03 +00:00
mtaylor
ac89d5ecc3 For any hardstart failure resulting from insufficient resources, set requeue.
On requeue, stop the kernel queue and flag the fact that we stopped it in sc_dev_stopped so that it can be restarted automatically when resources become available.  This is already done in the case of taking a txbuf, but can/should be done for every code path leading to requeuing.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3208 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-18 21:32:17 +00:00
mtaylor
278c57c4e7 Move channel non-occupancy limits out of ieee80211_channel structure to
avoid hitting the size limitations of wireless extensions.  wext is a real pain.
Now the values are stored in ic_chan_non_occupy[] instead.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3207 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-18 21:25:05 +00:00
mentor
a27f996ac4 Comment cleanup. No tagging in comments
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3205 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-18 17:28:43 +00:00
mentor
ac2124cce3 Another pass on r3156:r3200:
* Lots of coding style and formatting, tedious and annoying
 * Quite a few bad merges as far as I can tell; at least one of which was serious - reintroduced a leak


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3202 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-18 01:28:43 +00:00
mentor
beb3ffc4eb Formatting; grammar - r3179
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3197 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-17 02:51:32 +00:00
mentor
307d970bf5 Formatting r3185
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3196 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-17 02:49:14 +00:00
mentor
3dd1a89219 Formatting r3187 - getting slightly annoying now
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3195 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-17 02:48:09 +00:00
mentor
86891cd55e Formatting and style for r3189
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3194 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-17 02:45:41 +00:00
mentor
09ffca4d23 Formatting - r3191
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3193 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-17 02:30:15 +00:00
mtaylor
f1d15f48ce Invoke netif_stop_queue and requeue skb if we run out of txbuf instances in the pool
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3191 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-16 22:46:31 +00:00
mtaylor
7559e86881 Add support for variable number of VAPs. The hard coded maximum of 4 VAPs is replaced by a module parameter so that you can specify from 2 to 64 VAPs. The only quirk with high numbers of VAPs is that you must not attempt to use staggered beacons because the hardware cannot fire them fast enough. If more than 4 VAP maximum is specified, beacons are always bursted. This code has been tested successfully against 16-VAP APs without problems.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3189 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-16 22:43:30 +00:00
mtaylor
4bf21e04c5 More meaningful error message
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3187 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-16 22:29:57 +00:00
mtaylor
1da2be285c Debug output when beacons are reconfigured.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3185 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-16 22:28:49 +00:00
mtaylor
d25dbe6d49 Add the VAP pointer and nickname when dumping state transitions
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3183 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-16 22:26:32 +00:00
mtaylor
876563aeb1 Turn off beacon debug
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3181 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-16 22:24:46 +00:00
mtaylor
6322355756 Add an error if bursted beacons fails to set the buffer address.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3179 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-16 22:21:51 +00:00
mtaylor
4183b417a2 This is another case where we are getting clones of SKB and then modifying the header or the data. In a bridge, this is bad behavior. This fixes more bridge anomalies where incorrect header/data are sent to wired ports when packets are previously forwarded over madwifi port(s).
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3176 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-16 22:17:53 +00:00
mtaylor
00a96b9d09 Do not allow rs_rssi to go negative due to stale noise floor values. In this case we know that RSSI is 'real low' so zero is as good a value as any.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3174 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-16 22:13:23 +00:00
mtaylor
406f509bd5 More non-DFS changes merged from madwifi-dfs to trunk
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3173 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-16 22:09:13 +00:00
mtaylor
934d2aea42 Cleanup merge wierdness
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3153 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-16 01:08:28 +00:00
mtaylor
d2db9e2fc0 Show more flags in interrupt debugging output. Continuation of r3126.
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3128 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-15 23:40:36 +00:00
mtaylor
cf28881cdf Port r3126 from madwifi-dfs
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3127 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-15 23:35:11 +00:00
benoit
56f411f3c0 Fixed a kernel panic due to incorrect linux API use
hard_start_xmit() functions must either return NETDEV_TX_OK or 
NETDEV_TX_BUSY (they might also return negative errno values as well, 
like -ENETDOWN)
Correct a small missing static reported by sparse
This revert part of r3075


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3123 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-10 20:10:41 +00:00
benoit
b4d7a14f0a Merge madwifi-dfs to trunk : r3121
When hardware queue is full, stop the linux device queue.
This fix a bug where CPU was 100% in softirq context


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3122 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-08 15:59:33 +00:00
mentor
7fd69f6877 Merge -dfs to trunk - r3116
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3117 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-04 23:57:35 +00:00
benoit
93474aed34 Put an appropriate condition for starting CABQ (same as in madwifi-dfs
code). Don't process XR queue separately as it's already done in the 
loop


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3114 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-03 15:42:29 +00:00
benoit
e429bd14fb Packets might still be needed by other VAPs (like station VAP)
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3107 0192ed92-7a03-0410-a25b-9323aeb14dbd
2008-01-02 11:21:37 +00:00
benoit
a3aa87eeb8 Removed u_int64_t that slipped into last commit
Changed FUDGE to 3 to have the very same value as computed before


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3101 0192ed92-7a03-0410-a25b-9323aeb14dbd
2007-12-29 18:23:48 +00:00
mentor
c3677b3c7e * Add not about TU variables as the TSF (64-bit) is truncated into a TU (32-bit), even though it is right shifted by 10, but this is OK.
* Use roundup() to calculate the next intval boundary for nexttbtt. This method is more simple to understand and computationally simpler.



git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3099 0192ed92-7a03-0410-a25b-9323aeb14dbd
2007-12-29 17:27:55 +00:00
mentor
90e92ad904 Revert r3905
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3098 0192ed92-7a03-0410-a25b-9323aeb14dbd
2007-12-29 17:21:10 +00:00
mentor
fd43343eb6 * Update TU variables to be u_int64_t as they are only 10 bits shorter than TSFs which are 64 bit.
* Use roundup() to calculate the next intval boundary for nexttbtt. This method is more simple to understand and computationally simpler.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3095 0192ed92-7a03-0410-a25b-9323aeb14dbd
2007-12-29 02:28:36 +00:00
br1
fd0bc7d1b2 Added lots of debug to understand & test IBSS merges
from the madwifi-dfs branch (benoit) r3086

Added MAC_FMT & MAC_ADDR macros that can be used as a drop-in
replacement for ether_sprintf(). Fixed some use of ether_sprintf() that
uses the same static buffer twice.

- Without the functional changes.



git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3091 0192ed92-7a03-0410-a25b-9323aeb14dbd
2007-12-28 04:35:23 +00:00
br1
f23be2b4ce cleaning up dynamic sysctl enum
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3085 0192ed92-7a03-0410-a25b-9323aeb14dbd
2007-12-26 03:15:42 +00:00
br1
132e306707 safer bitfield declaration in struct ath_softc
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3082 0192ed92-7a03-0410-a25b-9323aeb14dbd
2007-12-26 01:58:12 +00:00
mentor
36d29a3180 Update TSTAMP MASK defines missed in last commit
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3077 0192ed92-7a03-0410-a25b-9323aeb14dbd
2007-12-24 01:10:25 +00:00
mentor
ff673bb684 Rework monitor mode SKB handling, touching shared and cloned SKB handling in the TX path. This patch removes any such processing based on the assumption that the current processing is wrong even in the most conservative case (cloned SKB).
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3076 0192ed92-7a03-0410-a25b-9323aeb14dbd
2007-12-24 01:01:47 +00:00
mentor
d959c28466 Lots and lots of formatting and trivial changes that I have been collecting
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3069 0192ed92-7a03-0410-a25b-9323aeb14dbd
2007-12-21 17:55:45 +00:00
proski
03538d0225 Protect against NULL in ath_beacon_config()
It's called with NULL vap in several places, and the old
ath_beacon_config() had such protection.  Without this check, the kernel
panics after association in managed mode.


git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3064 0192ed92-7a03-0410-a25b-9323aeb14dbd
2007-12-16 16:40:42 +00:00
mentor
9fbdb5c7a2 Formatting for r3027
git-svn-id: http://madwifi-project.org/svn/madwifi/trunk@3063 0192ed92-7a03-0410-a25b-9323aeb14dbd
2007-12-14 17:23:33 +00:00