public inbox for linux-wireless@vger.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH v1 0/3] mac80211: beacon filtering
@ 2009-02-23 16:37 Kalle Valo
  2009-02-23 16:37 ` [RFC PATCH v1 1/3] mac80211: decrease execution of the associated timer Kalle Valo
                   ` (3 more replies)
  0 siblings, 4 replies; 26+ messages in thread
From: Kalle Valo @ 2009-02-23 16:37 UTC (permalink / raw)
  To: linux-wireless; +Cc: Johannes Berg

Here's my suggestion how to implement beacon filtering in mac80211.
The basic idea is simple, the driver enables filtering is whenever
mac80211 enables power save. Driver calls ieee80211_beacon_loss()
whenever hardware informs about beacon loss.

I have tested this with stlc45xx and based on simple tests this seems
to work. For reference I'll send stlc45xx patch as a followup.

TODO: 

o API documentation
o test with different hardwares (without beacon filtering) to 
  avoid regressions

---

Kalle Valo (3):
      mac80211: add beacon filtering support
      mac80211: track beacons separately from the rx path activity
      mac80211: decrease execution of the associated timer


 include/net/mac80211.h     |    2 +
 net/mac80211/ieee80211_i.h |    4 ++
 net/mac80211/iface.c       |    3 +
 net/mac80211/mlme.c        |  114 ++++++++++++++++++++++++++++++++------------
 net/mac80211/rx.c          |    9 +++
 5 files changed, 99 insertions(+), 33 deletions(-)


^ permalink raw reply	[flat|nested] 26+ messages in thread
* [PATCH v4 0/5] mac80211: beacon filtering
@ 2009-03-22 19:56 Kalle Valo
  2009-03-22 20:02 ` [PATCH] stlc45xx: add beacon filtering support Kalle Valo
  0 siblings, 1 reply; 26+ messages in thread
From: Kalle Valo @ 2009-03-22 19:56 UTC (permalink / raw)
  To: John W. Linville
  Cc: Johannes Berg, Jouni Malinen, Luis R. Rodriguez, linux-wireless

Here's my proposal how to implement beacon filtering in mac80211. The
basic idea is simple, the driver enables filtering whenever mac80211
enables power save and the driver calls ieee80211_beacon_loss()
whenever hardware informs about beacon loss.

I have tested this with stlc45xx (with beacon filtering) and iwl3945
(without beacon filtering) and based on simple tests this seems to
work. For reference I'll send the stlc45xx patch as a followup.

v4:

o remove hw parameter from ieee80211_beacon_loss()
o don't call the patchset RFC anymore

v3:
o rebase to 2.6.29-rc8-wl
o add cfg80211_hold_bss() and cfg80211_unhold_bss() to avoid loosing
  the bss struct when beacon filter is enabled
o fix bug to use !IEEE80211_HW_PS_NULLFUNC_STACK both in
  ieee80211_scan_ps_enable() and ieee80211_scan_ps_disable(), also
  improve comments
o fix the indentation in ieee80211_associated(), not visible in patch
  anymore:

    mod_timer(&ifmgd->timer, jiffies +
    -				      IEEE80211_MONITORING_INTERVAL);
    +			  IEEE80211_MONITORING_INTERVAL);

o add vif parameter to void ieee80211_beacon_loss()
o more documentation about filtering, and especially about
  checksumming
o document why multicast check is needed in ieee80211_sta_rx_notify()
o beacon filter is only enabled when power save is enabled, take this
  into account in ieee80211_associated()

v2:
o rebase to 2.6.29-rc7-wl
o rename ieee80211_rx_trigger() to ieee80211_sta_rx_notify()
o move check for sta mode in ieee80211_sta_rx_notify() to rx.c
o move unicast check from rx.c to ieee80211_sta_rx_notify()
o add comment for setting last_beacon in ieee80211_rx_mgmt_assoc_resp()
o rename IEEE80211_HW_BEACON_FILTERING to IEEE80211_HW_BEACON_FILTER
o send probe request from ieee80211_beacon_loss_work()
o API documentation
o enable beacon filtering only when power save is enabled
o disable power save (and hence beacon filtering) while scanning to make 
  it possible to have reliable scan results even when beacon filtering
  is enabled

TODO: 

(none)

For the future:

o configuration for beacon filter (beacon misses * beacon interval
  should be constant?)
o don't run ieee80211_associated() in data idle period

---

Kalle Valo (5):
      mac80211: add beacon filtering support
      cfg80211: add feature to hold bss
      mac80211: disable power save when scanning
      mac80211: track beacons separately from the rx path activity
      mac80211: decrease execution of the associated timer


 Documentation/DocBook/mac80211.tmpl |    6 ++
 include/net/cfg80211.h              |   18 +++++
 include/net/mac80211.h              |   45 ++++++++++-
 net/mac80211/ieee80211_i.h          |    5 +
 net/mac80211/iface.c                |    3 +
 net/mac80211/mlme.c                 |  139 +++++++++++++++++++++++++++--------
 net/mac80211/rx.c                   |    9 ++
 net/mac80211/scan.c                 |   64 ++++++++++++++++
 net/wireless/core.h                 |    2 +
 net/wireless/scan.c                 |   27 +++++++
 10 files changed, 278 insertions(+), 40 deletions(-)


^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2009-03-22 20:02 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-02-23 16:37 [RFC PATCH v1 0/3] mac80211: beacon filtering Kalle Valo
2009-02-23 16:37 ` [RFC PATCH v1 1/3] mac80211: decrease execution of the associated timer Kalle Valo
2009-02-24  2:13   ` Johannes Berg
2009-02-24 18:40     ` Kalle Valo
2009-02-23 16:37 ` [RFC PATCH v1 2/3] mac80211: track beacons separately from the rx path activity Kalle Valo
2009-02-24  2:15   ` Johannes Berg
2009-02-24 18:52     ` Kalle Valo
2009-02-23 16:37 ` [RFC PATCH v1 3/3] mac80211: add beacon filtering support Kalle Valo
2009-02-23 17:47   ` Luis R. Rodriguez
2009-02-23 19:06     ` Kalle Valo
2009-02-23 19:11       ` Luis R. Rodriguez
2009-02-23 19:31         ` Kalle Valo
2009-02-23 19:58           ` Luis R. Rodriguez
2009-02-24  4:46           ` Luis R. Rodriguez
2009-02-24  5:17             ` Johannes Berg
2009-02-24  8:58             ` Jouni Malinen
2009-02-24  2:18       ` Johannes Berg
2009-02-24 20:34         ` Kalle Valo
2009-02-24  2:20   ` Johannes Berg
2009-02-24  9:01     ` Jouni Malinen
2009-02-24 18:36       ` Kalle Valo
2009-02-24 18:43         ` Jouni Malinen
2009-02-24 19:02           ` Kalle Valo
2009-02-24 18:30     ` Kalle Valo
2009-02-23 17:15 ` [PATCH] stlc45xx: " Kalle Valo
  -- strict thread matches above, loose matches on Subject: below --
2009-03-22 19:56 [PATCH v4 0/5] mac80211: beacon filtering Kalle Valo
2009-03-22 20:02 ` [PATCH] stlc45xx: add beacon filtering support Kalle Valo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox