Message ID | 1582897461-15105-7-git-send-email-dennis-yc.hsieh@mediatek.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | support gce on mt6779 platform | expand |
Hi, Dennis: On Fri, 2020-02-28 at 21:44 +0800, Dennis YC Hsieh wrote: > Return error code to client if send message fail, > so that client has chance to error handling. > > Fixes: 576f1b4bc802 ("soc: mediatek: Add Mediatek CMDQ helper") > Signed-off-by: Dennis YC Hsieh <dennis-yc.hsieh@mediatek.com> > --- > drivers/soc/mediatek/mtk-cmdq-helper.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/soc/mediatek/mtk-cmdq-helper.c b/drivers/soc/mediatek/mtk-cmdq-helper.c > index 2e1bc513569b..0698612de5ad 100644 > --- a/drivers/soc/mediatek/mtk-cmdq-helper.c > +++ b/drivers/soc/mediatek/mtk-cmdq-helper.c > @@ -351,11 +351,11 @@ int cmdq_pkt_flush_async(struct cmdq_pkt *pkt, cmdq_async_flush_cb cb, > spin_unlock_irqrestore(&client->lock, flags); > } > > - mbox_send_message(client->chan, pkt); > + err = mbox_send_message(client->chan, pkt); > /* We can send next packet immediately, so just call txdone. */ > mbox_client_txdone(client->chan, 0); If error happen, why tx is done? I think you should return immediately when error happen. Regards, CK > > - return 0; > + return err; > } > EXPORT_SYMBOL(cmdq_pkt_flush_async); >
Hi CK, Thanks for your comment. On Fri, 2020-02-28 at 23:39 +0800, CK Hu wrote: > Hi, Dennis: > > On Fri, 2020-02-28 at 21:44 +0800, Dennis YC Hsieh wrote: > > Return error code to client if send message fail, > > so that client has chance to error handling. > > > > Fixes: 576f1b4bc802 ("soc: mediatek: Add Mediatek CMDQ helper") > > Signed-off-by: Dennis YC Hsieh <dennis-yc.hsieh@mediatek.com> > > --- > > drivers/soc/mediatek/mtk-cmdq-helper.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/soc/mediatek/mtk-cmdq-helper.c b/drivers/soc/mediatek/mtk-cmdq-helper.c > > index 2e1bc513569b..0698612de5ad 100644 > > --- a/drivers/soc/mediatek/mtk-cmdq-helper.c > > +++ b/drivers/soc/mediatek/mtk-cmdq-helper.c > > @@ -351,11 +351,11 @@ int cmdq_pkt_flush_async(struct cmdq_pkt *pkt, cmdq_async_flush_cb cb, > > spin_unlock_irqrestore(&client->lock, flags); > > } > > > > - mbox_send_message(client->chan, pkt); > > + err = mbox_send_message(client->chan, pkt); > > /* We can send next packet immediately, so just call txdone. */ > > mbox_client_txdone(client->chan, 0); > > If error happen, why tx is done? I think you should return immediately > when error happen. ok, I will return error code directly. Regards, Dennis > > Regards, > CK > > > > > - return 0; > > + return err; > > } > > EXPORT_SYMBOL(cmdq_pkt_flush_async); > > > >
diff --git a/drivers/soc/mediatek/mtk-cmdq-helper.c b/drivers/soc/mediatek/mtk-cmdq-helper.c index 2e1bc513569b..0698612de5ad 100644 --- a/drivers/soc/mediatek/mtk-cmdq-helper.c +++ b/drivers/soc/mediatek/mtk-cmdq-helper.c @@ -351,11 +351,11 @@ int cmdq_pkt_flush_async(struct cmdq_pkt *pkt, cmdq_async_flush_cb cb, spin_unlock_irqrestore(&client->lock, flags); } - mbox_send_message(client->chan, pkt); + err = mbox_send_message(client->chan, pkt); /* We can send next packet immediately, so just call txdone. */ mbox_client_txdone(client->chan, 0); - return 0; + return err; } EXPORT_SYMBOL(cmdq_pkt_flush_async);
Return error code to client if send message fail, so that client has chance to error handling. Fixes: 576f1b4bc802 ("soc: mediatek: Add Mediatek CMDQ helper") Signed-off-by: Dennis YC Hsieh <dennis-yc.hsieh@mediatek.com> --- drivers/soc/mediatek/mtk-cmdq-helper.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)