Details

    • Bug
    • Resolution: Fixed
    • Blocker
    • Lustre 2.7.0
    • None
    • None
    • 3
    • 15943

    Description

      Although very liketly, but there is no guarantee that request_out_callback will happen before reply_in_callback, if a request got reply before got request_out_callback(), then ptlrpc_unregister_reply() will return false because request has not been unlinked and req:;rq_req_unlink is not set to false.

      static inline int                       
      ptlrpc_client_recv_or_unlink(struct ptlrpc_request *req)
      {               
              int rc;
                      
              spin_lock(&req->rq_lock);          
              ......
              rc = req->rq_receiving_reply ;
              rc = rc || req->rq_req_unlink || req->rq_reply_unlink;
              spin_unlock(&req->rq_lock);
              return rc;
      }         
      

      After this, even request_in_callback() happened, there is no wakeup for this request, ptlrpcd or app thread will keep waiting.

      Attachments

        Activity

          [LU-5696] missing wakeup for ptlrpc_check_set
          mdiep Minh Diep made changes -
          Link New: This issue is related to JFC-20 [ JFC-20 ]
          mdiep Minh Diep made changes -
          Link Original: This issue is related to JFC-17 [ JFC-17 ]
          mdiep Minh Diep made changes -
          Link Original: This issue is related to BULL-24 [ BULL-24 ]
          mdiep Minh Diep made changes -
          Link New: This issue is related to BULL-24 [ BULL-24 ]
          pjones Peter Jones made changes -
          Link New: This issue is duplicated by BULL-24 [ BULL-24 ]
          mdiep Minh Diep made changes -
          Link New: This issue is related to LDEV-243 [ LDEV-243 ]
          mdiep Minh Diep made changes -
          Link New: This issue is related to JFC-17 [ JFC-17 ]
          ys Yang Sheng made changes -
          Link New: This issue duplicates SGI-241 [ SGI-241 ]
          adilger Andreas Dilger made changes -
          Link Original: This issue is duplicated by LU-5712 [ LU-5712 ]
          adilger Andreas Dilger made changes -
          Link New: This issue is duplicated by LU-5712 [ LU-5712 ]

          People

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

            Dates

              Created:
              Updated:
              Resolved: