qcacld-2.0 to qcacld-3.0 propagation
Static code analyser detects uninitialized pointer/structure
access and dereferencing a pointer without null check.
As part of this fix host will initialize pointer/structure before
accessing it and put a null check for pointer access.
Change-Id: I5647b36a6ba0e84354d39799bf68a28df633cf20
CRs-Fixed: 836071
qcacld-2.0 to qcacld-3.0 propagation
Host should avoid to Update MC list in ftm mode because
as a part of MC list updation, host will access the
pMac roam sessions, as these sessions are not initialized
in FTM mode which lead to Null data access.
Change-Id: I2ac82e76c1c7de8d1bf0fd7e291bf5445e9d0f4b
CRs-fixed: 897871
qcacld-2.0 to qcacld-3.0 propagation
Kernel assumes all SET IOCTL commands are assigned with even
numbers. But in our WLAN driver, some SET IOCTLS are assigned with
odd numbers. This leads kernel fail to check, for some SET IOCTLs,
whether user has the right permission to do SET operation.
Hence, in driver, before processing SET_VAR_INTS_GETNONE, making
sure user task has right permission to process the command.
Change-Id: Icbdfe69c18c1ab3b75d63e046d5251307a794817
CRs-Fixed: 930942
qcacld-2.0 to qcacld-3.0 propagation
Kernel assumes all SET IOCTL commands are assigned with even
numbers. But in our WLAN driver, some SET IOCTLS are assigned with
odd numbers. This leads kernel fail to check, for some SET IOCTLs,
whether user has the right permission to do SET operation.
Hence, in driver, before processing QCSAP_IOCTL_SETWPSIE IOCTL,
making sure user task has right permission to process the command.
Change-Id: Ie1c945afb0f109892beda66bab25647d70cc62d7
CRs-Fixed: 930944
qcacld-2.0 to qcacld-3.0 propagation
Kernel assumes all SET IOCTL commands are assigned with even
numbers. But in our WLAN driver, some SET IOCTLS are assigned with
odd numbers. This leads kernel fail to check, for some SET IOCTLs,
whether user has the right permission to do SET operation.
Hence, in driver, before processing SET_BAND_CONFIG IOCTL, making
sure user task has right permission to process the command.
Change-Id: Ie8a36bfa07a7b21601364b27b3c4bc888a6a5b4e
CRs-Fixed: 930952
qcacld-2.0 to qcacld-3.0 propagation
As a part of unload hdd is stopping the netdev queue.
But still N/W layer 3 is calling the select queue netdev
ops, where error print for sap context is Null appears
excessively.
As a part of this fix hostap select queue need to validate
Hdd context to take care of SSR and load / unload cases.
Change-Id: Id6d93a3a83de7d95a283ff57b6fa2c44f08a9ee3
CRs-Fixed: 857220
qcacld-2.0 to qcacld-3.0 propagation
While adding pStaDs for IBSS when peer beacon is received, HT
secondary channel offset is not copied from beacon. This leads to
false change capability indication while processing the same beacon
and thus update cb mode is sent with staid 255(default),
leading to crash.
Update HT secondary channel offset from beacon and add a check in
cbmode update to ignore update if staid is 255.
CRs-Fixed: 885747
Change-Id: I66dedb38aadde473b99b2f8fc4a7a9b855a10b2a
qcacld-2.0 to qcacld-3.0 propagation
Optimize by avoiding processing of DFS phy events in below scenario's
1)Once radar indication given to UMAC.
2)Vdev restart in SAP interface
Change-Id: Ib175feed4a611a5c7185202e3d50abc3e84fc781
CRs-Fixed: 910586
qcacld-2.0 to qcacld-3.0 propagation
Currently DFS variables are accessed in different context without
protection leading to NULL pointer dereferences.
Ensure lock is taken before accessing the DFS shared variable.
Change-Id: Ie78dd50ff4b32ef52f78e2944d175a6c10577882
CRs-Fixed: 910586
qcacld-2.0 to qcacld-3.0 propagation
Host driver updates WLAN status to LPASS with connected false and WLAN on
when disconnection happens. Host driver also updates WLAN status right
after driver unload is triggered with connected false and WLAN off. There
is a scenario that disconnection callback comes during driver unloading
which causes LPASS misbehavior. Fix this by only updating disconnection
status to LAPSS when driver is not unloading.
Change-Id: Ie72ba094283a64c06e8c74523314d6de92a0f08b
CRs-fixed: 928365
qcacld-2.0 to qcacld-3.0 propagation
Increase SSR timeout from 15 seconds to 30 seconds in order to handle
some corner cases which may cause SSR to take longer time. E.g. CPU is
busy/stuck with other tasks.
Change-Id: I6837f2d5e87090ede15e514d1c4f978d34931f32
CRs-fixed: 927722
qcacld-2.0 to qcacld-3.0 propagation
If total TX/RX packets are less than bus bandwidth low threshold, there
is no need to vote separately from WLAN side.
Change-Id: I02284d035e58471b3933a84c778d4d44bd6b19ba
CRs-fixed: 918723
qcacld-2.0 to qcacld-3.0 propagation
There is no need for host driver to do VOS_BUG if FW has already requested
recovery during suspend.
Change-Id: I0c77210316fea978fe686201f42b9501612e9a1e
CRs-fixed: 904909
qcacld-2.0 to qcacld-3.0 propagation
If self-recovery is enabled in ini file, recover if host driver fails to
receive HTC ACK from FW for PDEV suspend, otherwise do VOS_BUG.
Change-Id: Ieddb22c5806067ec1a1166b60e1642e6cdf74a4c
CRs-fixed: 894187
qcacld-2.0 to qcacld-3.0 propagation
- Kill wlan_tasklet before freeing TLshim free queue. This can avoid
race condition between SSR and wlan_tasklet which is still processing
Rx packets in the case of self-recovery when FW doesn't really crash.
- In additional to connected state, add disconnected/disconnecting states
to send notification to supplicant for re-issuing connect after SSR.
This is to avoid corner cases that while FW crashes, disconnection is
happening or disconnection fails because of FW crash, the HDD state is
changed from connected to disconnecting/disconnected.
Change-Id: I8ff295a443e946e8775354dcf4331ad024776cb7
CRs-fixed: 899479
qcacld-3.0: Initial snapshot of ihelium wlan driver
to match code-scanned SU Release 5.0.0.139. This is
open-source version of wlan for next Android release.
Change-Id: Icf598ca97da74f84bea607e4e902d1889806f507