From ae01803cfd22735fe949e07acd73aeb6b1f433cc Mon Sep 17 00:00:00 2001 From: Santosh Anbu Date: Tue, 19 Sep 2023 11:39:28 +0530 Subject: [PATCH] qcacmn: Clear up bmap for vdev moving to UP_ACTIVE state During MLO AP vdev partner bringup, SYNC_COMPL can be posted for a vdev twice since the bitmap is not cleared after posting the event. But is cleared only when the vdev exits the sync_wait state. Hence add change to clear the bitmap before posting the event so so that no other partner vdev will post the same event once again. Change-Id: I15226b650e4dc51a379d97556f2f2ab62319adf7 CRs-Fixed: 3605598 --- umac/mlo_mgr/src/wlan_mlo_mgr_ap.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/umac/mlo_mgr/src/wlan_mlo_mgr_ap.c b/umac/mlo_mgr/src/wlan_mlo_mgr_ap.c index a0ee613840..22be9d089b 100644 --- a/umac/mlo_mgr/src/wlan_mlo_mgr_ap.c +++ b/umac/mlo_mgr/src/wlan_mlo_mgr_ap.c @@ -552,6 +552,11 @@ static bool mlo_handle_link_ready(struct wlan_objmgr_vdev *vdev) /* Release ref taken as part of mlo_ap_get_vdev_list */ mlo_release_vdev_ref(vdev_list[i]); } + + /* Clear up bmap for this vdev as it is moving to UP_ACTIVE state */ + idx = mlo_get_link_vdev_ix(mld_ctx, vdev); + wlan_util_change_map_index(mld_ctx->ap_ctx->mlo_vdev_up_bmap, idx, 0); + mlo_ap_lock_release(vdev->mlo_dev_ctx->ap_ctx); return true; }