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

Clear LDD_F_NO_PRIMNODE flag when erasing failover.node parameter

    XMLWordPrintable

Details

    • Improvement
    • Resolution: Unresolved
    • Medium
    • None
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      When a target is formatted with `--servicenode` option, it will have `LDD_F_NO_PRIMNODE`, which is expected. However, when we use `tunefs.lustre` to erase `failover.node` parameter, the `LDD_F_NO_PRIMNODE` flag stays, which will make this target not mountable because it will exit at:

      1204 static int server_nid2radix(void *data, struct lnet_nid *nid)
      1205 {
      1206         struct nid_fetch_data *nfd = data;
      1207         struct lnet_nid *tmp;
      1208                                                                                              1209         if (nid_is_lo0(nid))
      1210                 return 0;
      1211                                                                                              1212         if (test_bit(LMD_FLG_NO_PRIMNODE, nfd->nfd_lmd->lmd_flags) &&
      1213             class_match_nid(nfd->nfd_lmd->lmd_params, PARAM_FAILNODE, nid) < 1)
      1214                 return 0; <-- exit here.

       

      The current workload is to set `--failover` NID, which will clear that flag, and then erase it again.

      It seems reasonable to clear the flag when we erase the failover node parameter.

      Attachments

        Activity

          People

            tappro Mikhail Pershin
            Jinshan Jinshan Xiong
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: