mirror of
https://github.com/torvalds/linux.git
synced 2024-11-01 01:31:44 +00:00
18889231e4
This prevents calling rcu_synchronize from within the tx path by moving the table growth code to the mesh workqueue. Move mesh_table_free and mesh_table_grow from mesh.c to mesh_pathtbl.c and declare them static. Also, re-enable mesh in Kconfig and update the configuration description. Signed-off-by: Javier Cardona <javier@cozybit.com> Tested-by: Andrey Yurovsky <andrey@cozybit.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
220 lines
6.4 KiB
Plaintext
220 lines
6.4 KiB
Plaintext
config MAC80211
|
|
tristate "Generic IEEE 802.11 Networking Stack (mac80211)"
|
|
depends on CFG80211
|
|
select CRYPTO
|
|
select CRYPTO_ECB
|
|
select CRYPTO_ARC4
|
|
select CRYPTO_AES
|
|
select CRC32
|
|
---help---
|
|
This option enables the hardware independent IEEE 802.11
|
|
networking stack.
|
|
|
|
comment "CFG80211 needs to be enabled for MAC80211"
|
|
depends on CFG80211=n
|
|
|
|
menu "Rate control algorithm selection"
|
|
depends on MAC80211 != n
|
|
|
|
config MAC80211_RC_PID
|
|
bool "PID controller based rate control algorithm" if EMBEDDED
|
|
---help---
|
|
This option enables a TX rate control algorithm for
|
|
mac80211 that uses a PID controller to select the TX
|
|
rate.
|
|
|
|
config MAC80211_RC_MINSTREL
|
|
bool "Minstrel" if EMBEDDED
|
|
default y
|
|
---help---
|
|
This option enables the 'minstrel' TX rate control algorithm
|
|
|
|
choice
|
|
prompt "Default rate control algorithm"
|
|
default MAC80211_RC_DEFAULT_MINSTREL
|
|
---help---
|
|
This option selects the default rate control algorithm
|
|
mac80211 will use. Note that this default can still be
|
|
overridden through the ieee80211_default_rc_algo module
|
|
parameter if different algorithms are available.
|
|
|
|
config MAC80211_RC_DEFAULT_PID
|
|
bool "PID controller based rate control algorithm"
|
|
depends on MAC80211_RC_PID
|
|
---help---
|
|
Select the PID controller based rate control as the
|
|
default rate control algorithm. You should choose
|
|
this unless you know what you are doing.
|
|
|
|
config MAC80211_RC_DEFAULT_MINSTREL
|
|
bool "Minstrel"
|
|
depends on MAC80211_RC_MINSTREL
|
|
---help---
|
|
Select Minstrel as the default rate control algorithm.
|
|
|
|
|
|
endchoice
|
|
|
|
config MAC80211_RC_DEFAULT
|
|
string
|
|
default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL
|
|
default "pid" if MAC80211_RC_DEFAULT_PID
|
|
default ""
|
|
|
|
endmenu
|
|
|
|
config MAC80211_MESH
|
|
bool "Enable mac80211 mesh networking (pre-802.11s) support"
|
|
depends on MAC80211 && EXPERIMENTAL
|
|
---help---
|
|
This options enables support of Draft 802.11s mesh networking.
|
|
The implementation is based on Draft 2.08 of the Mesh Networking
|
|
amendment. However, no compliance with that draft is claimed or even
|
|
possible, as drafts leave a number of identifiers to be defined after
|
|
ratification. For more information visit http://o11s.org/.
|
|
|
|
config MAC80211_LEDS
|
|
bool "Enable LED triggers"
|
|
depends on MAC80211
|
|
select NEW_LEDS
|
|
select LEDS_TRIGGERS
|
|
---help---
|
|
This option enables a few LED triggers for different
|
|
packet receive/transmit events.
|
|
|
|
config MAC80211_DEBUGFS
|
|
bool "Export mac80211 internals in DebugFS"
|
|
depends on MAC80211 && DEBUG_FS
|
|
---help---
|
|
Select this to see extensive information about
|
|
the internal state of mac80211 in debugfs.
|
|
|
|
Say N unless you know you need this.
|
|
|
|
menuconfig MAC80211_DEBUG_MENU
|
|
bool "Select mac80211 debugging features"
|
|
depends on MAC80211
|
|
---help---
|
|
This option collects various mac80211 debug settings.
|
|
|
|
config MAC80211_DEBUG_PACKET_ALIGNMENT
|
|
bool "Enable packet alignment debugging"
|
|
depends on MAC80211_DEBUG_MENU
|
|
---help---
|
|
This option is recommended for driver authors and strongly
|
|
discouraged for everybody else, it will trigger a warning
|
|
when a driver hands mac80211 a buffer that is aligned in
|
|
a way that will cause problems with the IP stack on some
|
|
architectures.
|
|
|
|
Say N unless you're writing a mac80211 based driver.
|
|
|
|
config MAC80211_NOINLINE
|
|
bool "Do not inline TX/RX handlers"
|
|
depends on MAC80211_DEBUG_MENU
|
|
---help---
|
|
This option affects code generation in mac80211, when
|
|
selected some functions are marked "noinline" to allow
|
|
easier debugging of problems in the transmit and receive
|
|
paths.
|
|
|
|
This option increases code size a bit and inserts a lot
|
|
of function calls in the code, but is otherwise safe to
|
|
enable.
|
|
|
|
If unsure, say N unless you expect to be finding problems
|
|
in mac80211.
|
|
|
|
config MAC80211_VERBOSE_DEBUG
|
|
bool "Verbose debugging output"
|
|
depends on MAC80211_DEBUG_MENU
|
|
---help---
|
|
Selecting this option causes mac80211 to print out
|
|
many debugging messages. It should not be selected
|
|
on production systems as some of the messages are
|
|
remotely triggerable.
|
|
|
|
Do not select this option.
|
|
|
|
config MAC80211_HT_DEBUG
|
|
bool "Verbose HT debugging"
|
|
depends on MAC80211_DEBUG_MENU
|
|
---help---
|
|
This option enables 802.11n High Throughput features
|
|
debug tracing output.
|
|
|
|
It should not be selected on production systems as some
|
|
of the messages are remotely triggerable.
|
|
|
|
Do not select this option.
|
|
|
|
config MAC80211_TKIP_DEBUG
|
|
bool "Verbose TKIP debugging"
|
|
depends on MAC80211_DEBUG_MENU
|
|
---help---
|
|
Selecting this option causes mac80211 to print out
|
|
very verbose TKIP debugging messages. It should not
|
|
be selected on production systems as those messages
|
|
are remotely triggerable.
|
|
|
|
Do not select this option.
|
|
|
|
config MAC80211_IBSS_DEBUG
|
|
bool "Verbose IBSS debugging"
|
|
depends on MAC80211_DEBUG_MENU
|
|
---help---
|
|
Selecting this option causes mac80211 to print out
|
|
very verbose IBSS debugging messages. It should not
|
|
be selected on production systems as those messages
|
|
are remotely triggerable.
|
|
|
|
Do not select this option.
|
|
|
|
config MAC80211_VERBOSE_PS_DEBUG
|
|
bool "Verbose powersave mode debugging"
|
|
depends on MAC80211_DEBUG_MENU
|
|
---help---
|
|
Selecting this option causes mac80211 to print out very
|
|
verbose power save mode debugging messages (when mac80211
|
|
is an AP and has power saving stations.)
|
|
It should not be selected on production systems as those
|
|
messages are remotely triggerable.
|
|
|
|
Do not select this option.
|
|
|
|
config MAC80211_VERBOSE_MPL_DEBUG
|
|
bool "Verbose mesh peer link debugging"
|
|
depends on MAC80211_DEBUG_MENU
|
|
depends on MAC80211_MESH
|
|
---help---
|
|
Selecting this option causes mac80211 to print out very
|
|
verbose mesh peer link debugging messages (when mac80211
|
|
is taking part in a mesh network).
|
|
It should not be selected on production systems as those
|
|
messages are remotely triggerable.
|
|
|
|
Do not select this option.
|
|
|
|
config MAC80211_DEBUG_COUNTERS
|
|
bool "Extra statistics for TX/RX debugging"
|
|
depends on MAC80211_DEBUG_MENU
|
|
depends on MAC80211_DEBUGFS
|
|
---help---
|
|
Selecting this option causes mac80211 to keep additional
|
|
and very verbose statistics about TX and RX handler use
|
|
and show them in debugfs.
|
|
|
|
If unsure, say N.
|
|
|
|
config MAC80211_DRIVER_API_TRACER
|
|
bool "Driver API tracer"
|
|
depends on MAC80211_DEBUG_MENU
|
|
depends on EVENT_TRACING
|
|
help
|
|
Say Y here to make mac80211 register with the ftrace
|
|
framework for the driver API -- you can see which
|
|
driver methods it is calling then by looking at the
|
|
trace.
|
|
|
|
If unsure, say N.
|