case VIBNAL:
case OPENIBNAL:
case RANAL:
- case SOCKNAL:
- snprintf(str, PTL_NALFMT_SIZE, "%u:%u.%u.%u.%u",
- (__u32)(nid >> 32), HIPQUAD(nid));
+ case SOCKNAL: {
+ /* HIPQUAD requires __u32, but we can't cast in it */
+ __u32 nid32 = (__u32)nid;
+ if ((__u32)(nid >> 32)) {
+ snprintf(str, PTL_NALFMT_SIZE, "%u:%u.%u.%u.%u",
+ (__u32)(nid >> 32), HIPQUAD(nid32));
+ } else {
+ snprintf(str, PTL_NALFMT_SIZE, "%u.%u.%u.%u",
+ HIPQUAD(nid32));
+ }
break;
+ }
case QSWNAL:
case GMNAL:
case LONAL: