android_kernel_xiaomi_sm8350/components/tdls
Ashish Kumar Dhanotiya 645af711aa qcacld-3.0: Validate tdls sta id in del station command
Currently sta id validation is not there in del
station command for tdls. There could be a case where peer
is there but sta id is not valid.

Consider a case where there is tdls connection between 2
p2p clients and one of the client decided to connect to SAE
AP, this brings up concurrency scenario on that client for
p2p client and station, so tdls connection should be tear
down. device tear down the tdls link and inform the supplicant
regarding the same. Now in the driver scheduler, connect
command is there which is queued when device tries to connect
to SAE AP, this command gets a chance to execute.
When SAE connection is executed, driver gets a command from
supplicant to disable tdls links for the previous connection
which is already teardown, this command is queued into
scheduler which blocks the supplicant thread.
For SAE connection to get complete driver waits for auth
request from supplicant.
Here supplicant waits for the tdls disable link command's
response which will never come as driver waits for SAE
authentication which leads to deadlock.

To address above issue, add a check to validate sta id
before queing tdls down link command to scheduler, if the sta
id is invalid, return response to supplicant as tdls peer is
already deleted.

Change-Id: Ie983aa9f217c0d7b4508639bb33ad1a44b3675c7
CRs-Fixed: 2521529
2019-09-19 03:25:47 -07:00
..
core/src qcacld-3.0: Validate tdls sta id in del station command 2019-09-19 03:25:47 -07:00
dispatcher qcacld-3.0: Do not send UAPSD command after TDLS connection 2019-09-19 02:01:45 -07:00