android_kernel_xiaomi_sm8350/core/dp
Jianmin Zhu 61409803d7 qcacld-3.0: Avoid Rome mgmt nbuf double unmap during SSR
Rome supports mgmt Tx via HTT interface, not via WMI.

When mgmt frame is sent, 2 tx desc is allocated:
mgmt_txrx_desc is allocated in wlan_mgmt_txrx_mgmt_frame_tx,
ol_tx_desc is allocated in ol_txrx_mgmt_send_ext.
They point to same net buffer.
net buffer is mapped in htt_tx_desc_init.

When SSR during Rome STA connected, deauth frame is sent,
but no tx complete since firmware hung already.
Pending mgmt frames are unmapped and freed when destroy vdev.

hdd_reset_all_adapters->hdd_stop_adapter->hdd_vdev_destroy
->wma_handle_vdev_detach->wlan_mgmt_txrx_vdev_drain
->wma_mgmt_frame_fill_peer_cb
->mgmt_txrx_tx_completion_handler.

Don't need unmap and free net buffer of mgmt frames again during
data path clean up, just free ol_tx_desc.
hdd_wlan_stop_modules->cds_post_disable->cdp_pdev_pre_detach
->ol_txrx_pdev_pre_detach->ol_tx_free_descs_inuse.

Change-Id: I2fc658e833cf013bf7048c6bec90d9b247566444
CRs-Fixed: 2694854
2020-06-18 23:21:52 -07:00
..
htt qcacld-3.0: Add update_seq_num flag to htt_rx_mpdu_desc_seq_num 2020-05-15 06:55:57 -07:00
ol/inc qcacld-3.0: Add update_seq_num flag to htt_rx_mpdu_desc_seq_num 2020-05-15 06:55:57 -07:00
txrx qcacld-3.0: Avoid Rome mgmt nbuf double unmap during SSR 2020-06-18 23:21:52 -07:00
txrx3.0 qcacld-3.0: flush batched GRO_NORMAL packets 2020-06-14 22:14:05 -07:00