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

restore flags on ptlrpc_connect_import failure to prevent LBUG

    Details

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

      Description

      Commit 1fc013f90175d1e50d7a22b404ad6abd31a43e38 in LU-5319 failed to restore the original flags ptlrpc_connect_import failure. Handle this gracefully so the system doesn't LBUG.

      I'll submit a patch to gerrit when I get a chance to fix my keys. In the mean time the diff is here for reference.

      diff --git a/lustre/ldlm/ldlm_lib.c b/lustre/ldlm/ldlm_lib.c
      index 2203acb..b68d331 100644
      --- a/lustre/ldlm/ldlm_lib.c
      +++ b/lustre/ldlm/ldlm_lib.c
      @@ -570,6 +570,8 @@ int client_connect_import(const struct lu_env *env,
       
               rc = ptlrpc_connect_import(imp);
               if (rc != 0) {
      +               if (data && is_mdc)
      +                       data->ocd_connect_flags &= ~OBD_CONNECT_MULTIMODRPCS;
                       LASSERT (imp->imp_state == LUSTRE_IMP_DISCON);
                       GOTO(out_ldlm, rc);
               }
      

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                jhammond John Hammond
                Reporter:
                jfilizetti Jeremy Filizetti
              • Votes:
                0 Vote for this issue
                Watchers:
                9 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: