瀏覽代碼

qcacmn: Move dp_rx_vdev_detach out of vdev list spin_lock protection

No need to protect with vdev list spin lock for dp_rx_vdev_detach and
which might wait event from dp rx thread when doing the RX GRO flash.
Do the same for dp_tx_vdev_detach.

Change-Id: I8f191ed62a174a9a88999c36d47ef18f39e8bd82
CRs-Fixed: 2600680
Tiger Yu 5 年之前
父節點
當前提交
685e960433
共有 1 個文件被更改,包括 3 次插入2 次删除
  1. 3 2
      dp/wifi3.0/dp_main.c

+ 3 - 2
dp/wifi3.0/dp_main.c

@@ -5264,12 +5264,13 @@ static QDF_STATUS dp_vdev_detach_wifi3(struct cdp_soc_t *cdp_soc,
 	qdf_spin_unlock_bh(&pdev->neighbour_peer_mutex);
 
 	qdf_spin_lock_bh(&pdev->vdev_list_lock);
-	dp_tx_vdev_detach(vdev);
-	dp_rx_vdev_detach(vdev);
 	/* remove the vdev from its parent pdev's list */
 	TAILQ_REMOVE(&pdev->vdev_list, vdev, vdev_list_elem);
 	qdf_spin_unlock_bh(&pdev->vdev_list_lock);
 
+	dp_tx_vdev_detach(vdev);
+	dp_rx_vdev_detach(vdev);
+
 free_vdev:
 	if (wlan_op_mode_monitor == vdev->opmode)
 		pdev->monitor_vdev = NULL;