summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/wil6210/main.c
diff options
context:
space:
mode:
authorLior David <qca_liord@qca.qualcomm.com>2017-01-20 13:49:48 +0200
committerKalle Valo <kvalo@qca.qualcomm.com>2017-01-27 19:49:39 +0200
commit4d4c4dc324b4444d40e9164834044feebaf2d72d (patch)
treebbcc4458045a7f618c8e60491665637dd4cb2d95 /drivers/net/wireless/ath/wil6210/main.c
parent0d2370e939acca97b5e1abc1aedd47c5c9a5f500 (diff)
downloadlinux-stable-4d4c4dc324b4444d40e9164834044feebaf2d72d.tar.gz
linux-stable-4d4c4dc324b4444d40e9164834044feebaf2d72d.tar.bz2
linux-stable-4d4c4dc324b4444d40e9164834044feebaf2d72d.zip
wil6210: missing reinit_completion in wmi_call
The code in wmi_call uses the wil->wmi_call completion structure to wait for a reply. In some scenarios, complete was called twice on the completion structure. This happened mainly with a disconnect event which can arrive both unsolicited and as a reply to a disconnect request. In this case the completion structure was left marked as "done" and the next wmi_call returned immediately with a corrupted reply buffer. This caused unexpected results including crashes. Fix this by adding the missing call to reinit_completion. Signed-off-by: Lior David <qca_liord@qca.qualcomm.com> Signed-off-by: Maya Erez <qca_merez@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers/net/wireless/ath/wil6210/main.c')
0 files changed, 0 insertions, 0 deletions