Uploaded image for project: 'Lustre Documentation'
  1. Lustre Documentation
  2. LUDOC-503

"Deciding on NID Ranges" incorreclty states network ID can be hex

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Minor
    • None
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      Current Doc:

      <nidlist>       :== <nidrange> [ ' ' <nidrange> ]
      <nidrange>      :== <addrrange> '@' <net>
      <addrrange>     :== '*' |
                              <ipaddr_range> |
                              <numaddr_range>
      <ipaddr_range>  :==
              <numaddr_range>.<numaddr_range>.<numaddr_range>.<numaddr_range>
      <numaddr_range> :== <number> |
                              <expr_list>
      <expr_list>     :== '[' <range_expr> [ ',' <range_expr>] ']'
      <range_expr>    :== <number> |
                              <number> '-' <number> |
                              <number> '-' <number> '/' <number>
      <net>           :== <netname> | <netname><number>
      <netname>       :== "lo" | "tcp" | "o2ib" | "gni"
      <number>        :== <nonnegative decimal> | <hexadecimal>

       

      I do not believe that <number> can be hex when specifying a NID.  libcfs_str2nid() only processes the network number as an unsigned decimal.

       

      The inline documentation in (both) nidstrings.c specifies struct nidrange this way:

       /**
       * Nid range list syntax.
       * \verbatim
       *
       * <nidlist>         :== <nidrange> [ ' ' <nidrange> ]
       * <nidrange>         :== <addrrange> '@' <net>
       * <addrrange>         :== '*' |
       *             <ipaddr_range> |
       *             <cfs_expr_list>
       * <ipaddr_range>    :== <cfs_expr_list>.<cfs_expr_list>.<cfs_expr_list>.
       *             <cfs_expr_list>
       * <cfs_expr_list>   :== <number> |
       *             <expr_list>
       * <expr_list>         :== '[' <range_expr> [ ',' <range_expr>] ']'
       * <range_expr>      :== <number> |
       *             <number> '-' <number> |
       *             <number> '-' <number> '/' <number>
       * <net>         :== <netname> | <netname><number>
       * <netname>         :== "lo" | "tcp" | "o2ib" | "cib" | "openib" | "iib" |
       *             "vib" | "ra" | "elan" | "mx" | "ptl"
       * \endverbatim
       */
      

      Attachments

        Activity

          People

            LM-Triage Lustre Manual Triage
            utopiabound Nathaniel Clark
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: