Details
-
Improvement
-
Resolution: Fixed
-
Minor
-
None
-
9223372036854775807
Description
In struct changelog_ext_nid there is the possibility of using a larger lnet_nidv6_t to store IPv6 NIDs. This needs to be implemented in print_changelog_rec(), lfs_changelog() to understand the larger NIDs. It seems possible to just store the larger NID therein, and check whether extra and padding are zero to distinguish between IPv4 and IPv6 addresses. It would probably make sense to use the first two __u64 for the IPv6 address, and padding for the lnet network type/number.
struct changelog_ext_nid { /* have __u64 instead of lnet_nid_t type for use by client api */ __u64 cr_nid; /* for use when IPv6 support is added */ __u64 extra; __u32 padding; };