Message ID | 20241212233333.3743239-4-brianvv@google.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | IDPF Virtchnl: Enhance error reporting & fix locking/workqueue issues | expand |
Dear Brian, dear Manoj, Thank you for your patch. Am 13.12.24 um 00:33 schrieb Brian Vazquez: > From: Manoj Vishwanathan <manojvishy@google.com> > > Add more information related to the transaction like cookie, vc_op, > salt when transaction times out and include similar information > when transaction salt does not match. If possible, the salt mismatch should also go into the summary/title. Maybe: idpf: Add more info during virtchnl transaction timeout/salt mismatch > Info output for transaction timeout: > ------------------- > (op:5015 cookie:45fe vc_op:5015 salt:45 timeout:60000ms) > ------------------- For easier comparison, before it was: (op 5015, 60000ms) > Signed-off-by: Manoj Vishwanathan <manojvishy@google.com> > Signed-off-by: Brian Vazquez <brianvv@google.com> > Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> > Reviewed-by: Pavan Kumar Linga <pavan.kumar.linga@intel.com> > --- > drivers/net/ethernet/intel/idpf/idpf_virtchnl.c | 13 +++++++++---- > 1 file changed, 9 insertions(+), 4 deletions(-) > > diff --git a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c > index 13274544f7f4..c7d82f142f4e 100644 > --- a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c > +++ b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c > @@ -517,8 +516,10 @@ static ssize_t idpf_vc_xn_exec(struct idpf_adapter *adapter, > retval = -ENXIO; > goto only_unlock; > case IDPF_VC_XN_WAITING: > - dev_notice_ratelimited(&adapter->pdev->dev, "Transaction timed-out (op %d, %dms)\n", > - params->vc_op, params->timeout_ms); > + dev_notice_ratelimited(&adapter->pdev->dev, > + "Transaction timed-out (op:%d cookie:%04x vc_op:%d salt:%02x timeout:%dms)\n", > + params->vc_op, cookie, xn->vc_op, > + xn->salt, params->timeout_ms); > retval = -ETIME; > break; > case IDPF_VC_XN_COMPLETED_SUCCESS: > @@ -615,8 +613,9 @@ idpf_vc_xn_forward_reply(struct idpf_adapter *adapter, > idpf_vc_xn_lock(xn); > salt = FIELD_GET(IDPF_VC_XN_SALT_M, msg_info); > if (xn->salt != salt) { > - dev_err_ratelimited(&adapter->pdev->dev, "Transaction salt does not match (%02x != %02x)\n", > - xn->salt, salt); > + dev_err_ratelimited(&adapter->pdev->dev, "Transaction salt does not match (exp:%d@%02x(%d) != got:%d@%02x)\n", > + xn->vc_op, xn->salt, xn->state, > + ctlq_msg->cookie.mbx.chnl_opcode, salt); > idpf_vc_xn_unlock(xn); > return -EINVAL; > } Reviewed-by: Paul Menzel <pmenzel@molgen.mpg.de> Kind regards, Paul
Thanks for the feedback, I will address it in the next version. On Fri, Dec 13, 2024 at 4:36 AM Paul Menzel <pmenzel@molgen.mpg.de> wrote: > > Dear Brian, dear Manoj, > > > Thank you for your patch. > > Am 13.12.24 um 00:33 schrieb Brian Vazquez: > > From: Manoj Vishwanathan <manojvishy@google.com> > > > > Add more information related to the transaction like cookie, vc_op, > > salt when transaction times out and include similar information > > when transaction salt does not match. > > If possible, the salt mismatch should also go into the summary/title. Maybe: > > idpf: Add more info during virtchnl transaction timeout/salt mismatch > > > Info output for transaction timeout: > > ------------------- > > (op:5015 cookie:45fe vc_op:5015 salt:45 timeout:60000ms) > > ------------------- > > For easier comparison, before it was: > > (op 5015, 60000ms) > > > Signed-off-by: Manoj Vishwanathan <manojvishy@google.com> > > Signed-off-by: Brian Vazquez <brianvv@google.com> > > Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> > > Reviewed-by: Pavan Kumar Linga <pavan.kumar.linga@intel.com> > > --- > > drivers/net/ethernet/intel/idpf/idpf_virtchnl.c | 13 +++++++++---- > > 1 file changed, 9 insertions(+), 4 deletions(-) > > > > diff --git a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c > > index 13274544f7f4..c7d82f142f4e 100644 > > --- a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c > > +++ b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c > > @@ -517,8 +516,10 @@ static ssize_t idpf_vc_xn_exec(struct idpf_adapter *adapter, > > retval = -ENXIO; > > goto only_unlock; > > case IDPF_VC_XN_WAITING: > > - dev_notice_ratelimited(&adapter->pdev->dev, "Transaction timed-out (op %d, %dms)\n", > > - params->vc_op, params->timeout_ms); > > + dev_notice_ratelimited(&adapter->pdev->dev, > > + "Transaction timed-out (op:%d cookie:%04x vc_op:%d salt:%02x timeout:%dms)\n", > > + params->vc_op, cookie, xn->vc_op, > > + xn->salt, params->timeout_ms); > > retval = -ETIME; > > break; > > case IDPF_VC_XN_COMPLETED_SUCCESS: > > @@ -615,8 +613,9 @@ idpf_vc_xn_forward_reply(struct idpf_adapter *adapter, > > idpf_vc_xn_lock(xn); > > salt = FIELD_GET(IDPF_VC_XN_SALT_M, msg_info); > > if (xn->salt != salt) { > > - dev_err_ratelimited(&adapter->pdev->dev, "Transaction salt does not match (%02x != %02x)\n", > > - xn->salt, salt); > > + dev_err_ratelimited(&adapter->pdev->dev, "Transaction salt does not match (exp:%d@%02x(%d) != got:%d@%02x)\n", > > + xn->vc_op, xn->salt, xn->state, > > + ctlq_msg->cookie.mbx.chnl_opcode, salt); > > idpf_vc_xn_unlock(xn); > > return -EINVAL; > > } > > Reviewed-by: Paul Menzel <pmenzel@molgen.mpg.de> > > > Kind regards, > > Paul
diff --git a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c index 13274544f7f4..c7d82f142f4e 100644 --- a/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c +++ b/drivers/net/ethernet/intel/idpf/idpf_virtchnl.c @@ -517,8 +516,10 @@ static ssize_t idpf_vc_xn_exec(struct idpf_adapter *adapter, retval = -ENXIO; goto only_unlock; case IDPF_VC_XN_WAITING: - dev_notice_ratelimited(&adapter->pdev->dev, "Transaction timed-out (op %d, %dms)\n", - params->vc_op, params->timeout_ms); + dev_notice_ratelimited(&adapter->pdev->dev, + "Transaction timed-out (op:%d cookie:%04x vc_op:%d salt:%02x timeout:%dms)\n", + params->vc_op, cookie, xn->vc_op, + xn->salt, params->timeout_ms); retval = -ETIME; break; case IDPF_VC_XN_COMPLETED_SUCCESS: @@ -615,8 +613,9 @@ idpf_vc_xn_forward_reply(struct idpf_adapter *adapter, idpf_vc_xn_lock(xn); salt = FIELD_GET(IDPF_VC_XN_SALT_M, msg_info); if (xn->salt != salt) { - dev_err_ratelimited(&adapter->pdev->dev, "Transaction salt does not match (%02x != %02x)\n", - xn->salt, salt); + dev_err_ratelimited(&adapter->pdev->dev, "Transaction salt does not match (exp:%d@%02x(%d) != got:%d@%02x)\n", + xn->vc_op, xn->salt, xn->state, + ctlq_msg->cookie.mbx.chnl_opcode, salt); idpf_vc_xn_unlock(xn); return -EINVAL; }