SUNRPC: Move definition of XDR_UNIT
authorChuck Lever <chuck.lever@oracle.com>
Fri, 27 Nov 2020 22:37:02 +0000 (17:37 -0500)
committerChuck Lever <chuck.lever@oracle.com>
Mon, 25 Jan 2021 14:36:23 +0000 (09:36 -0500)
Clean up: The unit of XDR alignment is defined by RFC 4506,
not as part of the RPC message header. Thus it belongs in
include/linux/sunrpc/xdr.h.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
include/linux/sunrpc/msg_prot.h
include/linux/sunrpc/xdr.h

index 43f8544..938c2bf 100644 (file)
@@ -10,9 +10,6 @@
 
 #define RPC_VERSION 2
 
-/* size of an XDR encoding unit in bytes, i.e. 32bit */
-#define XDR_UNIT       (4)
-
 /* spec defines authentication flavor as an unsigned 32 bit integer */
 typedef u32    rpc_authflavor_t;
 
index 19b6dea..dbba537 100644 (file)
@@ -20,6 +20,13 @@ struct bio_vec;
 struct rpc_rqst;
 
 /*
+ * Size of an XDR encoding unit in bytes, i.e. 32 bits,
+ * as defined in Section 3 of RFC 4506. All encoded
+ * XDR data items are aligned on a boundary of 32 bits.
+ */
+#define XDR_UNIT               sizeof(__be32)
+
+/*
  * Buffer adjustment
  */
 #define XDR_QUADLEN(l)         (((l) + 3) >> 2)
@@ -330,7 +337,7 @@ ssize_t xdr_stream_decode_string_dup(struct xdr_stream *xdr, char **str,
 static inline size_t
 xdr_align_size(size_t n)
 {
-       const size_t mask = sizeof(__u32) - 1;
+       const size_t mask = XDR_UNIT - 1;
 
        return (n + mask) & ~mask;
 }
@@ -360,7 +367,7 @@ static inline size_t xdr_pad_size(size_t n)
  */
 static inline ssize_t xdr_stream_encode_item_present(struct xdr_stream *xdr)
 {
-       const size_t len = sizeof(__be32);
+       const size_t len = XDR_UNIT;
        __be32 *p = xdr_reserve_space(xdr, len);
 
        if (unlikely(!p))
@@ -379,7 +386,7 @@ static inline ssize_t xdr_stream_encode_item_present(struct xdr_stream *xdr)
  */
 static inline int xdr_stream_encode_item_absent(struct xdr_stream *xdr)
 {
-       const size_t len = sizeof(__be32);
+       const size_t len = XDR_UNIT;
        __be32 *p = xdr_reserve_space(xdr, len);
 
        if (unlikely(!p))