Commit Graph

8706 Commits

Author SHA1 Message Date
Ashish Kumar Dhanotiya
2e01abcc20 qcacld-3.0: Use after free in hdd_debugfs_stats_update api
Currently there is no locking mechanism to protect global
variable ll_stats.result in hdd_debugfs_stats_update api and
wlan_hdd_llstats_free_buf api so if two threads access the file
simultaneously there is a possibility of use after free of the
llstats buffer.

To address this issue add a mutex to prevent the simultaneous
access of the llstats buffer.

Change-Id: I0fd418e3a2034f10ba45021af21920f5e133cb6e
CRs-Fixed: 2157283
2018-01-08 13:33:26 -08:00
snandini
54d3aa2ea6 Release 5.2.0.60M
Release 5.2.0.60M

Change-Id: I686d0ec03ccd49b0f156edeabc59d4227a7b1314
CRs-Fixed: 774533
2018-01-08 09:39:13 -08:00
Himanshu Agarwal
c733bd3e46 qcacld-3.0: Change some API signatures to have pdev instead of psoc
Change some mgmt txrx component related API signatures to have pdev
instead of psoc.

Change-Id: I6dc250757c2f686e6f38bcb5fdc752717242b606
CRs-Fixed: 2146871
2018-01-08 09:39:12 -08:00
Ashish Kumar Dhanotiya
443d31f5f8 qcacld-3.0: Cache deleted station's information in case of SAP
During disconnection process, cache disconnecting STA information
so that the same information is updated to upper-layer on receiving
GET_STATION vendor command, after disconnection.

Change-Id: I2e5a0be42d81b86e6f4490de1bdf9d7e0797506d
CRs-Fixed: 2126182
2018-01-08 09:39:09 -08:00
snandini
5526acef03 Release 5.2.0.60L
Release 5.2.0.60L

Change-Id: I2e172e838426ef1456d4d5030e790f516d86801d
CRs-Fixed: 774533
2018-01-08 02:07:19 -08:00
Abhishek Singh
ed55b24b9e qcacld-3.0: Use intersection of AP's and user's RSN cap in assoc req
While preparing the RSNIE caps only AP capability are considered.
The capability should be intersection of user provided capability
and AP's capability.

So use intersection of AP's and user's RSN cap in assoc request

Change-Id: I585d84953767c217239eedc284d6b413cf7af5e4
CRs-Fixed: 2164525
2018-01-08 02:07:19 -08:00
wadesong
1795e14189 qcacld-3.0: Refine ACS fail-safe channel selection
1) Change some of the parameters for the following two functions
to reflect the right PHY mode definitions at different layers:

wlan_hdd_set_acs_ch_range
sap_select_default_oper_chan

2) Refine the kernel-doc for the above 2 functions due to their
parameter changes.

3) Use eCsrPhyMode instead of uint32_t to define hw_mode in
struct sap_acs_cfg to reflect the right PHY mode definition.

4) Refine the ACS code logic due to the changes introduced above.

Change-Id: I91b7814831a05265cfff456452eef0fe2ef97d1e
CRs-Fixed: 2167355
2018-01-08 02:07:16 -08:00
snandini
a53b5ae3c3 Release 5.2.0.60K
Release 5.2.0.60K

Change-Id: I865cb17d5ce9e63486a5dfcea8ea88aea817eeea
CRs-Fixed: 774533
2018-01-08 01:18:28 -08:00
Amar Singhal
4c3fbb400e qcacld-3.0: Fix NULL pointer and uninitialization issues
Fix NULL pointer and uninitialization issues.

Change-Id: I757b3b408f9ddc8716366a757ea2bf2bb7126a38
CRs-Fixed: 2162258
2018-01-08 01:18:28 -08:00
snandini
cfcba78b5f Release 5.2.0.60J
Release 5.2.0.60J

Change-Id: I0b56e6c5c479a33e9046670d3820819191a9f051
CRs-Fixed: 774533
2018-01-08 00:32:12 -08:00
Srinivas Girigowda
e975f53b9d qcacld-3.0: clang: Fix clang warning '-Wenum-conversion'
Fix clang warning implicit conversion from enumeration type
'tSirResultCodes' (aka 'enum eSirResultCodes') to different
enumeration type 'enum nl80211_timeout_reason' [-Wenum-conversion]

Change-Id: I50cc36d647826b9ce904c6cf8fe25e44dcdf90dc
CRs-Fixed: 2167852
2018-01-08 00:32:11 -08:00
Kiran Kumar Lokere
a0c1faa56a qcacld-3.0: Disable HE dynamic fragmentation by default
Disable HE dynamic fragmentation support by default.

Change-Id: I9db2a2e8759e5de7cb7724aa9c0789fa02dcf35b
CRs-Fixed: 2167886
2018-01-08 00:32:08 -08:00
Amar Singhal
ef59eee054 qcacld-3.0: Remove un-necessary checks on iface ptr value
In many cases, iface ptr value cannot be NULL. Remove the
un-necessary check iface ptr value.

Change-Id: Ic7430dd2a5e660daf08b007cbc9f0fcedad7ef01
CRS-Fixed: 2162236
2018-01-08 00:32:05 -08:00
snandini
5687d0281b Release 5.2.0.60I
Release 5.2.0.60I

Change-Id: Ia928b8cbd936b32f5ecc38116aeec7e4818476aa
CRs-Fixed: 774533
2018-01-05 03:38:25 -08:00
Anurag Chouhan
9fb2bd53ab qcacld-3.0: Validate NUD stats commands for FTM mode
Do Not allow __wlan_hdd_cfg80211_get_nud_stats and
__wlan_hdd_cfg80211_set_nud_stats commands for FTM mode.

CRs-fixed: 2161387
Change-Id: I135cead506c741425845d9e000d9a868e4a7779a
2018-01-05 03:38:24 -08:00
snandini
cf507097ba Release 5.2.0.60H
Release 5.2.0.60H

Change-Id: Ia267806902c92634582885316f36cacbc53b7f7d
CRs-Fixed: 774533
2018-01-05 01:55:12 -08:00
Jiachao Wu
e6485d4cf3 qcacld-3.0: Free/init lim resource when pe close/open
When invoke pe_enable/pe_disable,scheduler is running.
There will be two threads operate lim resource at same time.
Most of lim resource should be initialized/freed in pe_open/close
to avoid race condition.
So:
        - Move lim_cleanup to pe_close.
        - Move lim_initialize to pe_open.
        - lim_start,__lim_init_config,lim_register_hal_ind_call_back
          stay on pe_start
        - lim_cleanup_mlm stay on pe_stop

Change-Id: Ib647174ee9e1cf82567223abca233cb0332f1ffb
CRs-Fixed: 2154978
2018-01-05 01:55:11 -08:00
Jiachao Wu
341d07550b qcacld-3.0: Check psoc in de-init process
In the stress test of insmod/rmmod, the object of psoc might fail
to be initialized during initialization. For such case, recovery
process should not be triggered in the de-init process.
Add check for psoc to avoid false alarm.

Change-Id: I71f9eed8596958788f6a3213e7a3bcd9ee346781
CRs-Fixed: 2165620
2018-01-05 01:55:08 -08:00
snandini
44b48a756c Release 5.2.0.60G
Release 5.2.0.60G

Change-Id: I4024ac1707c088b5021d80be525391cc8ebe37b5
CRs-Fixed: 774533
2018-01-04 19:38:26 -08:00
Dustin Brown
e6b9d5a7bc qcacld-3.0: Enable runtime memory leak detection
Enable the recently added runtime memory leak detection logic.

Change-Id: I5ac937d2327245719f450ad927ca7ea5a78befa4
CRs-Fixed: 2167245
2018-01-04 19:38:26 -08:00
wadesong
9f2b1100e6 qcacld-3.0: Local peer ID freeing relocation
1) Local peer ID freeing is currently done before peer ref count
decreasing and peer releasing, which imposes a potential race
condition, in which the same local peer ID map will be accessed
before the peer object is fully released.

Fix the issue by relocating the local peer ID freeing to the
point where the peer object is to be freed.

2) Add changes to the return value description of function
ol_txrx_peer_release_ref

Change-Id: Id7722bd54afd6110b91634ca7f1632cade766704
CRs-Fixed: 2155759
2018-01-04 19:38:23 -08:00
Dustin Brown
763f3963a1 qcacld-3.0: Release peer refs during pdev detach
Historically, OL peers were forcibly destroyed during pdev detach. This
logic was mistakenly removed as part of another change. This led to peer
leaks during Sub-System Restart (SSR). Restore the peer delete logic to
close peer leaks during SSR.

Change-Id: I72d980750a2f97e6717f720a63f4a651f7615aee
CRs-Fixed: 2167237
2018-01-04 19:38:20 -08:00
snandini
0bc3fd7fe0 Release 5.2.0.60F
Release 5.2.0.60F

Change-Id: Icd4e65bc1557b2c809ce583ef6110e3cac177531
CRs-Fixed: 774533
2018-01-04 17:37:40 -08:00
Kabilan Kannan
973744ade7 qcacld-3.0: Do not BUG_ON, when recovery is started by FW assert
Host driver should avoid BUG_ON, when recovery is
in progress due to firmware assert.
Change the sequence in cds trigger recovery
function to avoid BUG_ON

Change-Id: Ibcce592caf4c4099a9cf3e124c5d2b70134116a3
CRs-Fixed: 2165972
2018-01-04 17:37:40 -08:00
snandini
317ec4a6f8 Release 5.2.0.60E
Release 5.2.0.60E

