The wlan_max_peer count in the object manager currently
includes the count of temporary peers and actual peers
created on the target, and this could be used to limit the
actual numbers of peers created.
The result is that, for a given number of
peers configured the object manager limits
counting temporary peer also and not actual peers alone.
Indicate the count of actual peers and temporary peers
separately, to appropriately limit actual peers created.
Change-Id: Ia1593d702949853ad26756f167988ec70279eb87
CRs-Fixed: 2228250
Mgmt cipher is not set when igtk key is set.
Set mgmt cipher for igtk set key in crypto params
and add mgmt cipher in RSN IE.
Change-Id: I9e18972b7dd614a3692c107e2d92ac2fc6110458
Crs-Fixed: 2239608
Logically deleted peers are used by umac for host/fw
synchronization. Any failure to return logically
deleted peers is catastrophic and will end up in random
behavior/fw assert.
This change makes below changes:
1. Release peer reference on malloc failure
2. Reset system if malloc fails
3. Move print log level to FATAL
Change-Id: I229f0e83a97b44b4436b4f9945265dcaf85901fd
CRs-Fixed: 2240560
Use channel and vdev_id array while calling
policy_mgr_get_mode_specific_conn_info.
Change-Id: I64579e2b1af0eca47af5292d456367d059a461f5
CRs-Fixed: 2238386
Green AP incorrectly uses object manager ID for reference
counting, and it causes inconsistency in the system.
Create a unique reference count ID for green AP
and use it.
Change-Id: Ia7d9545e95add01d209b11f1b000e38bc1591a47
CRs-Fixed: 2220280
Add API to get first vdev of any given pdev.
Change spectral module's API accordingly.
CRs-Fixed: 2234801
Change-Id: I6c5f0aefad4a71610300810531b8c893471306ad
Remove duplicate structs wmi_dual_mac_config and sir_dual_mac_config
and use policy_mgr_dual_mac_config.
Change-Id: I6da6539f519ec46ee274ba3f3ae042e5fd9c25d2
CRs-Fixed: 2191031
peer pointer is used in wlan_crypto_getkey after
peer ref is released.
Fix is to release peer ref after peer pointer usage
is done in wlan_crypto_getkey API.
Change-Id: Id60acfab838511e0cbde4fd95cce795d77878540
Crs-Fixed: 2236136
Add a pdev_id parameter to following API
For peer:
a. wlan_objmgr_get_peer()
b. wlan_objmgr_get_peer_by_mac_n_vdev()
c. wlan_objmgr_get_peer_by_mac_n_vdev_no_state()
d. wlan_objmgr_get_peer_no_state()
e. wlan_objmgr_get_peer_nolock()
f. wlan_objmgr_populate_logically_
deleted_peerlist_by_mac_n_vdev()
For vdev:
wlan_objmgr_get_vdev_by_macaddr_from_psoc()
Change-Id: I7480c5e17e24b5dfb1a7846cfa773821a86a27ca
CRs-Fixed: 2210118
bss peer are used for each vdev. Include this count also in the num_peer
count sent to FW.
Change-Id: I71c4858ebe416a644f9e100a8d28ac1fd7989757
CRs-Fixed: 2233009
Few variables are left uninitialized and they are being used
with some random value.
Fix by initializing to default value.
CRs-Fixed: 2232791
Change-Id: I3351cae52c58e963601d53376f42ca8ebf0d3b9a
Add API to get NAPI instance from NAPI ID. Handle to NAPI is required
for Rx processing via GRO.
Change-Id: I15535827a03953231670d4138235c4876b16e045
CRs-Fixed: 2062180
CCMP and GCMP both have different lengths of their MIC part. MIC
length for CCMP is 8 bytes whereas it is 16 bytes for GCMP. When
encryption type is GCMP/GCMP-256, sending packets with CCMP MIC
length causes fw to drop the GCMP encrypted management packets
leading to connection issues.
Add macros for GCMP header and MIC length
Change-Id: Ib768319d38dca90d92ff99ad3318a70f5a6ae474
CRs-Fixed: 2226978
Check key valid for get key api.
return key only if it is valid and return NULL is key
not valid.
Added new api to get key type
Change-Id: Iae29366ff7d8f60e26a5a87c79119d9649c7a255
Crs-Fixed: 2204858
Add new helper functions for crypto module.
New api to get ucastcipher and mcastcipher
from peer and vdev.
New api to get key from vdev and peer.
Change-Id: Ia111f59a93b6cc7e1a3406dc53142f0c087df6f8
Crs-Fixed: 2223901
Upper bound length check is performed for index
that is used to access the array elements.
Change-Id: Id39ef1bd0446ce71be4f74532f2a7650df1a5432
CRs-Fixed: 2218940
Non PMF frames are being dropped due to incorrect buffer
length check. Modifying the check only for PMF cases
Change-Id: Iead56b199de6c14b3a569a4f1a537553e9325bc8
BSS peer pointer is currently not populated to P2P GO vdev during
peer attach, which will result in an assertion in function
wlan_objmgr_peer_get_ref once a remote peer object is created for
the same P2P GO vdev.
Populate the right BSS peer pointer to the P2P GO vdev during
peer attach.
Change-Id: I8d98d3b1c51d28dcda1ed0feadee30229c74dc9c
CRs-Fixed: 2218195
Decrement the reference count when peer type is P2P-CLI thereby
avoid memory leak whenever P2P-CLI disconnects in object manager.
Change-Id: Idaf2910c39b316dcea46f9be39df420d71bab8d6
CRs-Fixed: 2222320
Acquiring parent lock with in child lock context can occur deadlock
as some caller can invoke API with parent lock acquired.
Change-Id: I8fab6226d9cafe6df20737f966be1063feebb603
CRs-Fixed: 2219624
Add support for new component cp stats module id,
component id, obj mgr ref id and default log level
CRs-Fixed: 2192386
Change-Id: Ibb523f3756ad5cc80d5691ab421bcaaa0c7e2e4a
By default object manager log level is error
while reference prints use info level. This
eventually disables object ref prints.
To fix this move ref prints to error level.
Change-Id: I87bd589cc0eee3bed4591d5a978cf51840ac6b34
CRs-Fixed: 2219152
Issue is under AP-AP MCC config, mcc event is not sent from wlan
to IPA driver. mcc mode is decided with the help of connection
table. But for AP mode, mcc mode is checked and updated before
connection table is updated by adding the SAP vdev entry.
Fix is to make ipa mcc mode check and notification when connection
table is updated.
Change-Id: I1ba3fcb874b014f05cebd8af90530b9aa54980a2
CRs-Fixed: 2214351
In few cases, ref count mechanism is not able to protect access of
all objects, and if ref count is taken without considering object state,
it is causing double free. so, defined an API which protects list through
locks and accesses all objects.
As the current ref count increment API do not check for ref count value to
increment. This is causing object being accessed and ref count taken during
physical destroy leads to double free on releasing ref count
Change-Id: Iff140c581984bf660a48c2b927c4ac2933afa822
CRs-Fixed: 2200871
When DBS is disabled in WLAN INI file(e.g. on some platforms
where RM chipset is attached), the policy manager will keep
posting a verbose message saying 'DBS is disabled from ini'.
This isn't exhibiting much useful information, and may cause
watchdog bark when SnS stress is running.
Suppress the verbose log by lowering it's debug level.
Change-Id: Ie8d5a1784940f483cc671da43f734851c0b5adb6
CRs-Fixed: 2214201
The pdev peer count needs to be updated with pdev lock, as multiple peers
can be created same time, which can result in synchronization issues
without lock
Change-Id: Ic8164585873f32a801dd9a334f861d6666b9864f
CRs-Fixed: 2203011
Add ENABLE_DBS_CXN_AND_DISABLE_DBS_SCAN option for the ini
gDualMacFeatureDisable. To enable DBS support for the
connection and disable DBS support for the scan.
Change-Id: I05c613467195fffac98e79b7e4a2991471ac1d80
CRs-Fixed: 2207820
As part of IPA componentization remove IPA from HDD module
and make it as an independent component. Add qdf module ID
and Objmgr ID for IPA module.
Change-Id: Id99089f8188e8b1dbf7e1f60d3a127bec770706d
CRs-Fixed: 2180176