On Mon, Jul 08, 2019 at 03:23:48PM -0400, Olga Kornievskaia wrote: > static __be32 > +nfsd42_encode_nl4_server(struct nfsd4_compoundres *resp, struct nl4_server *ns) > +{ > + struct xdr_stream *xdr = &resp->xdr; > + struct nfs42_netaddr *addr; > + __be32 *p; > + > + p = xdr_reserve_space(xdr, 4); > + *p++ = cpu_to_be32(ns->nl4_type); > + > + switch (ns->nl4_type) { > + case NL4_NETADDR: > + addr = &ns->u.nl4_addr; > + > + /* netid_len, netid, uaddr_len, uaddr (port included > + * in RPCBIND_MAXUADDRLEN) > + */ > + p = xdr_reserve_space(xdr, > + 4 /* netid len */ + > + (XDR_QUADLEN(addr->netid_len) * 4) + > + 4 /* uaddr len */ + > + (XDR_QUADLEN(addr->addr_len) * 4)); > + if (!p) > + return nfserr_resource; > + > + *p++ = cpu_to_be32(addr->netid_len); > + p = xdr_encode_opaque_fixed(p, addr->netid, > + addr->netid_len); > + *p++ = cpu_to_be32(addr->addr_len); > + p = xdr_encode_opaque_fixed(p, addr->addr, > + addr->addr_len); > + break; > + default: > + WARN_ON(ns->nl4_type != NL4_NETADDR); I default to WARN_ON_ONCE(). --b.