qcacmn: fix vdev id limited to 32 issue

Issue: create 33 VAPs on both WIFI0 and WIFI1, will see fw crash
Root cause:
2nd DWORD in vdev id map array is never used, so max id is 32
Fix:
map_index needed to be updated before used to calculate adjust_ix.

CRs-Fixed: 2089479
Change-Id: If808d13dbd375197fe637bb53da0bcc3d654ec9e
This commit is contained in:
Neil Zhao 2017-08-08 11:30:05 -07:00 • committed by snandini
commit 502dceb933

View file

@ -812,9 +812,9 @@ QDF_STATUS wlan_objmgr_psoc_vdev_attach(struct wlan_objmgr_psoc *psoc,
* The map is two DWORDS(32 bits), so, map_index
* adjust_ix derived based on the id value
*/
if (id == ((map_index+1)*map_entry_size)) {
adjust_ix = map_index*map_entry_size;
if (id == ((map_index + 1) * map_entry_size)) {
map_index++;
adjust_ix = map_index * map_entry_size;
}
}
/* If no free slot, return failure */