Change-Id: Id9a9093235a2fae6aca40b517aae77883b4ed348
CRs-Fixed: 774533
2018-01-04 13:47:32 -08:00
Manjunathappa Prakash
ebdfa7e52a qcacld-3.0: return code from non-void thread function
Return value from non-void cds_ol_rx_thread().

Change-Id: Ia9b5b0e16475b27c5e03da7812299203d4bd4bda
CRs-Fixed: 2162238
2018-01-04 13:47:31 -08:00
Himanshu Agarwal
8612c3bb6b qcacld-3.0: Free deauth req msg if no ack received from fw
Free deauth req msg, if no ack has been received from fw, in
pe_close() during interface down to avoid mem leak.

Change-Id: I49508b2681f708dc56fc3938162ff856babfb0aa
CRs-Fixed: 2158490
2018-01-04 13:47:28 -08:00
snandini
e69219b659 Release 5.2.0.60D
Release 5.2.0.60D

Change-Id: I6076bc7a1a8f6432989ca4aa70184b03b003253b
CRs-Fixed: 774533
2018-01-04 03:38:52 -08:00
Abhishek Singh
6a73017649 qcacld-3.0: Fix roam cmd stuck during graceful shutdown
If connect timers like join, auth and assoc timeout are running and
timer are stopped in deactivate lim timers, the connect cmd get stuck
in sme active cmd queue, if no probe resp, auth or assoc resp is
received respectively from AP.

Thus during deactivate lim timers call the timeout API for the
connect timeouts so that connect command fails and is removed from
sme active cmd queue.

Change-Id: I1ddd23ad94fb4b616b9a7868316f05577d6524b3
CRs-Fixed: 2164061
2018-01-04 03:38:52 -08:00
snandini
55000d7b3d Release 5.2.0.60C
Release 5.2.0.60C

Change-Id: Ifb00ab2347faa7e5f19d67187295163dbf9ca460
CRs-Fixed: 774533
2018-01-03 23:36:12 -08:00
Jingxiang Ge
4168a2387c qcacld-3.0: Fix memory leak for mlm_set_keys_req
mlm_set_keys_req may leak if return in some fail case or
there is no WMA_SET_STAKEY_RSP.

Change-Id: Ib89709a6656cfcff18341257e116861774489c8c
CRs-Fixed: 2166374
2018-01-03 23:36:12 -08:00
snandini
a6cf3a9c50 Release 5.2.0.60B
Release 5.2.0.60B

Change-Id: If6706c626bc1018e49f9914588456548021d4238
CRs-Fixed: 774533
2018-01-03 21:36:22 -08:00
Jiachao Wu
6e9b9f970b qcacld-3.0: Extend fw log level string length
The string length of FwDebugModuleLogleveconfig is over 255 if set all
firmware log level in config file. Now FW moudle number is 67 which mean
the string length might be 336(67*5+1).
Extend the length to 512.

Change-Id: If9842f3bfdc9ae6b3351c27c3166e2940de71fb8
CRs-Fixed: 2166118
2018-01-03 21:36:21 -08:00
snandini
6626107dbc Release 5.2.0.60A
Release 5.2.0.60A

Change-Id: Ife35d71c2b37cddf7e8f27d09ca4fc8d912528bf
CRs-Fixed: 774533
2018-01-03 20:09:34 -08:00
Dustin Brown
20024e390a qcacld-3.0: Defer setting con_mode until success
__con_mode_handler sets the new con_mode value before doing any of the
connection mode transition steps. Thus, if any step fails, the driver
will incorrectly report the new connection mode. Defer setting the new
con_mode value until the connection mode has be successfully changed.

Change-Id: Ib248ab06cf1bf8ef71c1c1bd26aa1beb91e9fa89
CRs-Fixed: 2166530
2018-01-03 20:09:33 -08:00
Tushnim Bhattacharyya
9bd058f5d4 qcacld-3.0: Keep HW mode in sync with FW when hdd stop happens
Stop the opportunistic timer & take action to keep HW mode in sync
when hdd stop happens.

Change-Id: Id34adb579987605831d2c7c4e22c2d76fe7d25dd
CRs-Fixed: 2165105
2018-01-03 20:09:30 -08:00
Govind Singh
27a7403814 qcacld-3.0: Use HOST defined target type
Target types are moved to target_type.h from hif.h.
Add new target type include for target definitions.

Change-Id: I54185fff428eebf678310f95f59a63db4f82aa80
CRs-Fixed: 2144470
2018-01-03 20:09:26 -08:00
snandini
20e0b3c8ef Release 5.2.0.60
Release 5.2.0.60

