26 Nov, 2013
31 commits
-
To report channel width correctly we have
to send correct channel parameters from
mac80211 when calling cfg80211_cac_event().This is required in case of using channel width
higher than 20MHz and we have to set correct
dfs channel state after CAC (NL80211_DFS_AVAILABLE).Signed-off-by: Janusz Dziedzic
Reviewed-by: Luis R. Rodriguez
Signed-off-by: Johannes Berg -
There's no code calling ieee80211_key_replace() with both
arguments NULL and it wouldn't make sense, but in the
interest of maintainability add a warning for it. As a
side effect, this also shuts up a smatch warning.Signed-off-by: Johannes Berg
-
As the flag is entirely implemented in cfg80211, it should
have been a global feature flag (which I believe didn't
exist at the time). However, there's no reason to allow
drivers to unset the flag, so don't allow it and remove
the validation of NL80211_SCAN_FLAG_FLUSH.Signed-off-by: Johannes Berg
-
Improve readability of the function by adding the break,
there's no functional impact but it's confusing to fall
through.Signed-off-by: Johannes Berg
-
Coverity points out that checking assoc_data->ie is
completely useless since it's an array in the struct
and can't be NULL - remove the useless checks.Signed-off-by: Johannes Berg
-
802.11-2012 13.3.1 implicitly limits the mesh local link
ID range to that of AID, since for mesh PS the local link
ID must be indicated in the TIM IE, which only holds
IEEE80211_MAX_AID bits.Also the code was allowing a local link ID of 0, but this
is not correct since that TIM bit is used for indicating
buffered mcast frames.Generate a random, unique, link ID from 1 - 2007, and drop
a modulo conversion for the local link ID, but keep it for
the peer link ID in case he chose something > MAX_AID.Signed-off-by: Thomas Pedersen
Signed-off-by: Johannes Berg -
Signed-off-by: Thomas Pedersen
Signed-off-by: Johannes Berg -
Signed-off-by: Thomas Pedersen
[fix some indentation, squash llid assignment]
Signed-off-by: Johannes Berg -
If we store the peer link ID right after initializing a
new neighbor, there is no need to do it later in the
peering FSM.Signed-off-by: Thomas Pedersen
Signed-off-by: Johannes Berg -
Signed-off-by: Thomas Pedersen
Signed-off-by: Johannes Berg -
Signed-off-by: Thomas Pedersen
Signed-off-by: Johannes Berg -
Said function was removed some time ago.
Signed-off-by: Bob Copeland
Signed-off-by: Johannes Berg -
All other paths return an error code, do the same here.
Signed-off-by: Bob Copeland
Signed-off-by: Johannes Berg -
The ignore_plink_timer flag is set when doing mod_timer() if
the timer was not previously active. This is to avoid executing
the timeout if del_timer() was subsequently called. However,
del_timer() only happens if we are moving to ESTAB state or
get a close frame while in HOLDING.We cannot leave HOLDING and re-enter ESTAB unless we receive a
close frame (in which case ignore_plink_timer is already set) or
if the timeout expires, so there actually isn't a case where
this is needed on mod_timer().Signed-off-by: Bob Copeland
Signed-off-by: Johannes Berg -
The matches_local check can just be done when looking at the
individual action types.Signed-off-by: Bob Copeland
Signed-off-by: Johannes Berg -
Use C instead of cpp for type checking. Also swap the arguments
into the usual sdata -> sta order.Signed-off-by: Bob Copeland
Signed-off-by: Johannes Berg -
The initial frame checks differ depending on whether this is
a new peer or not, but they were all intermixed with sta checks
as necessary. Group them together so the two cases are clearer.Signed-off-by: Bob Copeland
Signed-off-by: Johannes Berg -
Reject and accepted close events always put the host in the
holding state and compute a reason code based only on the
current state. Likewise on establish we always do the same
setup. Put these in functions to save some duplicated code.Signed-off-by: Bob Copeland
Signed-off-by: Johannes Berg -
Rather than unlock at the end of each case, do it once after
all is said and done.Signed-off-by: Bob Copeland
Signed-off-by: Johannes Berg -
Do all frame transfers in one place at the end of the
big switch statements. sta->plid and sta->reason can
be passed in any case, since they are only used for
the frames that need them. Remove assignments to locals
for values already stored in the sta structure.Signed-off-by: Thomas Pedersen
Signed-off-by: Bob Copeland
Signed-off-by: Johannes Berg -
According to IEEE 802.11-2012 (8.4.2.104), no peering
management element exists with length 7. This code is checking
to see if llid is present to ignore close frames with different
llid, which would be IEs with length 8.Signed-off-by: Bob Copeland
Signed-off-by: Johannes Berg -
The iniator is already available to us, so use it.
Signed-off-by: Luis R. Rodriguez
Signed-off-by: Johannes Berg -
wiphy_apply_custom_regulatory() implies WIPHY_FLAG_CUSTOM_REGULATORY
but we never enforced it, do that now and warn if the driver
didn't set it. All drivers should be following this today already.Having WIPHY_FLAG_CUSTOM_REGULATORY does not however mean you will
use wiphy_apply_custom_regulatory() though, you may have your own
_orig value set up tools / helpers. The intel drivers are examples
of this type of driver.Signed-off-by: Luis R. Rodriguez
Signed-off-by: Johannes Berg -
Check chandef we get in CAC request is usable for CAC.
All channels have to be DFS channels. Allow DFS_USABLE
and DFS_AVAILABLE channels mix. At least one channel
has to be DFS_USABLE (require CAC).Signed-off-by: Janusz Dziedzic
Reviewed-by: Luis R. Rodriguez
Signed-off-by: Johannes Berg -
Add helper fuctions for start/end freq.
Signed-off-by: Janusz Dziedzic
Reviewed-by: Luis R. Rodriguez
Signed-off-by: Johannes Berg -
Add 160MHz width support. This could be
usefull for testing VHT160 DFS functionality.
This could be also usefull in the future when
DFS and non-DFS channels could be mixed.Signed-off-by: Janusz Dziedzic
Signed-off-by: Johannes Berg -
Add iface combination that will allow DFS
support. Add also debugfs dfs_simulate_radar
file that can be used to simulate radar event.
This could be useful for mac80211/cfg80211/
regulatory/hostap code testing without real HW.Signed-off-by: Janusz Dziedzic
Signed-off-by: Johannes Berg -
Use debugfs_remove_recursive. That avoids the need
for the new dentry pointers and extra debugfs_remove
calls.Signed-off-by: Janusz Dziedzic
Signed-off-by: Johannes Berg -
Currently, frames that go into the reordering buffer are stored at
index ieee80211_sn_sub(sn, tid_rx->ssn) % tid_rx->buf_size.The offset calculation to the starting sequence number (SSN) is
useless and just adds overhead so simply use sn % tid_rx->buf_size.This means the reordering buffer will start to be filled somewhere
in the middle (at SSN % buf_size) and continue to get used from
there, but there's no reason to start from the beginning.Signed-off-by: Karl Beldan
[rewrite commit message]
Signed-off-by: Johannes Berg -
These two flags are used for the same purpose, just
combine them into a no-ir flag to annotate no initiating
radiation is allowed.Old userspace sending either flag will have it treated as
the no-ir flag. To be considerate to older userspace we
also send both the no-ir flag and the old no-ibss flags.
Newer userspace will have to be aware of older kernels.Update all places in the tree using these flags with the
following semantic patch:@@
@@
-NL80211_RRF_PASSIVE_SCAN
+NL80211_RRF_NO_IR
@@
@@
-NL80211_RRF_NO_IBSS
+NL80211_RRF_NO_IR
@@
@@
-IEEE80211_CHAN_PASSIVE_SCAN
+IEEE80211_CHAN_NO_IR
@@
@@
-IEEE80211_CHAN_NO_IBSS
+IEEE80211_CHAN_NO_IR
@@
@@
-NL80211_RRF_NO_IR | NL80211_RRF_NO_IR
+NL80211_RRF_NO_IR
@@
@@
-IEEE80211_CHAN_NO_IR | IEEE80211_CHAN_NO_IR
+IEEE80211_CHAN_NO_IR
@@
@@
-(NL80211_RRF_NO_IR)
+NL80211_RRF_NO_IR
@@
@@
-(IEEE80211_CHAN_NO_IR)
+IEEE80211_CHAN_NO_IRAlong with some hand-optimisations in documentation, to
remove duplicates and to fix some indentation.Signed-off-by: Luis R. Rodriguez
[do all the driver updates in one go]
Signed-off-by: Johannes Berg -
This command has different semantics depending on the action code sent.
Document this fact and detail the supported action codes.Signed-off-by: Arik Nemtsov
Signed-off-by: Johannes Berg
06 Nov, 2013
6 commits
-
…etooth/bluetooth-next
-
Conflicts:
net/wireless/reg.c
05 Nov, 2013
1 commit
-
Conflicts:
drivers/net/wireless/iwlwifi/pcie/drv.c
31 Oct, 2013
1 commit
-
Putting the context id of the primary phy context in
the placeholder of the secondary is obviously a bad
idea.
Spotted by smatch.Fixes: dac94da8dba3 ("iwlwifi: mvm: new BT Coex API")
Reviewed-by: Johannes Berg
Signed-off-by: Emmanuel Grumbach
30 Oct, 2013
1 commit
-
Reported by "make includecheck"
Tested that the corresponding sources still compile well on x86
Signed-off-by: Michael Opdenacker
Signed-off-by: Emmanuel Grumbach