From: Antonio Quartulli <antonio@xxxxxxxxxxxxx> When performing keys reprogramming on HW resume, GTKs belonging to IBSS stations should be skipped and not installed onto the device. Such keys are not installed by set_key() and the same behaviour has to be kept on reprogramming (mac80211 is already performing enc/dec in SW for those keys). Signed-off-by: Antonio Quartulli <antonio@xxxxxxxxxxxxx> --- * compiled tested only * drivers/net/wireless/iwlwifi/dvm/lib.c | 5 +++++ drivers/net/wireless/iwlwifi/mvm/d3.c | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/drivers/net/wireless/iwlwifi/dvm/lib.c b/drivers/net/wireless/iwlwifi/dvm/lib.c index 3d5bdc4..96be24d 100644 --- a/drivers/net/wireless/iwlwifi/dvm/lib.c +++ b/drivers/net/wireless/iwlwifi/dvm/lib.c @@ -929,6 +929,11 @@ static void iwlagn_wowlan_program_keys(struct ieee80211_hw *hw, u16 p1k[IWLAGN_P1K_SIZE]; int ret, i; + /* Group keys for IBSS interfaces are not stored in HW */ + if (vif->type == NL80211_IFTYPE_ADHOC && + !(key->flags & IEEE80211_KEY_FLAG_PAIRWISE)) + return; + mutex_lock(&priv->mutex); if ((key->cipher == WLAN_CIPHER_SUITE_WEP40 || diff --git a/drivers/net/wireless/iwlwifi/mvm/d3.c b/drivers/net/wireless/iwlwifi/mvm/d3.c index 6f45966..53182e6 100644 --- a/drivers/net/wireless/iwlwifi/mvm/d3.c +++ b/drivers/net/wireless/iwlwifi/mvm/d3.c @@ -156,6 +156,11 @@ static void iwl_mvm_wowlan_program_keys(struct ieee80211_hw *hw, u16 p1k[IWL_P1K_SIZE]; int ret, i; + /* Group keys for IBSS interfaces are not stored in HW */ + if (vif->type == NL80211_IFTYPE_ADHOC && + !(key->flags & IEEE80211_KEY_FLAG_PAIRWISE)) + return; + mutex_lock(&mvm->mutex); switch (key->cipher) { -- 1.8.4.4 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html