if (iwlagn_mod_params.sw_crypto)
                return;
 
+       IWL_DEBUG_MAC80211(priv, "enter\n");
        mutex_lock(&priv->shrd->mutex);
 
        if (priv->contexts[IWL_RXON_CTX_BSS].vif != vif)
 
  out:
        mutex_unlock(&priv->shrd->mutex);
+       IWL_DEBUG_MAC80211(priv, "leave\n");
 }
 
 struct wowlan_key_data {
        if (WARN_ON(!wowlan))
                return -EINVAL;
 
+       IWL_DEBUG_MAC80211(priv, "enter\n");
        mutex_lock(&priv->shrd->mutex);
 
        /* Don't attempt WoWLAN when not associated, tear down instead. */
  out:
        mutex_unlock(&priv->shrd->mutex);
        kfree(key_data.rsc_tsc);
+       IWL_DEBUG_MAC80211(priv, "leave\n");
+
        return ret;
 }
 
        u32 base, status = 0xffffffff;
        int ret = -EIO;
 
+       IWL_DEBUG_MAC80211(priv, "enter\n");
        mutex_lock(&priv->shrd->mutex);
 
        iwl_write32(bus(priv), CSR_UCODE_DRV_GP1_CLR,
        iwlagn_set_rxon_chain(priv, ctx);
 
        mutex_unlock(&priv->shrd->mutex);
+       IWL_DEBUG_MAC80211(priv, "leave\n");
 
        ieee80211_resume_disconnect(vif);
 
        if (!(priv->cfg->sku & EEPROM_SKU_CAP_11N_ENABLE))
                return -EACCES;
 
+       IWL_DEBUG_MAC80211(priv, "enter\n");
        mutex_lock(&priv->shrd->mutex);
 
        switch (action) {
                break;
        }
        mutex_unlock(&priv->shrd->mutex);
-
+       IWL_DEBUG_MAC80211(priv, "leave\n");
        return ret;
 }
 
        struct iwl_station_priv *sta_priv = (void *)sta->drv_priv;
        struct iwl_vif_priv *vif_priv = (void *)vif->drv_priv;
        bool is_ap = vif->type == NL80211_IFTYPE_STATION;
-       int ret;
+       int ret = 0;
        u8 sta_id;
 
-       IWL_DEBUG_INFO(priv, "received request to add station %pM\n",
+       IWL_DEBUG_MAC80211(priv, "received request to add station %pM\n",
                        sta->addr);
        mutex_lock(&priv->shrd->mutex);
        IWL_DEBUG_INFO(priv, "proceeding to add station %pM\n",
                IWL_ERR(priv, "Unable to add station %pM (%d)\n",
                        sta->addr, ret);
                /* Should we return success if return code is EEXIST ? */
-               mutex_unlock(&priv->shrd->mutex);
-               return ret;
+               goto out;
        }
 
        sta_priv->sta_id = sta_id;
        IWL_DEBUG_INFO(priv, "Initializing rate scaling for station %pM\n",
                       sta->addr);
        iwl_rs_rate_init(priv, sta, sta_id);
+ out:
        mutex_unlock(&priv->shrd->mutex);
+       IWL_DEBUG_MAC80211(priv, "leave\n");
 
-       return 0;
+       return ret;
 }
 
 static void iwlagn_mac_channel_switch(struct ieee80211_hw *hw,
        if (!(ctx->interface_modes & BIT(NL80211_IFTYPE_P2P_CLIENT)))
                return -EOPNOTSUPP;
 
+       IWL_DEBUG_MAC80211(priv, "enter\n");
        mutex_lock(&priv->shrd->mutex);
 
        if (test_bit(STATUS_SCAN_HW, &priv->shrd->status)) {
 
  out:
        mutex_unlock(&priv->shrd->mutex);
+       IWL_DEBUG_MAC80211(priv, "leave\n");
 
        return err;
 }
        if (!(priv->shrd->valid_contexts & BIT(IWL_RXON_CTX_PAN)))
                return -EOPNOTSUPP;
 
+       IWL_DEBUG_MAC80211(priv, "enter\n");
        mutex_lock(&priv->shrd->mutex);
        iwl_scan_cancel_timeout(priv, priv->hw_roc_duration);
        iwlagn_disable_roc(priv);
        mutex_unlock(&priv->shrd->mutex);
+       IWL_DEBUG_MAC80211(priv, "leave\n");
 
        return 0;
 }
        int ret;
        u8 sta_id;
 
+       IWL_DEBUG_MAC80211(priv, "enter\n");
        mutex_lock(&priv->shrd->mutex);
 
        if (iwl_is_associated_ctx(ctx)) {
        iwl_remove_station(priv, sta_id, bssid);
  out:
        mutex_unlock(&priv->shrd->mutex);
+       IWL_DEBUG_MAC80211(priv, "leave\n");
+
        return ret;
 }
 
        struct iwl_vif_priv *vif_priv = (void *)vif->drv_priv;
        struct iwl_rxon_context *ctx = vif_priv->ctx;
 
+       IWL_DEBUG_MAC80211(priv, "enter\n");
        mutex_lock(&priv->shrd->mutex);
 
        if (iwl_is_associated_ctx(ctx))
        /* no need to commit */
  out:
        mutex_unlock(&priv->shrd->mutex);
+       IWL_DEBUG_MAC80211(priv, "leave\n");
 }
 
 /*****************************************************************************
 {
        struct iwl_priv *priv = hw->priv;
 
+       IWL_DEBUG_MAC80211(priv, "enter\n");
        mutex_lock(&priv->shrd->mutex);
 
        if (priv->cfg->bt_params &&
        }
 
        mutex_unlock(&priv->shrd->mutex);
+       IWL_DEBUG_MAC80211(priv, "leave\n");
 }
 
 static int iwl_mac_set_tim(struct ieee80211_hw *hw,