1. 08 Jan, 2015 10 commits
    • Johannes Berg's avatar
      nl80211: support per-TID station statistics · 6de39808
      Johannes Berg authored
      The base for the current statistics is pretty mixed up, support
      exporting RX/TX statistics for MSDUs per TID. This (currently)
      covers received MSDUs, transmitted MSDUs and retries/failures
      thereof.
      
      Doing it per TID for MSDUs makes more sense than say only per AC
      because it's symmetric - we could export per-AC statistics for all
      frames (which AC we used for transmission can be determined also
      for management frames) but per TID is better and usually data
      frames are really the ones we care about. Also, on RX we can't
      determine the AC - but we do know the TID for any QoS MPDU we
      received.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      6de39808
    • Johannes Berg's avatar
      nl80211: clarify packet statistics descriptions · 8d791361
      Johannes Berg authored
      The current statistics we keep aren't very clear, some are on
      MPDUs and some on MSDUs/MMPDUs. Clarify the descriptions based
      on the counters mac80211 keeps.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      8d791361
    • Johannes Berg's avatar
      cfg80211: add nl80211 beacon-only statistics · a76b1942
      Johannes Berg authored
      Add these two values:
       * BEACON_RX: number of beacons received from this peer
       * BEACON_SIGNAL_AVG: signal strength average for beacons only
      
      These can then be used for Android Lollipop's statistics request.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      a76b1942
    • Johannes Berg's avatar
      cfg80211: remove enum station_info_flags · 319090bf
      Johannes Berg authored
      This is really just duplicating the list of information that's
      already available in the nl80211 attribute, so remove the list.
      Two small changes are needed:
       * remove STATION_INFO_ASSOC_REQ_IES complete, but the length
         (assoc_req_ies_len) can be used instead
       * add NL80211_STA_INFO_RX_DROP_MISC which exists internally
         but not in nl80211 yet
      
      This gets rid of the duplicate maintenance of the two lists.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      319090bf
    • Johannes Berg's avatar
      mac80211: allow drivers to provide most station statistics · 2b9a7e1b
      Johannes Berg authored
      In many cases, drivers can filter things like beacons that will
      skew statistics reported by mac80211. To get correct statistics
      in these cases, call drivers to obtain statistics and let them
      override all values, filling values from mac80211 if the driver
      didn't provide them. Not all of them make sense for the driver
      to fill, so some are still always done by mac80211.
      
      Note that this doesn't currently allow a driver to say "I know
      this value is wrong, don't report it at all", or to sum it up
      with a mac80211 value (as could be useful for "dropped misc"),
      that can be added if it turns out to be needed.
      
      This also gets rid of the get_rssi() method as is can now be
      implemented using sta_statistics().
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      2b9a7e1b
    • Johannes Berg's avatar
      mac80211: send statistics with delete station event · 6f7a8d26
      Johannes Berg authored
      Use the new cfg80211_del_sta_sinfo() function to send the
      statistics about the deleted station with the delete event.
      This lets userspace see how much traffic etc. the deleted
      station used.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      6f7a8d26
    • Johannes Berg's avatar
      cfg80211: allow including station info in delete event · cf5ead82
      Johannes Berg authored
      When a station is removed, its statistics may be interesting to
      userspace, for example for further aggregation of statistics of
      all stations that ever connected to an AP.
      
      Introduce a new cfg80211_del_sta_sinfo() function (and make the
      cfg80211_del_sta() a static inline calling it) to allow passing
      a struct station_info along with this, and send the data in the
      nl80211 event message.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      cf5ead82
    • Johannes Berg's avatar
      cfg80211: add scan time to survey data · 052536ab
      Johannes Berg authored
      Add the time spent scanning to the survey data so it can be
      reported by drivers that collect such information.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      052536ab
    • Johannes Berg's avatar
      cfg80211: allow survey data to return global data · 11f78ac3
      Johannes Berg authored
      Not all devices are able to report survey data (particularly
      time spent for various operations) per channel. As all these
      statistics already exist in survey data, allow such devices
      to report them (if userspace requested it)
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      11f78ac3
    • Johannes Berg's avatar
      cfg80211: remove "channel" from survey names · 4ed20beb
      Johannes Berg authored
      All of the survey data is (currently) per channel anyway,
      so having the word "channel" in the name does nothing. In
      the next patch I'll introduce global data to the survey,
      where the word "channel" is actually confusing.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      4ed20beb
  2. 07 Jan, 2015 2 commits
    • Ido Yariv's avatar
      mac80211: Re-fix accounting of the tailroom-needed counter · db12847c
      Ido Yariv authored
      When hw acceleration is enabled, the GENERATE_IV or PUT_IV_SPACE flags
      only require headroom space. Therefore, the tailroom-needed counter can
      safely be decremented for most drivers.
      
      The older incarnation of this patch (ca34e3b5) assumed that the above
      holds true for all drivers. As reported by Christopher Chavez and
      researched by Christian Lamparter and Larry Finger, this isn't a valid
      assumption for p54 and cw1200.
      
      Drivers that still require tailroom for ICV/MIC even when HW encryption
      is enabled can use IEEE80211_KEY_FLAG_RESERVE_TAILROOM to indicate it.
      Signed-off-by: default avatarIdo Yariv <idox.yariv@intel.com>
      Cc: Christopher Chavez <chrischavez@gmx.us>
      Cc: Christian Lamparter <chunkeey@googlemail.com>
      Cc: Larry Finger <Larry.Finger@lwfinger.net>
      Cc: Solomon Peachy <pizza@shaftnet.org>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      db12847c
    • Johannes Berg's avatar
      Merge branch 'mac80211' into mac80211-next · 3a4b0c94
      Johannes Berg authored
      Merge mac80211.git to get some changes that would otherwise
      cause conflicts with new changes coming here.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      3a4b0c94
  3. 06 Jan, 2015 3 commits
  4. 05 Jan, 2015 2 commits
  5. 23 Dec, 2014 1 commit
  6. 22 Dec, 2014 1 commit
  7. 19 Dec, 2014 1 commit
  8. 18 Dec, 2014 3 commits
  9. 17 Dec, 2014 13 commits
  10. 15 Dec, 2014 2 commits
  11. 12 Dec, 2014 2 commits