Accessing partially created objects are leading to freeing the
objects due to uninitialized ref count
Fix checks the valid object state to
1) invoke the handler on the object for iterate API
2) get reference of the object
Change-Id: I479d68a57e16b0eb679d3a8c3e45cd924a7cff3e
CRs-Fixed: 2161085
1. find_first_bit API returns Size value if it doesn’t find any bit set.
This was causing VOICE AC counter to go high even for TID 0
2. Reset stats was not resetting the stats immediately
3. Added checks to avoid spurious stats increment
4. Detect data/mgmt pkt to avoid spurious stats increment
Change-Id: Ic9c5695fc7bdf58d1237e7e20bb79378a02a21f6
QDF_MAC_ADDR_ZERO_INITIALIZER has been depreciated in favor of
QDF_MAC_ADDR_ZERO_INIT. Replace all usages with the new macro.
Change-Id: I565a01fe3c75da645d5f410ce2c54f02034fb14c
CRs-Fixed: 2176469
Pass back scan start request in scan events so that
handlers can know parameters used to start underlying scan.
Change-Id: I8ca3d55edb266677cc636228919656baa12b43d9
CRs-Fixed: 2159700
Optimize HIF layer driver load time console logging
to avoid any logging related side effect.
Change-Id: I3549256559b3565ab62bfba998a64cda8a971840
CRs-Fixed: 2174888
In change "qcacld-3.0: Validate Scan Default IEs" in the qcacld-3.0
project (Change-Id: Ifd8739c96a9990f01ff159eb59a7e904f7b8c592) the
utility API hdd_is_ie_valid() was introduced. One review comment was
that this should be a converged API, so rename and relocate the API.
Change-Id: I8d2a520ea70645ab54b450de83452c0035653485
CRs-Fixed: 2169420
With gcc 5+ utilized for driver building, more coding errors are
detected, some of which are valid issues.
Fix all those errors in one shot.
Change-Id: I263c70d4bff9ec0c3076103001cd7f2ccc8e0d1a
CRs-Fixed: 2176076
Build option -Werror=maybe-uninitialized throws may be used
uninitialized error.
Fix is to initialize varibles to 0 before being used.
Change-Id: I05a17fcb3dd666a77e14ef6469305fde541fb740
CRs-Fixed: 2165500
Added a WMI command to add and del peer from the list
of non associated clients for which the RSSI stats
need to be populated
Also added event handler to extract the rssi stats
from the WMI event
Change-Id: I9880c74798c13a52e1498b81735ad78f86fa41b8
CRs-Fixed: 2148773
wmi_mgmt_cmd_record is used to add WMI mgmt cmd record. But mgmt
cmd tx comp record is missing due to mismatch of is_management_record.
Fix is to change is_management_record WMI cmd id to match those who
call wmi_mgmt_cmd_record. In wmi_unified_cmd_send, mgmt cmd record
add is no longer needed since already added in wmi_mgmt_cmd_record.
Change-Id: I41daf428ac0848dabaf4d87e3ecb7dca5e1c2774
CRs-Fixed: 2168104
Regulatory component takes pdev reference count in pdev create handler by
invoking reg_send_scheduler_msg_sb() to call registered callback functions
to notify current channel change. We cannot take ref count in creation
handler of that pdev object since the object creation is not completed and
ref count initialization might be incomplete in some cases. For example,
if any component releases ref count, it will lead to object deletion.
If any component object fails to create, it requires complete object to be
cleaned up. That leads to leaking the object due to object reference
is held by another component.
Define dispatcher_pdev_open() and call it after creating the PDEV object.
Invoke reg_send_scheduler_msg_sb() from dispatcher_pdev_open() instead of
calling it from pdev create handler.
Change-Id: I0b000f5bbd56045abef3706182c208f63dea69aa
CRs-Fixed: 2168027
Add temporary fix to drop all encrypted fragments
until they can be handled properly.
Change-Id: I87a9c52d6359be8182c28d3fa047b9a65f3dd129
CRs-Fixed: 2174750
Add tid to the defrag waitlist & timeout if further fragments are not
received.
Change-Id: Iff2d2c23fe796cf70bcc6aa43ab02a308a33ee9f
CRs-Fixed: 2174750
- Handle WDS case during encapsulation
- Drop non-head duplicate fragments from list
- Get REO DST ring id from msdu_info of incoming packet
Change-Id: I7e4c9c211548aafe9b4ba88fb12890f38aced324
CRs-Fixed: 2174750
Fix race condition in initialising irq_enabled variable. Initialize it to
true before enabling interrupts.
Change-Id: I53a53ee729ca2dc54e47ac65a5bce00b0260f84e
CRs-Fixed: 2173907
Change scan pno active , passive dwell time based upon the current
concurrency mode which can any of p2p_go , p2p_client or Sap
Change-Id: I8223879a981c412e4f57451346d4c2f375780f8e
CRs-Fixed: 2163209
Object tdls_soc_obj is being used ever after it has been freed
which creates stability issue.
Fix it by returning up on releasing the memory.
Change-Id: I0b3faf2435396f2e3cd92bc18afc263f3280eae3
CRs-Fixed: 2164332
Recently change "qcacmn: Add SAR power limit configuration"
(Change-Id: I0a214a2af780e9dd8c381c4e9eaa7d8cab6ef853) added the
ability to dynamically configure Specific Absorption Rate (SAR) power
limits. Now add the ability to retrieve the current active power
limits.
Change-Id: I7a6071dee71300daa3a217780ff3523604a11795
CRs-Fixed: 2161451
When delete peer, host will try to flush all frames in REO queue
by sending a cmd through reo ring, but sometimes encounted failure to
send this cmd, dump ring status if ecountered above failure.
Change-Id: I3ea4e96e5999f85398b531ddf4f350e91e798d70
CRs-Fixed: 2167419
tx_ops->register_ch_avoid_event_handler and
tx_ops->unregister_ch_avoid_event_handler are set but never called.
Call register_ch_avoid_event_handler when regulatory_psoc_open, call
unregister_ch_avoid_event_handler when regulatory_psoc_close.
Change-Id: I663f3020b78773560d6991dc70da9dcdd6c218a9
CRs-Fixed: 2163619
Support to send WMI_ADDBA_CLEAR_RESP_CMDID in tlv format is
lacking in HK. Add the necessary support.
Change-Id: Ic5bda1cd69531ce7eb6f61751b12626b788c02a1
CRs-fixed: 2174262
Add converged implementations of MAC, IPV4 and IPV6 address parsing to
QDF. This allows for reuse wherever address parsing is done. This also
supports the upcoming configuration component, which will support all
three address types.
Change-Id: I5158e2a40169da979a219363c6d2a25784c5a7e8
CRs-Fixed: 2174072
Add new WMI EVENT, SW FILS Discovery Alert Event, to get
firmware trigger to transmit FILS Discovery Frames.
Add WMI command to send FD frame buffer to firwmare.
Add WMI command to set FD period interval in mili seconds.
Change-Id: I8cb6279ec4431b9236bd32c548228a0dc6598664
CRs-Fixed: 2118098
Fragment count will be larger than the upper limit which
would lead to an overread of fragment length. Upper limit
check for fragment count is added in this change.
Change-Id: Icc078b2efee554ac84377b5edd90d0a5c7a61f98
CRs-Fixed: 2158922
REO queue setup is getting triggered from processing
pending null queue exceptions in WBM release ring, after
sending peer delete command to FW, but before peer unmap
is received, causing target assert. Mark peer deletion
before sending peer delete command to avoid this.
Change-Id: I2d85d01e049cb37d9321beeee8e41f44e40e68ad
CRs-Fixed: 2155420
Add ppdu tid tlv value assignment in cdp dp stats layer
ppdu tid value is used by apstats command it was earlier
showing zeroes
Change-Id: Id24b08d2424dcc09424624d84044b3963bd81b36
cck rates were getting updated for ofdm rates
and nss index were getting wrongly incremented
fixed the same
Corrected sgi and preamble too
Change-Id: I2dabb685de6e0bd4ba5094845cde228b3c32e2a9
In current code GreenAP transition time is being set in
milliseconds. Add change to configure PS transition time
in seconds.
Change-Id: Ic42b1f40851966e6e0f4f613de06fdf50ec2d7cc
CRs-Fixed: 2142183
TDLS teardown request from the DUT is dropped
in the peer, due to invalid MIC in the
teardown frame.
TDLS responder value is not set correctly in TDLS
teardown frame, and it causes MIC failures in the
peer device.
Set the correct responder value in TDLS
teardown frame.
Change-Id: Ibe056c89f644c094a10f7a5eb51b6d90a13a4a01
CRs-Fixed: 2155555
Currently, nbuf map tracking happens before the nbuf is actually mapped.
In cases where the actual map operation fails, remove the nbuf map
tracking information to avoid false positive mapped-never-unmapped
panics.
Change-Id: I8e649841a661d460bf89dd5edf09bb5e460ea98c
CRs-Fixed: 2171837
Hold a spinlock for the entire iteration of the nbuf map/unmap
hashtable. This prevents invalid list/memory access issues in case of a
race with an unmap operation. This also trades list/memory safety for
the chance to watchdog bite while printing. Since we are about to panic
anyway, the worst case is manually loading the memory dump to inspect
the contents of the map/unmap hashtable.
Change-Id: Iafc38764d55fc46910051349e4f4b26da33cae51
CRs-Fixed: 2171736
An nbuf free history circular buffer already exists for tracking recent
nbuf frees in the system. This is very useful for debugging tricky nbuf
related failures in the driver. In addition to tracking frees, track
alloc, map, and unmap nbuf events as well.
Change-Id: I253d454d689deb8328b3636e92063e9d33ea1a52
CRs-Fixed: 2170365
* Update the pkt_type counters correctly within the array bound
* Add support for NSS counters on Tx side
* Update ampdu flag in PPDU struct
* Add support for ampdu flag in hal_ppdu struct
Change-Id: I79ea52727124ea4be4d82912cb2513ea58e2af10
When nbuf map/unmap tracking is enabled, a small metadata structure is
allocated to keep the tracking information. In cases where this
allocation fails during the map operation, return an error status
instead of mapping the nbuf. This prevents a false positive
unmap-never-mapped panic when the nbuf is unmapped.
Change-Id: Id01c1f61165a0beff4edd6cc6a0a2fc5f64d9b04
CRs-Fixed: 2167082