Change-Id: I2a7d860a1f1b9ee3bd96bb3655135026540a6bed
CRs-Fixed: 774533
2018-01-03 19:26:15 -08:00
Dustin Brown
db2a8bed51 qcacld-3.0: Close FTM vdev leak
When the driver transitions into Factory Test Mode (FTM), the existing
vdev is not properly destroyed. This ultimately leads to a vdev object
leak when the driver is unloaded while in FTM. To close the leak, tear
down the existing station vdev before doing the module stop operation.

Change-Id: I48ca4e6fc5750e593b6afc4e6b44a603570101cc
CRs-Fixed: 2137144
2018-01-03 16:40:19 -08:00
snandini
181f5b0a10 Release 5.2.0.59Z
Release 5.2.0.59Z

Change-Id: Icfa29740732c8270f8c0afa6da8fc0e48fe91e6a
CRs-Fixed: 774533
2018-01-03 14:16:53 -08:00
Kiran Kumar Lokere
471274844d qcacld-3.0: Check the channel width value in CSA processing
Check the channel width value in CSA IE before we process the
channel switch so that if the AP sends the wrong channel width in
CSA driver can process with correct configuration

Change-Id: Ib14a0146502b0f731f319ac1fe6657a389388cec
CRs-Fixed: 2162235
2018-01-03 14:16:52 -08:00
snandini
ab5eef1aee Release 5.2.0.59Y
Release 5.2.0.59Y

Change-Id: I1c859890b775def51c385d59476edda92f73d5c2
CRs-Fixed: 774533
2018-01-03 13:22:58 -08:00
Himanshu Agarwal
fc4dab9c75 qcacld-3.0: Do recovery/assert on vdev delete/start if bss started
In wma_vdev_detach(), ignore vdev delete request at present if it is
received before VDEV_STOP and VDEV_DOWN which results in fw assert on
VDEV_START as no VDEV_DELETE is present before VDEV_START on the same vdev.

Do cds recovery or assert on vdev deletion or on vdev start if BSS
is already in started state and no VDEV_STOP is queued in the queue.

Change-Id: I273e6240840e7a0a54c2d7ad3de12c8a30d42a18
CRs-Fixed: 2164701
2018-01-03 13:22:58 -08:00
Himanshu Agarwal
a79c676daf qcacld-3.0: Add sanity check for rxNss value
Add sanity check for rxNss value in lim_set_nss_change()
as rxNss cannot be zero.

Change-Id: Ie8043d41413a26469539a1f370ff4bca09870b61
CRs-Fixed: 2157501
2018-01-03 13:22:56 -08:00
Yeshwanth Sriram Guntuka
72a2fb2513 Revert "qcacld-3.0: Save previous auth algo in pe session"
This reverts commit 7cf307e148
as the check to drop auth frame if previous sequence number
and auth algo match with current sequence number and auth
algo returns true instead of false in a correct scenario.

Change-Id: I8dee272f535acaadb9dfff69ee9ce68ddea4eec1
CRs-Fixed: 2166125
2018-01-03 13:22:53 -08:00
snandini
6f680870f0 Release 5.2.0.59X
Release 5.2.0.59X

Change-Id: I4b1d0ab3e5b1c505bd8b2baa637336e8c1628e64
CRs-Fixed: 774533
2018-01-03 12:31:08 -08:00
Vignesh Viswanathan
fa90d6210f qcacld-3.0: Remove add PMKSA cache logic from connect path
Currently host is adding PMKSA cache on bssid from connect request
if PMKID is present in the RSNIE. This may cause duplicate
entry of PMKSA since supplicant may add the same PMKSA on basis of
SSID + cache identifier. This also cause different caches present
in driver and supplicant.
Setting PMKSA in connect request is not needed since supplicant
will always set/delete PMKSA cache using seperate kernel APIs.

Add changes to remove set PMKSA logic during connect path and
increased PMKSA cache path logging.

Change-Id: I7aa13daa59c4221380daebab3bee49de5d681d6b
CRs-Fixed: 2054351
2018-01-03 12:31:08 -08:00
Varun Reddy Yeturu
ab628711da qcacld-3.0: Check for valid FILS info before referencing
Check if the FILS info is populated before deferencing
the value for the same.

Change-Id: Iabc7d11c4033c92a4047d29da915415cf5ca1167
CRs-Fixed: 2162242
2018-01-03 12:31:04 -08:00
Kiran Kumar Lokere
ee2bbf2946 qcacld-3.0: Fix the channel BW capability in HE caps
Fix channel bandwidth capability advertisement in HE caps

Change-Id: I3dc9a390e806725c45a7919e7a62fefaa073399b
CRs-Fixed: 2160791
2018-01-03 12:31:01 -08:00
snandini
a1aa96c98a Release 5.2.0.59W
Release 5.2.0.59W

Change-Id: I51dcc05615eb205298225880f0eed3d92f9fc916
CRs-Fixed: 774533
2018-01-02 15:37:36 -08:00