Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-12440

Correct lnet_is_health_check when msg status is 0

Details

    • Improvement
    • Resolution: Fixed
    • Minor
    • Lustre 2.13.0
    • None
    • None
    • 9223372036854775807

    Description

      I don't think this leads to misbehavior, hence this ticket is not a "Bug", but when we're sending to the lolnd neither msg_txpeer nor msg_rxpeer are set. As a result, all sends to lolnd result in a misleading error message in the dklog from lnet_is_health_check():

      00000400:00000200:18.0:1560465004.906149:0:28738:0:(lib-move.c:4730:LNetPut()) LNetPut msg ffff881f44e36a00 -> 12345-0@lo
      00000400:00000200:18.0:1560465004.923925:0:28738:0:(lib-msg.c:859:lnet_is_health_check()) msg ffff881f44e36a00 failed too early to retry and send
      

      from this code:

              if ((msg->msg_tx_committed && !msg->msg_txpeer) ||
                  (msg->msg_rx_committed && !msg->msg_rxpeer)) {
                      CDEBUG(D_NET, "msg %p failed too early to retry and send\n",
                             msg);
                      return false;
              }
      

      We should only be printing this message if the message actually failed. i.e. the msg->msg_ev.status != 0.

      Attachments

        Activity

          People

            hornc Chris Horn
            hornc Chris Horn
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: