Message ID | 20240429081525.983-3-quic_kangyang@quicinc.com |
---|---|
State | New |
Headers | show |
Series | prepare work for monitor mode on WCN7850 | expand |
On 4/29/2024 1:15 AM, kangyang wrote: > From: Kang Yang <quic_kangyang@quicinc.com> > > ath12k_mac_op_unassign_vif_chanctx() will do vdev stop in > ath12k_mac_monitor_stop(). This ath12k_mac_vdev_stop() will do vdev stop s/This/Then/? Kalle can fix this in the pending branch > again, then might trigger firmware crash. > > So add judgement to avoid duplicated vdev stop. > > Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3 > > Fixes: c9e4e41e71ff ("wifi: ath12k: move peer delete after vdev stop of station for WCN7850") > Signed-off-by: Kang Yang <quic_kangyang@quicinc.com> Acked-by: Jeff Johnson <quic_jjohnson@quicinc.com>
diff --git a/drivers/net/wireless/ath/ath12k/mac.c b/drivers/net/wireless/ath/ath12k/mac.c index 3e9a7dec7eba..4f553f2a7165 100644 --- a/drivers/net/wireless/ath/ath12k/mac.c +++ b/drivers/net/wireless/ath/ath12k/mac.c @@ -7369,7 +7369,8 @@ ath12k_mac_op_unassign_vif_chanctx(struct ieee80211_hw *hw, arvif->is_started = false; } - if (arvif->vdev_type != WMI_VDEV_TYPE_STA) { + if (arvif->vdev_type != WMI_VDEV_TYPE_STA && + arvif->vdev_type != WMI_VDEV_TYPE_MONITOR) { ath12k_bss_disassoc(ar, arvif); ret = ath12k_mac_vdev_stop(arvif); if (ret)