فهرست منبع

qcacmn: Fix data stall after roam from mlo to legacy

When roam from mlo to slo/legacy/owe, mlo_cleanup_link is called to
disconnect link vdev, mlme_cm_osif_disconnect_start_ind is called,
WLAN_STOP_ALL_NETIF_QUEUE_N_CARRIER is sent, then Tx queue is disabled,
all tx pkts can't be sent.

To fix it, when disconnect link vdev for roaming to slo/legacy/owe,
don't send WLAN_STOP_ALL_NETIF_QUEUE_N_CARRIER by checking special req
source CM_MLO_ROAM_INTERNAL_DISCONNECT.

Change-Id: Iacfc2f82069b2c21951af97c23c60ea99865a80d
CRs-Fixed: 3600747
Jianmin Zhu 1 سال پیش
والد
کامیت
63ab6adb20
1فایلهای تغییر یافته به همراه2 افزوده شده و 1 حذف شده
  1. 2 1
      os_if/linux/mlme/src/osif_cm_util.c

+ 2 - 1
os_if/linux/mlme/src/osif_cm_util.c

@@ -461,7 +461,8 @@ static QDF_STATUS osif_cm_disconnect_start_cb(struct wlan_objmgr_vdev *vdev,
 					      enum wlan_cm_source source)
 {
 	/* Don't stop netif queues for link switch disconnect */
-	if (source == CM_MLO_LINK_SWITCH_DISCONNECT)
+	if (source == CM_MLO_LINK_SWITCH_DISCONNECT ||
+	    source == CM_MLO_ROAM_INTERNAL_DISCONNECT)
 		return QDF_STATUS_SUCCESS;
 
 	/* Disable netif queue on disconnect start */