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

Fix destination NID for discovery PUSH

Details

    • Bug
    • Resolution: Fixed
    • Minor
    • Lustre 2.15.0
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      If we're sending a discovery PUSH after receiving a discovery
      REPLY then we want to send via the same NID that the reply was
      sent to. This introduces a challenge in selecting an appropriate
      destination NID for the PUSH because lnet_select_pathway() will not
      run the MR selection algorithm for choosing a peer NI if the source
      NI has been specified.

      It is reasonable to assume that the NID used by the message
      originator in sending the REPLY is a suitable destination for the
      discovery PUSH. Thus, we record this NID in the same location we
      currently record the lp_disc_src_nid, and use it when sending the
      PUSH. With this change, the only other user of lnet_peer_select_nid()
      is lnet_peer_send_ping(). In the ping case we do not set a source NID,
      so lnet_select_pathway() is free to choose any peer NI. So this change
      allows us to get rid of lnet_peer_select_nid() altogether.

      Alternatively, we would need to reproduce a lot of the path selection
      algorithm inside lnet_peer_select_nid() in order to avoid sending to
      unhealthy NIDs. It seems undesirable and unnecessary to duplicate that
      logic.

      Attachments

        Activity

          [LU-14660] Fix destination NID for discovery PUSH
          pjones Peter Jones added a comment -

          Landed for 2.15

          pjones Peter Jones added a comment - Landed for 2.15

          Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/43507/
          Subject: LU-14660 lnet: Fix destination NID for discovery PUSH
          Project: fs/lustre-release
          Branch: master
          Current Patch Set:
          Commit: dce2f7d1987711dfdced903b13e67091cffe9628

          gerrit Gerrit Updater added a comment - Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/43507/ Subject: LU-14660 lnet: Fix destination NID for discovery PUSH Project: fs/lustre-release Branch: master Current Patch Set: Commit: dce2f7d1987711dfdced903b13e67091cffe9628

          Chris Horn (chris.horn@hpe.com) uploaded a new patch: https://review.whamcloud.com/43507
          Subject: LU-14660 lnet: Fix destination NID for discovery PUSH
          Project: fs/lustre-release
          Branch: master
          Current Patch Set: 1
          Commit: 61cd56a6d0abf99b995fd5877fb0146771f14f6f

          gerrit Gerrit Updater added a comment - Chris Horn (chris.horn@hpe.com) uploaded a new patch: https://review.whamcloud.com/43507 Subject: LU-14660 lnet: Fix destination NID for discovery PUSH Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: 61cd56a6d0abf99b995fd5877fb0146771f14f6f

          People

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

            Dates

              Created:
              Updated:
              Resolved: