mirror of
https://github.com/torvalds/linux.git
synced 2026-08-01 03:59:40 +02:00
rpmsg: glink: mark intent request complete before wake up
Channel release function is not making intent wait condition true before calling wake_up, due to this thread waiting on intent is stuck and does not wake up until timeout happens. By this time channel context is freed and this casues finish wait to fail due to access of wait queue in freed channel context. Mark intent request complete before calling wake_up. CRs-Fixed: 2914979 Change-Id: Ia4162c9e62f0f5a7bd04ca0e09c2cd58319ef341 Signed-off-by: Deepak Kumar Singh <deesin@codeaurora.org>
This commit is contained in:
parent
d1167202e6
commit
a35460ef6d
|
|
@ -253,6 +253,9 @@ static void qcom_glink_channel_release(struct kref *ref)
|
|||
unsigned long flags;
|
||||
int iid;
|
||||
|
||||
channel->intent_req_result = false;
|
||||
complete_all(&channel->intent_req_comp);
|
||||
|
||||
/* cancel pending rx_done work */
|
||||
cancel_work_sync(&channel->intent_work);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user