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

Assertion and hang upon lod_add_device failure

    XMLWordPrintable

    Details

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

      Description

      See following assertion:

          (lod_lov.c:361:lod_add_device()) lustre-OSTe42a-osc-MDT0000: can't set up pool, failed with -12
          10059:0:(osp_dev.c:473:osp_disconnect()) ASSERTION( imp != ((void *)0) ) failed:
          10059:0:(osp_dev.c:473:osp_disconnect()) LBUG
          CPU: 1 PID: 10059 Comm: llog_process_th Kdump: loaded Tainted: G
          
          Problem is obd_disconnect() will cleanup @imp and set NULL.
          |->osp_obd_disconnect
              |->class_manual_cleanup
                 |->class_process_config
                       |->class_cleanup
                            |->obd_precleanup
                                  |->osp_device_fini
                                        |->client_obd_cleanup
          
          While ldo_process_config() will try to access @imp again:
          |->ldo_process_config
            |->osp_shutdown
             |->osp_disconnect
               LASSERT(imp != NULL) --->fail here
          
          Another problem is if we failed before obd_connect().
          we will hang on with mount:
          |->ldo_process_config
            |->osp_shutdown
             |->osp_disconnect
              |->ptlrpc_disconnect_import
               |->rc = l_wait_event(imp->imp_recovery_waitq,
                      !ptlrpc_import_in_recovery(imp), &lwi);
      

      Since connect is not called, imp state will keep DISCONN.

        Attachments

          Activity

            People

            • Assignee:
              wshilong Wang Shilong
              Reporter:
              wshilong Wang Shilong
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: