Message ID | 20240624162741.68216-12-snitzer@kernel.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | nfs/nfsd: add support for localio | expand |
On Mon, Jun 24, 2024 at 12:27:32PM -0400, Mike Snitzer wrote: > Eliminates duplicate functions in various files to allow for > additional callers. > > Signed-off-by: Mike Snitzer <snitzer@kernel.org> > --- > fs/nfs/flexfilelayout/flexfilelayout.c | 6 ------ > fs/nfs/nfs4xdr.c | 13 ------------- > include/linux/nfs_xdr.h | 20 +++++++++++++++++++- > 3 files changed, 19 insertions(+), 20 deletions(-) Nit: The "nfsd" can be removed from the Subject line since there are no NFSD changes in this patch. > diff --git a/fs/nfs/flexfilelayout/flexfilelayout.c b/fs/nfs/flexfilelayout/flexfilelayout.c > index ec6aaa110a7b..8b9096ad0663 100644 > --- a/fs/nfs/flexfilelayout/flexfilelayout.c > +++ b/fs/nfs/flexfilelayout/flexfilelayout.c > @@ -2185,12 +2185,6 @@ static int ff_layout_encode_ioerr(struct xdr_stream *xdr, > return ff_layout_encode_ds_ioerr(xdr, &ff_args->errors); > } > > -static void > -encode_opaque_fixed(struct xdr_stream *xdr, const void *buf, size_t len) > -{ > - WARN_ON_ONCE(xdr_stream_encode_opaque_fixed(xdr, buf, len) < 0); > -} > - > static void > ff_layout_encode_ff_iostat_head(struct xdr_stream *xdr, > const nfs4_stateid *stateid, > diff --git a/fs/nfs/nfs4xdr.c b/fs/nfs/nfs4xdr.c > index 1416099dfcd1..ede431ee0ef0 100644 > --- a/fs/nfs/nfs4xdr.c > +++ b/fs/nfs/nfs4xdr.c > @@ -968,11 +968,6 @@ static __be32 *reserve_space(struct xdr_stream *xdr, size_t nbytes) > return p; > } > > -static void encode_opaque_fixed(struct xdr_stream *xdr, const void *buf, size_t len) > -{ > - WARN_ON_ONCE(xdr_stream_encode_opaque_fixed(xdr, buf, len) < 0); > -} > - > static void encode_string(struct xdr_stream *xdr, unsigned int len, const char *str) > { > WARN_ON_ONCE(xdr_stream_encode_opaque(xdr, str, len) < 0); > @@ -4352,14 +4347,6 @@ static int decode_access(struct xdr_stream *xdr, u32 *supported, u32 *access) > return 0; > } > > -static int decode_opaque_fixed(struct xdr_stream *xdr, void *buf, size_t len) > -{ > - ssize_t ret = xdr_stream_decode_opaque_fixed(xdr, buf, len); > - if (unlikely(ret < 0)) > - return -EIO; > - return 0; > -} > - > static int decode_stateid(struct xdr_stream *xdr, nfs4_stateid *stateid) > { > return decode_opaque_fixed(xdr, stateid, NFS4_STATEID_SIZE); > diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h > index d09b9773b20c..bb460af0ea1f 100644 > --- a/include/linux/nfs_xdr.h > +++ b/include/linux/nfs_xdr.h > @@ -1820,6 +1820,24 @@ struct nfs_rpc_ops { > void (*disable_swap)(struct inode *inode); > }; > > +/* > + * Helper functions used by NFS client and/or server > + */ > +static inline void encode_opaque_fixed(struct xdr_stream *xdr, > + const void *buf, size_t len) > +{ > + WARN_ON_ONCE(xdr_stream_encode_opaque_fixed(xdr, buf, len) < 0); > +} > + > +static inline int decode_opaque_fixed(struct xdr_stream *xdr, > + void *buf, size_t len) > +{ > + ssize_t ret = xdr_stream_decode_opaque_fixed(xdr, buf, len); > + if (unlikely(ret < 0)) > + return -EIO; > + return 0; > +} > + > /* > * Function vectors etc. for the NFS client > */ > @@ -1833,4 +1851,4 @@ extern const struct rpc_version nfs_version4; > extern const struct rpc_version nfsacl_version3; > extern const struct rpc_program nfsacl_program; > > -#endif > +#endif /* _LINUX_NFS_XDR_H */ > -- > 2.44.0 >
diff --git a/fs/nfs/flexfilelayout/flexfilelayout.c b/fs/nfs/flexfilelayout/flexfilelayout.c index ec6aaa110a7b..8b9096ad0663 100644 --- a/fs/nfs/flexfilelayout/flexfilelayout.c +++ b/fs/nfs/flexfilelayout/flexfilelayout.c @@ -2185,12 +2185,6 @@ static int ff_layout_encode_ioerr(struct xdr_stream *xdr, return ff_layout_encode_ds_ioerr(xdr, &ff_args->errors); } -static void -encode_opaque_fixed(struct xdr_stream *xdr, const void *buf, size_t len) -{ - WARN_ON_ONCE(xdr_stream_encode_opaque_fixed(xdr, buf, len) < 0); -} - static void ff_layout_encode_ff_iostat_head(struct xdr_stream *xdr, const nfs4_stateid *stateid, diff --git a/fs/nfs/nfs4xdr.c b/fs/nfs/nfs4xdr.c index 1416099dfcd1..ede431ee0ef0 100644 --- a/fs/nfs/nfs4xdr.c +++ b/fs/nfs/nfs4xdr.c @@ -968,11 +968,6 @@ static __be32 *reserve_space(struct xdr_stream *xdr, size_t nbytes) return p; } -static void encode_opaque_fixed(struct xdr_stream *xdr, const void *buf, size_t len) -{ - WARN_ON_ONCE(xdr_stream_encode_opaque_fixed(xdr, buf, len) < 0); -} - static void encode_string(struct xdr_stream *xdr, unsigned int len, const char *str) { WARN_ON_ONCE(xdr_stream_encode_opaque(xdr, str, len) < 0); @@ -4352,14 +4347,6 @@ static int decode_access(struct xdr_stream *xdr, u32 *supported, u32 *access) return 0; } -static int decode_opaque_fixed(struct xdr_stream *xdr, void *buf, size_t len) -{ - ssize_t ret = xdr_stream_decode_opaque_fixed(xdr, buf, len); - if (unlikely(ret < 0)) - return -EIO; - return 0; -} - static int decode_stateid(struct xdr_stream *xdr, nfs4_stateid *stateid) { return decode_opaque_fixed(xdr, stateid, NFS4_STATEID_SIZE); diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h index d09b9773b20c..bb460af0ea1f 100644 --- a/include/linux/nfs_xdr.h +++ b/include/linux/nfs_xdr.h @@ -1820,6 +1820,24 @@ struct nfs_rpc_ops { void (*disable_swap)(struct inode *inode); }; +/* + * Helper functions used by NFS client and/or server + */ +static inline void encode_opaque_fixed(struct xdr_stream *xdr, + const void *buf, size_t len) +{ + WARN_ON_ONCE(xdr_stream_encode_opaque_fixed(xdr, buf, len) < 0); +} + +static inline int decode_opaque_fixed(struct xdr_stream *xdr, + void *buf, size_t len) +{ + ssize_t ret = xdr_stream_decode_opaque_fixed(xdr, buf, len); + if (unlikely(ret < 0)) + return -EIO; + return 0; +} + /* * Function vectors etc. for the NFS client */ @@ -1833,4 +1851,4 @@ extern const struct rpc_version nfs_version4; extern const struct rpc_version nfsacl_version3; extern const struct rpc_program nfsacl_program; -#endif +#endif /* _LINUX_NFS_XDR_H */
Eliminates duplicate functions in various files to allow for additional callers. Signed-off-by: Mike Snitzer <snitzer@kernel.org> --- fs/nfs/flexfilelayout/flexfilelayout.c | 6 ------ fs/nfs/nfs4xdr.c | 13 ------------- include/linux/nfs_xdr.h | 20 +++++++++++++++++++- 3 files changed, 19 insertions(+), 20 deletions(-)