[LU-8193] request mbits isn't set properly for EINPROGRESS resend Created: 23/May/16  Updated: 30/Jan/17  Resolved: 31/May/16

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: Lustre 2.9.0

Type: Bug Priority: Major
Reporter: Niu Yawei (Inactive) Assignee: Niu Yawei (Inactive)
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Duplicate
Related
is related to LU-7990 Large bulk IO support Resolved
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.



 Comments   
Comment by Gerrit Updater [ 23/May/16 ]

Niu Yawei (yawei.niu@intel.com) uploaded a new patch: http://review.whamcloud.com/20377
Subject: LU-8193 ptlrpc: set proper mbits for EINPROGRESS resend
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: f5665fe04682ad2c248b0f0d85e22287a3e96e02

Comment by Gerrit Updater [ 31/May/16 ]

Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/20377/
Subject: LU-8193 ptlrpc: set proper mbits for EINPROGRESS resend
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 12daa707eada5dd8ca1280b133ff52d13daf4522

Comment by Peter Jones [ 31/May/16 ]

Landed for 2.9

Generated at Sat Feb 10 02:15:26 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.