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

change positional struct initializers to C99 initializers

Details

    • 17372

    Description

      In the libcfs and lnet code there are many places where positional struct initializers are used instead of named C99 initializers:

      static struct netstrfns  libcfs_netstrfns[] = {
              {/* .nf_type      */  LOLND,
               /* .nf_name      */  "lo",
               /* .nf_modname   */  "klolnd",
               /* .nf_addr2str  */  libcfs_decnum_addr2str,
               /* .nf_str2addr  */  libcfs_lo_str2addr,
               /* .nf_parse_addr*/  libcfs_num_parse,
               /* .nf_print_addrlist*/  libcfs_num_addr_range_print,
               /* .nf_match_addr*/      libcfs_num_match,
               /* .nf_is_contiguous */  cfs_num_is_contiguous,
               /* .nf_min_max   */      cfs_num_min_max},
      

      instead of

      static struct netstrfns  libcfs_netstrfns[] = {
              {
                       .nf_type              =  LOLND,
                       .nf_name              = "lo",
                       .nf_modname           = "klolnd",
                       .nf_addr2str          = libcfs_decnum_addr2str,
                       .nf_str2addr          = libcfs_lo_str2addr,
                       .nf_parse_addr        = libcfs_num_parse,
                       .nf_print_addrlist    = libcfs_num_addr_range_print,
                       .nf_match_addr        = libcfs_num_match,
                       .nf_is_contiguous     = cfs_num_is_contiguous,
                       .nf_min_max           = cfs_num_min_max},
      

      This was done because WinNT didn't have C99 initializer support, but we don't care about that anymore.

      All of the positional struct initializers in libcfs, lnet, and lustre should be changed to named initializers, probably in several independent patches for different subdirectories.

      Attachments

        Activity

          [LU-6210] change positional struct initializers to C99 initializers

          Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28479/
          Subject: LU-6210 ptlrpc: Use C99 initializer in ptlrpc_register_rqbd()
          Project: fs/lustre-release
          Branch: master
          Current Patch Set:
          Commit: 3af10d510078ddf050fbda2ef80bdc6920d89f8d

          gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28479/ Subject: LU-6210 ptlrpc: Use C99 initializer in ptlrpc_register_rqbd() Project: fs/lustre-release Branch: master Current Patch Set: Commit: 3af10d510078ddf050fbda2ef80bdc6920d89f8d

          Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28421/
          Subject: LU-6210 utils: Use C99 struct initializers in lfs_getdirstripe
          Project: fs/lustre-release
          Branch: master
          Current Patch Set:
          Commit: 0568e93539ebc1bbec601182f9faba4d43ed106b

          gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28421/ Subject: LU-6210 utils: Use C99 struct initializers in lfs_getdirstripe Project: fs/lustre-release Branch: master Current Patch Set: Commit: 0568e93539ebc1bbec601182f9faba4d43ed106b

          Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/27522/
          Subject: LU-6210 utils: Use C99 initializers in lfs_changelog()
          Project: fs/lustre-release
          Branch: master
          Current Patch Set:
          Commit: 1d6d594d1043425a237585d2d5ad33599127dc3d

          gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/27522/ Subject: LU-6210 utils: Use C99 initializers in lfs_changelog() Project: fs/lustre-release Branch: master Current Patch Set: Commit: 1d6d594d1043425a237585d2d5ad33599127dc3d

          Andreas Dilger (andreas.dilger@intel.com) uploaded a new patch: https://review.whamcloud.com/28592
          Subject: LU-6210 utils: clean up optarg definitions
          Project: fs/lustre-release
          Branch: master
          Current Patch Set: 1
          Commit: c15e377f7b360d73b15c91412ea43e950f64f07a

          gerrit Gerrit Updater added a comment - Andreas Dilger (andreas.dilger@intel.com) uploaded a new patch: https://review.whamcloud.com/28592 Subject: LU-6210 utils: clean up optarg definitions Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: c15e377f7b360d73b15c91412ea43e950f64f07a

          Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28417/
          Subject: LU-6210 utils: Use C99 struct initializers in lsnapshot
          Project: fs/lustre-release
          Branch: master
          Current Patch Set:
          Commit: 6e27028b08eace5fc9a141d33499940ef00c9761

          gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28417/ Subject: LU-6210 utils: Use C99 struct initializers in lsnapshot Project: fs/lustre-release Branch: master Current Patch Set: Commit: 6e27028b08eace5fc9a141d33499940ef00c9761

          Steve Guminski (stephenx.guminski@intel.com) uploaded a new patch: https://review.whamcloud.com/28479
          Subject: LU-6210 lnet: Use C99 initializer in ptlrpc_register_rqbd()
          Project: fs/lustre-release
          Branch: master
          Current Patch Set: 1
          Commit: de18309b95d97123dc6fdd932dee1487e378d76c

          gerrit Gerrit Updater added a comment - Steve Guminski (stephenx.guminski@intel.com) uploaded a new patch: https://review.whamcloud.com/28479 Subject: LU-6210 lnet: Use C99 initializer in ptlrpc_register_rqbd() Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: de18309b95d97123dc6fdd932dee1487e378d76c

          Steve Guminski (stephenx.guminski@intel.com) uploaded a new patch: https://review.whamcloud.com/28436
          Subject: LU-6210 lnet: Use C99 struct initializer in framework.c
          Project: fs/lustre-release
          Branch: master
          Current Patch Set: 1
          Commit: e142ee7cc568319d271de821bf1aeb0e34073335

          gerrit Gerrit Updater added a comment - Steve Guminski (stephenx.guminski@intel.com) uploaded a new patch: https://review.whamcloud.com/28436 Subject: LU-6210 lnet: Use C99 struct initializer in framework.c Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: e142ee7cc568319d271de821bf1aeb0e34073335

          Steve Guminski (stephenx.guminski@intel.com) uploaded a new patch: https://review.whamcloud.com/28423
          Subject: LU-6210 utils: Use C99 struct initializers in lnetctl
          Project: fs/lustre-release
          Branch: master
          Current Patch Set: 1
          Commit: d0ad876c7011cfc1dc748a4f217206b613b3c539

          gerrit Gerrit Updater added a comment - Steve Guminski (stephenx.guminski@intel.com) uploaded a new patch: https://review.whamcloud.com/28423 Subject: LU-6210 utils: Use C99 struct initializers in lnetctl Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: d0ad876c7011cfc1dc748a4f217206b613b3c539

          Steve Guminski (stephenx.guminski@intel.com) uploaded a new patch: https://review.whamcloud.com/28421
          Subject: LU-6210 utils: Use C99 struct initializers in lfs_getdirstripe
          Project: fs/lustre-release
          Branch: master
          Current Patch Set: 1
          Commit: 7f7e46213f488a66b09e9be3b891c04bbdf082db

          gerrit Gerrit Updater added a comment - Steve Guminski (stephenx.guminski@intel.com) uploaded a new patch: https://review.whamcloud.com/28421 Subject: LU-6210 utils: Use C99 struct initializers in lfs_getdirstripe Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: 7f7e46213f488a66b09e9be3b891c04bbdf082db

          Steve Guminski (stephenx.guminski@intel.com) uploaded a new patch: https://review.whamcloud.com/28417
          Subject: LU-6210 lnet: Use C99 struct initializers in lsnapshot
          Project: fs/lustre-release
          Branch: master
          Current Patch Set: 1
          Commit: 20aed5ac4bb96ae5e5a2626d9a80fc0a61c335d6

          gerrit Gerrit Updater added a comment - Steve Guminski (stephenx.guminski@intel.com) uploaded a new patch: https://review.whamcloud.com/28417 Subject: LU-6210 lnet: Use C99 struct initializers in lsnapshot Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: 20aed5ac4bb96ae5e5a2626d9a80fc0a61c335d6

          Yes, it looks like https://review.whamcloud.com/#/c/27522/ is the only committed patch that has not yet been landed.  I just re-ran the Python script attached to this ticket, and discovered that there are still a few occurrences of C89 initializers.  I'll submit patches for them shortly.

          sguminsx Steve Guminski (Inactive) added a comment - Yes, it looks like https://review.whamcloud.com/#/c/27522/ is the only committed patch that has not yet been landed.  I just re-ran the Python script attached to this ticket, and discovered that there are still a few occurrences of C89 initializers.  I'll submit patches for them shortly.

          People

            sguminsx Steve Guminski (Inactive)
            adilger Andreas Dilger
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: