linux-stable/net/wireless/Kconfig
Johannes Berg f7969969f4 cfg80211: make spurious warnings less likely, configurable
Bob reported that he got warnings in IBSS mode about
the ssid_len being zero on a joined event, but only
when kmemcheck was enabled. This appears to be due
to a race condition between drivers and userspace,
when the driver reports joined but the user in the
meantime decided to leave the IBSS again, the warning
would trigger. This was made more likely by kmemcheck
delaying the code that does the check and sends the
event.

So first, make the warning trigger closer to the
driver, which means it's not locked, but since only
the warning depends on it that's ok.

And secondly, users will not want to have spurious
warnings at all, so make those that are known to be
racy in such a way configurable.

Reported-by: Bob Copeland <me@bobcopeland.com>
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2009-08-28 14:40:30 -04:00

133 lines
3.5 KiB
Text

config CFG80211
tristate "Improved wireless configuration API"
depends on RFKILL || !RFKILL
config NL80211_TESTMODE
bool "nl80211 testmode command"
depends on CFG80211
help
The nl80211 testmode command helps implementing things like
factory calibration or validation tools for wireless chips.
Select this option ONLY for kernels that are specifically
built for such purposes.
Debugging tools that are supposed to end up in the hands of
users should better be implemented with debugfs.
Say N.
config CFG80211_DEVELOPER_WARNINGS
bool "enable developer warnings"
depends on CFG80211
default n
help
This option enables some additional warnings that help
cfg80211 developers and driver developers, but that can
trigger due to races with userspace.
For example, when a driver reports that it was disconnected
from the AP, but the user disconnects manually at the same
time, the warning might trigger spuriously due to races.
Say Y only if you are developing cfg80211 or a driver based
on it (or mac80211).
config CFG80211_REG_DEBUG
bool "cfg80211 regulatory debugging"
depends on CFG80211
default n
---help---
You can enable this if you want to debug regulatory changes.
If unsure, say N.
config CFG80211_DEFAULT_PS
bool "enable powersave by default"
depends on CFG80211
default y
help
This option enables powersave mode by default.
If this causes your applications to misbehave you should fix your
applications instead -- they need to register their network
latency requirement, see Documentation/power/pm_qos_interface.txt.
config CFG80211_DEFAULT_PS_VALUE
int
default 1 if CFG80211_DEFAULT_PS
default 0
config CFG80211_DEBUGFS
bool "cfg80211 DebugFS entries"
depends on CFG80211 && DEBUG_FS
---help---
You can enable this if you want to debugfs entries for cfg80211.
If unsure, say N.
config WIRELESS_OLD_REGULATORY
bool "Old wireless static regulatory definitions"
default n
---help---
This option enables the old static regulatory information
and uses it within the new framework. This option is available
for historical reasons and it is advised to leave it off.
For details see:
http://wireless.kernel.org/en/developers/Regulatory
Say N and if you say Y, please tell us why. The default is N.
config WIRELESS_EXT
bool "Wireless extensions"
default y
---help---
This option enables the legacy wireless extensions
(wireless network interface configuration via ioctls.)
Say Y unless you've upgraded all your userspace to use
nl80211 instead of wireless extensions.
config WIRELESS_EXT_SYSFS
bool "Wireless extensions sysfs files"
default y
depends on WIRELESS_EXT && SYSFS
help
This option enables the deprecated wireless statistics
files in /sys/class/net/*/wireless/. The same information
is available via the ioctls as well.
Say Y if you have programs using it, like old versions of
hal.
config LIB80211
tristate "Common routines for IEEE802.11 drivers"
default n
help
This options enables a library of common routines used
by IEEE802.11 wireless LAN drivers.
Drivers should select this themselves if needed. Say Y if
you want this built into your kernel.
config LIB80211_CRYPT_WEP
tristate
config LIB80211_CRYPT_CCMP
tristate
config LIB80211_CRYPT_TKIP
tristate
config LIB80211_DEBUG
bool "lib80211 debugging messages"
depends on LIB80211
default n
---help---
You can enable this if you want verbose debugging messages
from lib80211.
If unsure, say N.