summaryrefslogtreecommitdiff
path: root/drivers/staging
diff options
context:
space:
mode:
authorVihas Makwana <makvihas@gmail.com>2022-03-10 02:20:46 +0530
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-03-15 15:18:20 +0100
commit57a42b4d73f9d6f6fbe8b11f22453e1bc3183648 (patch)
tree800fd618a35c58dd76ed657ae9e36719f997fcc6 /drivers/staging
parentcff7326792f78815c20f33e509959682157a609a (diff)
staging: r8188eu: call _cancel_timer_ex from _rtw_free_recv_priv
The _rtw_init_recv_priv() initializes precvpriv->signal_stat_timer and sets it's timeout interval to 1000 ms. But _rtw_free_recv_priv() doesn't cancel the timer and we need to explicitly call _cancel_timer_ex() after we call _rtw_free_recv_priv() to cancel the timer. Call _cancel_timer_ex() from inside _rtw_free_recv_priv() as every init function needs a matching free function. Signed-off-by: Vihas Makwana <makvihas@gmail.com> Link: https://lore.kernel.org/r/20220309205047.45981-2-makvihas@gmail.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging')
-rw-r--r--drivers/staging/r8188eu/core/rtw_recv.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/staging/r8188eu/core/rtw_recv.c b/drivers/staging/r8188eu/core/rtw_recv.c
index b6ab2db6d731..8800ea4825ff 100644
--- a/drivers/staging/r8188eu/core/rtw_recv.c
+++ b/drivers/staging/r8188eu/core/rtw_recv.c
@@ -103,6 +103,7 @@ void _rtw_free_recv_priv(struct recv_priv *precvpriv)
vfree(precvpriv->pallocated_frame_buf);
rtl8188eu_free_recv_priv(padapter);
+ _cancel_timer_ex(&precvpriv->signal_stat_timer);
}
struct recv_frame *_rtw_alloc_recvframe(struct __queue *pfree_recv_queue)