Ramya Gnanasekar <quic_rgnanase@xxxxxxxxxxx> wrote: > Transmission of management packets are done in a work queue. Sometimes > the workqueue does not finish Tx immediately, then it lead after the next > step of vdev delete finished, it start to send the management packet to > firmware and lead firmware crash. > > ieee80211_set_disassoc() have logic of ieee80211_flush_queues() after > it send_deauth_disassoc() to ath12k, its purpose is make sure the > deauth was actually sent, so it need to change ath12k to match the > purpose of mac80211. > > To address these issues wait for Tx management as well as Tx data packets. > > Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.0.1-00029-QCAHKSWPL_SILICONZ-1 > > Signed-off-by: Karthik M <quic_karm@xxxxxxxxxxx> > Signed-off-by: Ramya Gnanasekar <quic_rgnanase@xxxxxxxxxxx> > Signed-off-by: Kalle Valo <quic_kvalo@xxxxxxxxxxx> Patch applied to ath-next branch of ath.git, thanks. 5189a8dba849 wifi: ath12k: add wait operation for tx management packets for flush from mac80211 -- https://patchwork.kernel.org/project/linux-wireless/patch/20230419095738.19859-1-quic_rgnanase@xxxxxxxxxxx/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches