wifi: ath11k: suppress add interface error
authorKarthikeyan Periyasamy <quic_periyasa@quicinc.com>
Thu, 6 Oct 2022 00:58:42 +0000 (06:28 +0530)
committerKalle Valo <quic_kvalo@quicinc.com>
Wed, 12 Oct 2022 06:40:38 +0000 (09:40 +0300)
In the VIF (other than monitor type) creation request, we should not
throw the error code when the monitor VIF creation fails, since the
actual VIF creation succeeds. If we throw the error code from driver
then the actual VIF creation get fail. So suppress the monitor VIF
creation error by throwing warning message instead of error code.

Tested-on: QCN9074 hw1.0 PCI WLAN.HK.2.6.0.1-00760-QCAHKSWPL_SILICONZ-1

Signed-off-by: Karthikeyan Periyasamy <quic_periyasa@quicinc.com>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/20221006005842.8599-1-quic_periyasa@quicinc.com
drivers/net/wireless/ath/ath11k/mac.c

index 4b86769..b37803d 100644 (file)
@@ -6420,18 +6420,16 @@ static int ath11k_mac_op_add_interface(struct ieee80211_hw *hw,
 
        ath11k_dp_vdev_tx_attach(ar, arvif);
 
+       ath11k_debugfs_add_interface(arvif);
+
        if (vif->type != NL80211_IFTYPE_MONITOR &&
            test_bit(ATH11K_FLAG_MONITOR_CONF_ENABLED, &ar->monitor_flags)) {
                ret = ath11k_mac_monitor_vdev_create(ar);
-               if (ret) {
+               if (ret)
                        ath11k_warn(ar->ab, "failed to create monitor vdev during add interface: %d",
                                    ret);
-                       goto err_peer_del;
-               }
        }
 
-       ath11k_debugfs_add_interface(arvif);
-
        mutex_unlock(&ar->conf_mutex);
 
        return 0;
@@ -6456,7 +6454,6 @@ err_vdev_del:
        spin_unlock_bh(&ar->data_lock);
 
 err:
-       ath11k_debugfs_remove_interface(arvif);
        mutex_unlock(&ar->conf_mutex);
 
        return ret;