Browse Source

qcacld-3.0: Always initialize num VDEV create in adapter

To identify number of VDEVs to create post mode change,
'num_links_on_create' field in adapter is initialized on
open adapter. However this field is not set to desired
value incase of 11be capability is not present.

This can lead to resetting active links bitmap in adapter
to zero. This bitmap is extensively used for numerous VDEV
related iteration/search operations including VDEV create.

In n-link changes, hdd_adapter_disable_all_links() API is
modified to restore bitmap of active links which might change
as part of link switch.
In stop adapter, this API is called without check for eht_cap
and resulting in zero active link bitmap.

Irrespective of 11be capability fill the 'num_links_on_create'
to approripate value so that further usage of this field will
not have undesirable results.

Change-Id: I6dddc8bb57b012dc480e05653db50f6cafb26ccf
CRs-Fixed: 3575089
Vinod Kumar Pirla 1 year ago
parent
commit
67b4f2f152
1 changed files with 1 additions and 3 deletions
  1. 1 3
      core/hdd/src/wlan_hdd_main.c

+ 1 - 3
core/hdd/src/wlan_hdd_main.c

@@ -8544,11 +8544,9 @@ struct hdd_adapter *hdd_open_adapter(struct hdd_context *hdd_ctx,
 	}
 
 	hdd_adapter_init_link_info(adapter);
+	hdd_adapter_enable_links(adapter, params);
 
 	ucfg_psoc_mlme_get_11be_capab(hdd_ctx->psoc, &eht_capab);
-	if (eht_capab)
-		hdd_adapter_enable_links(adapter, params);
-
 	if (params->is_ml_adapter && eht_capab) {
 		hdd_adapter_set_ml_adapter(adapter);
 		if (params->is_single_link)