1. 10 May, 2016 36 commits
  2. 04 May, 2016 1 commit
    • Emmanuel Grumbach's avatar
      iwlwifi: mvm: don't override the rate with the AMSDU len · 5c08b0f5
      Emmanuel Grumbach authored
      The TSO code creates A-MSDUs from a single large send. Each
      A-MSDU is an skb and skb->len doesn't include the number of
      bytes which need to be added for the headers being added
      (subframe header, TCP header, IP header, SNAP, padding).
      
      To be able to set the right value in the Tx command, we
      put the number of bytes added by those headers in
      driver_data in iwl_mvm_tx_tso and use this value in
      iwl_mvm_set_tx_cmd.
      
      The problem by setting this value in driver_data is that
      it overrides the ieee80211_tx_info. The bug manifested
      itself when we send P2P related frames in CCK since the
      rate in ieee80211_tx_info is zero-ed. This of course is
      a violation of the P2P specification.
      
      To fix this, copy the original ieee80211_tx_info to the
      stack and pass it to the functions which need it.
      Assign the number of bytes added by the headers to the
      driver_data inside the skb itself.
      
      Fixes: a6d5e32f ("iwlwifi: mvm: send large SKBs to the transport")
      Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      5c08b0f5
  3. 12 Apr, 2016 3 commits
    • Johannes Berg's avatar
      cfg80211: remove enum ieee80211_band · 57fbcce3
      Johannes Berg authored
      This enum is already perfectly aliased to enum nl80211_band, and
      the only reason for it is that we get IEEE80211_NUM_BANDS out of
      it. There's no really good reason to not declare the number of
      bands in nl80211 though, so do that and remove the cfg80211 one.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      57fbcce3
    • Jouni Malinen's avatar
      cfg80211: Improve Connect/Associate command documentation · 35eb8f7b
      Jouni Malinen authored
      The roaming cases for the Connect command were not fully covered and
      neither Connect nor Associate command uses of the prev_bssid parameter
      were very clear. Add details to describe how the prev_bssid argument is
      supposed to be used and when the driver should use association or
      reassociation.
      Signed-off-by: default avatarJouni Malinen <jouni@qca.qualcomm.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      35eb8f7b
    • Matti Gottlieb's avatar
      iwlwifi: mvm: fix accessing Null pointer during fw dump collection · f742aaf3
      Matti Gottlieb authored
      The firwmare file can come with data that is relevant for paging. This
      data is availablet to the firmware upon request, but it stored in the
      host's memory. During the firmware init flow, the driver configures the
      firmware so that the firwmare knows where is the data.
      When paging is used, the variable paging_mem_size is the number of bytes
      that are available through paging. This variable is not zeror-ed if the
      driver fails to configure the paging in the firmware, but the memory is
      freed which is inconsistent.
      This inconsistency led to a NULL pointer dereference in the code that
      collects the debug data.
      
      Fix this by zero-ing the paging_mem_size variable and NULLify the
      relevant pointers, so that the code that collects the debug data will
      know that the paging data is not available.
      Signed-off-by: default avatarMatti Gottlieb <matti.gottlieb@intel.com>
      Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      f742aaf3