On Mon, 2009-08-24 at 10:27 +0300, Boaz Harrosh wrote: > OK I used the new stuff by now, and I'm happy with everything > but the above. I *absolutely* insist on this changing to: Feel quite free to insist, but the patch isn't going in. > p = xdr_encode_word(p, foo); > and > p = xdr_decode_word(p, &foo); > > [xdr_{encode,decode}_word is defined differently but is only used in a couple > of sunrpc files, the change of these places shall be added to this cleanup] > > I have checked this version of the definition: > static inline __be32 * > xdr_encode_word(__be32 *p, __u32 val) > { > *p++ = cpu_to_be32(val); > return p; > } > > static inline __be32 * > xdr_decode_word(__be32 *p, __u32 *valp) > { > *valp = be32_to_cpu(*p++); > return p; > } > > under assembly with gcc -O2 and it gives the exact same result as the open code, > so I do not see what can be said against it? It is unnecessary, it looks ugly, the latter form takes 2 pointers and hides an assignment, it does an unconditional pointer increment. IOW: Just learn the meaning of 'pointer to __be32'. -- Trond Myklebust Linux NFS client maintainer NetApp Trond.Myklebust@xxxxxxxxxx www.netapp.com -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html