#
a634d6a7 |
| 09-Jun-2005 |
Sam Leffler <sam@FreeBSD.org> |
o collect dtim period+count from beacons in station mode so drivers can better program beacon timers o leave placeholder in com structure for future ap/adhoc mode tim support
Reviewed by: avatar
|
Revision tags: release/5.4.0_cvs, release/5.4.0 |
|
#
0942c81c |
| 04-Apr-2005 |
Sam Leffler <sam@FreeBSD.org> |
remove extern from function decls
|
#
acc4f7f5 |
| 24-Jan-2005 |
Sam Leffler <sam@FreeBSD.org> |
statically allocate the station/neighbor node table; the deferred allocation scheme introduced a race condition during device state transitions
|
Revision tags: release/4.11.0_cvs, release/4.11.0 |
|
#
c75ac469 |
| 18-Jan-2005 |
Sam Leffler <sam@FreeBSD.org> |
when scanning is interrupted reset state so table entries go in the station table and not the scan table
Noticed by: Tai-hwa Liang
|
#
1f1d7810 |
| 31-Dec-2004 |
Sam Leffler <sam@FreeBSD.org> |
bump copyright for 2005
|
#
8a1b9b6a |
| 08-Dec-2004 |
Sam Leffler <sam@FreeBSD.org> |
Update 802.11 support; too much new functionality to fully describe here but it includes completed 802.11g, WPA, 802.11i, 802.1x, WME/WMM, AP-side power-save, crypto plugin framework, authenticator p
Update 802.11 support; too much new functionality to fully describe here but it includes completed 802.11g, WPA, 802.11i, 802.1x, WME/WMM, AP-side power-save, crypto plugin framework, authenticator plugin framework, and access control plugin frameowrk.
show more ...
|
Revision tags: release/5.3.0_cvs, release/5.3.0, release/4.10.0_cvs, release/4.10.0 |
|
#
3055cc14 |
| 06-Apr-2004 |
Sam Leffler <sam@FreeBSD.org> |
eliminate nested include by making MALLOC_DECLARE conditional on the inclusion of <sys/malloc.h>
Submitted by: bde
|
#
566a6538 |
| 05-Apr-2004 |
Sam Leffler <sam@FreeBSD.org> |
export the malloc type M_80211_NODE for drivers that override the node allocation routines
|
#
750d6d0c |
| 03-Apr-2004 |
Sam Leffler <sam@FreeBSD.org> |
fix adhoc/ibss operation for drivers that require host support (e.g. ath):
o remove IEEE80211_C_RCVMGT capability o on transmit craft new nodes as needed using new ieee80211_find_txnode routine o ad
fix adhoc/ibss operation for drivers that require host support (e.g. ath):
o remove IEEE80211_C_RCVMGT capability o on transmit craft new nodes as needed using new ieee80211_find_txnode routine o add ieee80211_find_txnode routine to lookup a node by mac address and if not present create one when operating in ibss/ahdemo mode; new nodes are dup'd from bss and the driver is told to treat the node as if a new association has been created so driver-private state (e.g. rate control handling) is setup
Obtained from: netbsd (basic idea)
show more ...
|
Revision tags: release/5.2.1_cvs, release/5.2.1, release/5.2.0_cvs, release/5.2.0, release/4.9.0_cvs, release/4.9.0 |
|
#
1e343b38 |
| 17-Oct-2003 |
Sam Leffler <sam@FreeBSD.org> |
parameterize locking to improve portability and possible change to different locking strategies
|
#
303ebc3c |
| 26-Sep-2003 |
Sam Leffler <sam@FreeBSD.org> |
Try yet again to deal with timing out nodes. We cannot hold the node lock while sending a management frame as this will potentially result in a LOR with a driver lock. This doesn't happen for the A
Try yet again to deal with timing out nodes. We cannot hold the node lock while sending a management frame as this will potentially result in a LOR with a driver lock. This doesn't happen for the Atheros driver but does for the wi driver. Use a generation number to help process each node once when scanning the node table and drop the node lock if we need to timeout a node and send a frame.
show more ...
|
#
0a915fad |
| 20-Aug-2003 |
Sam Leffler <sam@FreeBSD.org> |
MFp4 changes to fix locking issues and correct reference count handling of station entries in hostap mode:
Input path:
o driver is now expected to find the node associated with the sender of a re
MFp4 changes to fix locking issues and correct reference count handling of station entries in hostap mode:
Input path:
o driver is now expected to find the node associated with the sender of a received frame; use ic_bss if none is located o driver passes the (referenced) node into ieee80211_input for use within the wlan module and is responsible for cleaning up on return o the antenna state is no longer passed up with each frame; this is now considered driver-private state and drivers are responsible for keeping it in the driver-private part of a node
Output path:
Revamp output path for management frames to eliminate redundant locking that causes problems and to correct reference counting bogosity that occurs when stations are timed out due to inactivity (in AP mode). On output the refcnt'd node is stashed in the pkthdr's recvif field (yech) and retrieved by the driver. This eliminates an unref/ref scenario and related node table unlock/lock due to the driver looking up the node. This is particularly important when stations are timed out as this causes a lock order reversal that can result in a deadlock. As a byproduct we also reduce the overhead for sending management frames (minimal). Additional fallout from this is a change to ieee80211_encap to return a refcn't node for tieing to the outbound frame. Node refcnts are not reclaimed until after a frame is completely processed (e.g. in the tx interrupt handler). This is especially important for timed out stations as this deref will be the final one causing the node entry to be reclaimed.
Additional semi-related changes: o replace m_copym use with m_copypacket (optimization) o add assert to verify ic_bss is never free'd during normal operation o add comments explaining calling conventions by drivers for frames going in each direction o remove extraneous code that "cannot be executed" (e.g. because pointers may never be null)
show more ...
|
#
2692bb26 |
| 14-Aug-2003 |
Sam Leffler <sam@FreeBSD.org> |
Delay creating ic_bss until after the super-class has a chance to override the method pointers for manipulating nodes; this fixes a problem where the ic_bss node was not being created properly for th
Delay creating ic_bss until after the super-class has a chance to override the method pointers for manipulating nodes; this fixes a problem where the ic_bss node was not being created properly for the ath driver causing the driver to scribble on random memory.
Noticed by: David Young <dyoung@pobox.com>
show more ...
|
#
a11c9a5c |
| 20-Jul-2003 |
Sam Leffler <sam@FreeBSD.org> |
o change ieee80211_new_state handling to use a proper method that drivers override in their sub-class; this eliminates the hack of interpreting the EINPROGRESS return value to mean "don't do any
o change ieee80211_new_state handling to use a proper method that drivers override in their sub-class; this eliminates the hack of interpreting the EINPROGRESS return value to mean "don't do any of the normal work" o correct active scanning so the first channel is only scanned once and so per-channel passive mode is properly honored o expose 802.11 FSM state names so every driver doesn't keep a private copy o eliminate node parameter to ieee80211_begin_scan; it was not being used
show more ...
|
#
7535e66a |
| 27-Jun-2003 |
Sam Leffler <sam@FreeBSD.org> |
revise copyright notices per discussion with Atsushi Onoe <onoe@sm.sony.co.jp>
|
#
1a1e1d21 |
| 23-Jun-2003 |
Sam Leffler <sam@FreeBSD.org> |
new 802.11 layer:
o code reorg (relative to old netbsd-derived code) for future growth o drivers now specify available channels and rates and 802.11 layer handles almost all ifmedia actions o mult
new 802.11 layer:
o code reorg (relative to old netbsd-derived code) for future growth o drivers now specify available channels and rates and 802.11 layer handles almost all ifmedia actions o multi-mode support for 11a/b/g devices o 11g protocol additions (incomplete) o new element id additions (for other than 11g) o node/station table redone for proper locking and to eliminate driver incestuousness o split device flags and capabilities to reduce confusion and provide room for expansion o incomplete power management infrastructure (need to revisit) o incomplete hooks for software retry o more...
show more ...
|