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

ncf_obj update issue after save config

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Major
    • Lustre 2.17.0
    • Lustre 2.14.0, Lustre 2.16.0
    • None
    • 3
    • 9223372036854775807

    Description

      I am highlighting the issue in the nodemap_save_all_caches() function, where ncf_obj is set to NULL, If nodemap_save_config_cache() fails, ncf_obj remains NULL, leading to additional issues and panic later

      A simple fix would be to restore ncf_obj to its previous value if nodemap_save_config_cache() fails. I have included a snippet of the affected code for reference below. My question is how to test the fix on a single node setup. Please provide me some insight on testing of this fix. I do see Kit Westneat <kit.westneat@gmail.com> was the original author of this code.

      1313                 /* put current config file so save conf can rewrite it */

      1314                 dt_object_put_nocache(&env, ncf->ncf_obj);

      1315                 ncf->ncf_obj = NULL; <<< this is the cause of the problem

      1316 

      1317                 o = nodemap_save_config_cache(&env, dev, ncf->ncf_los); <<< if this fails the ncf_obj will be null and panic the system

      1318                 if (IS_ERR(o))

      1319                         CWARN("%s: error writing to nodemap config: rc = %d\n",

      1320                               obd->obd_name, rc);

      1321                 else

      1322                         ncf->ncf_obj = o;

       

      other way to fix can be to delete and clean up the old ncf_obj (that was updated by  "nodemap_save_config_cache()"). Please provide me your suggestions to resolve this issue.

       

      not be required.

      Attachments

        Activity

          People

            rajeevm Rajeev Mishra
            rajeevm Rajeev Mishra
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: