[PATCH 3.16 086/306] staging: rtl8188eu: fix missing unlock on error in rtw_resume_process()

From: Ben Hutchings
Date: Wed Feb 15 2017 - 18:17:16 EST


3.16.40-rc1 review patch. If anyone has any objections, please let me know.

------------------

From: Wei Yongjun <weiyongjun1@xxxxxxxxxx>

commit eaf47b713b602e7d0129ed8d18d2818246a17e49 upstream.

Add the missing unlock before return from function
rtw_resume_process() in the error handling case.

Signed-off-by: Wei Yongjun <weiyongjun1@xxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
[bwh: Backported to 3.16:
- Adjust context
- Unlock pwrctrl_priv::lock]
Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
---
drivers/staging/rtl8188eu/os_dep/usb_intf.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

--- a/drivers/staging/rtl8188eu/os_dep/usb_intf.c
+++ b/drivers/staging/rtl8188eu/os_dep/usb_intf.c
@@ -511,8 +511,10 @@ int rtw_resume_process(struct adapter *p

ret = 0;
exit:
- if (pwrpriv)
+ if (pwrpriv) {
pwrpriv->bInSuspend = false;
+ _exit_pwrlock(&pwrpriv->lock);
+ }
DBG_88E("<=== %s return %d.............. in %dms\n", __func__,
ret, rtw_get_passing_time_ms(start_time));