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

request mbits isn't set properly for EINPROGRESS resend

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: Lustre 2.9.0
    • Labels:
      None
    • Severity:
      3
    • Rank (Obsolete):
      9223372036854775807

      Description

      in ptl_send_rpc():

              /* If it's the first time to resend the request for EINPROGRESS,
               * we need to allocate a new XID (see after_reply()), it's different
               * from the resend for reply timeout. */
              if (request->rq_nr_resend != 0 &&
                  list_empty(&request->rq_unreplied_list)) {
                      __u64 min_xid = 0;
                      /* resend for EINPROGRESS, allocate new xid to avoid reply
                       * reconstruction */
                      spin_lock(&imp->imp_lock);
                      ptlrpc_assign_next_xid_nolock(request);
                      request->rq_mbits = request->rq_xid;
                      min_xid = ptlrpc_known_replied_xid(imp);
                      spin_unlock(&imp->imp_lock);
      
                      lustre_msg_set_last_xid(request->rq_reqmsg, min_xid);
                      DEBUG_REQ(D_RPCTRACE, request, "Allocating new xid for "
                                "resend on EINPROGRESS");
              } else if (request->rq_bulk != NULL) {
                      ptlrpc_set_bulk_mbits(request);
                      lustre_msg_set_mbits(request->rq_reqmsg, request->rq_mbits);
              }
      

      lustre_msg_set_mbits() isn't called for first time EINPROGRESS resend, so the mbits won't be set properly in ptlrpc_body. This part of code needs be revised a bit.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                niu Niu Yawei (Inactive)
                Reporter:
                niu Niu Yawei (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: