diff options
| author | Linux Build Service Account <lnxbuild@quicinc.com> | 2017-10-26 14:47:33 -0700 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2017-10-26 14:47:33 -0700 |
| commit | f5caf269cd1fd4d8e6c0b8bbbef03f0bd5437f22 (patch) | |
| tree | ca0ab28dbdd0c311746f4c9823b1750e3c32369a | |
| parent | 2db878d52eef51fcc49af58f35db373ba6d09335 (diff) | |
| parent | 9ed48188263f859ad217af7be0f39b96f8b26f77 (diff) | |
Merge "soc: qcom: glink: Add downvote of transport during SSR"
| -rw-r--r-- | drivers/soc/qcom/glink.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/soc/qcom/glink.c b/drivers/soc/qcom/glink.c index ad9bf3a2232d..b8464fdfd310 100644 --- a/drivers/soc/qcom/glink.c +++ b/drivers/soc/qcom/glink.c @@ -4294,6 +4294,12 @@ static void glink_core_channel_cleanup(struct glink_core_xprt_ctx *xprt_ptr) rwref_read_get(&xprt_ptr->xprt_state_lhb0); ctx = get_first_ch_ctx(xprt_ptr); while (ctx) { + spin_lock_irqsave(&xprt_ptr->tx_ready_lock_lhb3, flags); + spin_lock(&ctx->tx_lists_lock_lhc3); + if (!list_empty(&ctx->tx_active)) + glink_qos_done_ch_tx(ctx); + spin_unlock(&ctx->tx_lists_lock_lhc3); + spin_unlock_irqrestore(&xprt_ptr->tx_ready_lock_lhb3, flags); rwref_write_get_atomic(&ctx->ch_state_lhb2, true); if (ctx->local_open_state == GLINK_CHANNEL_OPENED || ctx->local_open_state == GLINK_CHANNEL_OPENING) { |
