Loading drivers/rpmsg/qcom_smd.c +8 −6 Original line number Diff line number Diff line Loading @@ -743,17 +743,13 @@ static int __qcom_smd_send(struct qcom_smd_channel *channel, const void *data, if (ret) return ret; while (qcom_smd_get_tx_avail(channel) < tlen) { while (qcom_smd_get_tx_avail(channel) < tlen && channel->state == SMD_CHANNEL_OPENED) { if (!wait) { ret = -EAGAIN; goto out; } if (channel->state != SMD_CHANNEL_OPENED) { ret = -EPIPE; goto out; } SET_TX_CHANNEL_FLAG(channel, fBLOCKREADINTR, 0); ret = wait_event_interruptible(channel->fblockread_event, Loading @@ -765,6 +761,12 @@ static int __qcom_smd_send(struct qcom_smd_channel *channel, const void *data, SET_TX_CHANNEL_FLAG(channel, fBLOCKREADINTR, 1); } /* Fail if the channel was closed */ if (channel->state != SMD_CHANNEL_OPENED) { ret = -EPIPE; goto out; } SET_TX_CHANNEL_FLAG(channel, fTAIL, 0); qcom_smd_write_fifo(channel, hdr, sizeof(hdr)); Loading Loading
drivers/rpmsg/qcom_smd.c +8 −6 Original line number Diff line number Diff line Loading @@ -743,17 +743,13 @@ static int __qcom_smd_send(struct qcom_smd_channel *channel, const void *data, if (ret) return ret; while (qcom_smd_get_tx_avail(channel) < tlen) { while (qcom_smd_get_tx_avail(channel) < tlen && channel->state == SMD_CHANNEL_OPENED) { if (!wait) { ret = -EAGAIN; goto out; } if (channel->state != SMD_CHANNEL_OPENED) { ret = -EPIPE; goto out; } SET_TX_CHANNEL_FLAG(channel, fBLOCKREADINTR, 0); ret = wait_event_interruptible(channel->fblockread_event, Loading @@ -765,6 +761,12 @@ static int __qcom_smd_send(struct qcom_smd_channel *channel, const void *data, SET_TX_CHANNEL_FLAG(channel, fBLOCKREADINTR, 1); } /* Fail if the channel was closed */ if (channel->state != SMD_CHANNEL_OPENED) { ret = -EPIPE; goto out; } SET_TX_CHANNEL_FLAG(channel, fTAIL, 0); qcom_smd_write_fifo(channel, hdr, sizeof(hdr)); Loading