Details

    • Bug
    • Resolution: Fixed
    • Minor
    • Lustre 2.7.0, Lustre 2.5.4
    • None
    • None
    • 3
    • 15470

    Description

      ptlrpcd_check() always scan all requests on ptlrpc_request_set::set_requests and try to finish completed requests, this is low efficiency. Even worse, l_wait_event() always checks condition for twice before sleeping and one more time after waking up, which means it will call ptlrpcd_check() for three times in each loop.

      The solution is quite simple, ptlrpc_check_set() can move completed requests at head of ptlrpc_request_set::set_requests, so ptlrpcd_check doesn't need to scan all requests on a rqset anymore.

      This is an improvement for LU-5053.

      Attachments

        Issue Links

          Activity

            [LU-5548] avoid list scan in ptlrpcd_check

            Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/12265/
            Subject: LU-5548 ptlrpc: avoid list scan in ptlrpcd_check
            Project: fs/lustre-release
            Branch: b2_5
            Current Patch Set:
            Commit: f3c91d57afb631d9d008710b4d144734bfe97a4f

            gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/12265/ Subject: LU-5548 ptlrpc: avoid list scan in ptlrpcd_check Project: fs/lustre-release Branch: b2_5 Current Patch Set: Commit: f3c91d57afb631d9d008710b4d144734bfe97a4f

            patch landed

            liang Liang Zhen (Inactive) added a comment - patch landed
            liang Liang Zhen (Inactive) added a comment - Patch is here: http://review.whamcloud.com/#/c/11513/

            People

              liang Liang Zhen (Inactive)
              liang Liang Zhen (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: