diff mbox series

[RESEND,rdma-next] RDMA/cm: Trace icm_send_rej event before the cm state is reset

Message ID 20230330072351.481200-1-markzhang@nvidia.com (mailing list archive)
State Accepted
Headers show
Series [RESEND,rdma-next] RDMA/cm: Trace icm_send_rej event before the cm state is reset | expand

Commit Message

Mark Zhang March 30, 2023, 7:23 a.m. UTC
Trace icm_send_rej event before the cm state is reset to idle, so that
correct cm state will be logged. For example when an incoming request is
rejected, the old trace log was:
    icm_send_rej: local_id=961102742 remote_id=3829151631 state=IDLE reason=REJ_CONSUMER_DEFINED
With this patch:
    icm_send_rej: local_id=312971016 remote_id=3778819983 state=MRA_REQ_SENT reason=REJ_CONSUMER_DEFINED

Signed-off-by: Mark Zhang <markzhang@nvidia.com>
Fixes: 8dc105befe16 ("RDMA/cm: Add tracepoints to track MAD send operations")
---
 drivers/infiniband/core/cm.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Leon Romanovsky March 30, 2023, 7:37 a.m. UTC | #1
On Thu, Mar 30, 2023 at 10:23:51AM +0300, Mark Zhang wrote:
> Trace icm_send_rej event before the cm state is reset to idle, so that
> correct cm state will be logged. For example when an incoming request is
> rejected, the old trace log was:
>     icm_send_rej: local_id=961102742 remote_id=3829151631 state=IDLE reason=REJ_CONSUMER_DEFINED
> With this patch:
>     icm_send_rej: local_id=312971016 remote_id=3778819983 state=MRA_REQ_SENT reason=REJ_CONSUMER_DEFINED
> 
> Signed-off-by: Mark Zhang <markzhang@nvidia.com>
> Fixes: 8dc105befe16 ("RDMA/cm: Add tracepoints to track MAD send operations")
> ---
>  drivers/infiniband/core/cm.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

For future reference:
1. You sent new version, so your patch should have vXXX in subject and not RESEND.
2. Changelog is missing.
3. Signed-off-by should be last.

There is no need to resend this patch, we will fix when we will apply it.

Thanks
Mark Zhang March 30, 2023, 7:39 a.m. UTC | #2
On 3/30/2023 3:37 PM, Leon Romanovsky wrote:
> On Thu, Mar 30, 2023 at 10:23:51AM +0300, Mark Zhang wrote:
>> Trace icm_send_rej event before the cm state is reset to idle, so that
>> correct cm state will be logged. For example when an incoming request is
>> rejected, the old trace log was:
>>      icm_send_rej: local_id=961102742 remote_id=3829151631 state=IDLE reason=REJ_CONSUMER_DEFINED
>> With this patch:
>>      icm_send_rej: local_id=312971016 remote_id=3778819983 state=MRA_REQ_SENT reason=REJ_CONSUMER_DEFINED
>>
>> Signed-off-by: Mark Zhang <markzhang@nvidia.com>
>> Fixes: 8dc105befe16 ("RDMA/cm: Add tracepoints to track MAD send operations")
>> ---
>>   drivers/infiniband/core/cm.c | 3 ++-
>>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> For future reference:
> 1. You sent new version, so your patch should have vXXX in subject and not RESEND.
> 2. Changelog is missing.
> 3. Signed-off-by should be last.
> 
> There is no need to resend this patch, we will fix when we will apply it.
> 

Thank you Leon and sorry for the trouble:)
Leon Romanovsky April 9, 2023, 9:53 a.m. UTC | #3
On Thu, 30 Mar 2023 10:23:51 +0300, Mark Zhang wrote:
> Trace icm_send_rej event before the cm state is reset to idle, so that
> correct cm state will be logged. For example when an incoming request is
> rejected, the old trace log was:
>     icm_send_rej: local_id=961102742 remote_id=3829151631 state=IDLE reason=REJ_CONSUMER_DEFINED
> With this patch:
>     icm_send_rej: local_id=312971016 remote_id=3778819983 state=MRA_REQ_SENT reason=REJ_CONSUMER_DEFINED
> 
> [...]

Applied, thanks!

[1/1] RDMA/cm: Trace icm_send_rej event before the cm state is reset
      https://git.kernel.org/rdma/rdma/c/bd9de1badac7e4

Best regards,
diff mbox series

Patch

diff --git a/drivers/infiniband/core/cm.c b/drivers/infiniband/core/cm.c
index 603c0aecc361..ff58058aeadc 100644
--- a/drivers/infiniband/core/cm.c
+++ b/drivers/infiniband/core/cm.c
@@ -2912,6 +2912,8 @@  static int cm_send_rej_locked(struct cm_id_private *cm_id_priv,
 	    (ari && ari_length > IB_CM_REJ_ARI_LENGTH))
 		return -EINVAL;
 
+	trace_icm_send_rej(&cm_id_priv->id, reason);
+
 	switch (state) {
 	case IB_CM_REQ_SENT:
 	case IB_CM_MRA_REQ_RCVD:
@@ -2942,7 +2944,6 @@  static int cm_send_rej_locked(struct cm_id_private *cm_id_priv,
 		return -EINVAL;
 	}
 
-	trace_icm_send_rej(&cm_id_priv->id, reason);
 	ret = ib_post_send_mad(msg, NULL);
 	if (ret) {
 		cm_free_msg(msg);