From da8adeaf3617ccd4a83fab6277ce30e3c229789f Mon Sep 17 00:00:00 2001 From: Chris Lew Date: Tue, 8 Nov 2022 11:00:54 -0800 Subject: [PATCH] rpmsg: glink: Cancel sending on processor reset Unblock threads waiting for space in the smem fifo when the peer remote processor reset is detected. This will allow processes to unblock and cleanup instead of waiting for a 10 second timeout. Change-Id: I1a033a81424dd0c40dd4aa709c4fb9a89e2fa124 Signed-off-by: Chris Lew --- drivers/rpmsg/qcom_glink_native.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/rpmsg/qcom_glink_native.c b/drivers/rpmsg/qcom_glink_native.c index 8de9481c078a..d4457bb6e83c 100644 --- a/drivers/rpmsg/qcom_glink_native.c +++ b/drivers/rpmsg/qcom_glink_native.c @@ -422,7 +422,8 @@ static int qcom_glink_tx(struct qcom_glink *glink, spin_unlock_irqrestore(&glink->tx_lock, flags); wait_event_timeout(glink->tx_avail_notify, - qcom_glink_tx_avail(glink) >= tlen, 10 * HZ); + qcom_glink_tx_avail(glink) >= tlen || + atomic_read(&glink->in_reset), 10 * HZ); spin_lock_irqsave(&glink->tx_lock, flags);