Re: [PATCH v2 01/19] fscache: export fscache_end_operation()

From: Jeff Layton
Date: Wed Mar 09 2022 - 10:26:25 EST


On Tue, 2022-03-08 at 23:25 +0000, David Howells wrote:
> From: Jeffle Xu <jefflexu@xxxxxxxxxxxxxxxxx>
>
> Export fscache_end_operation() to avoid code duplication.
>
> Besides, considering the paired fscache_begin_read_operation() is
> already exported, it shall make sense to also export
> fscache_end_operation().
>

Not what I think of when you say "exporting" but the patch itself looks
fine.

> Signed-off-by: Jeffle Xu <jefflexu@xxxxxxxxxxxxxxxxx>
> Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
> cc: linux-cachefs@xxxxxxxxxx
>
> Link: https://lore.kernel.org/r/20220302125134.131039-2-jefflexu@xxxxxxxxxxxxxxxxx/ # Jeffle's v4
> Link: https://lore.kernel.org/r/164622971432.3564931.12184135678781328146.stgit@xxxxxxxxxxxxxxxxxxxxxx/ # v1
> ---
>
> fs/cifs/fscache.c | 8 --------
> fs/fscache/internal.h | 11 -----------
> fs/nfs/fscache.c | 8 --------
> include/linux/fscache.h | 14 ++++++++++++++
> 4 files changed, 14 insertions(+), 27 deletions(-)
>
> diff --git a/fs/cifs/fscache.c b/fs/cifs/fscache.c
> index 33af72e0ac0c..b47c2011ce5b 100644
> --- a/fs/cifs/fscache.c
> +++ b/fs/cifs/fscache.c
> @@ -134,14 +134,6 @@ void cifs_fscache_release_inode_cookie(struct inode *inode)
> }
> }
>
> -static inline void fscache_end_operation(struct netfs_cache_resources *cres)
> -{
> - const struct netfs_cache_ops *ops = fscache_operation_valid(cres);
> -
> - if (ops)
> - ops->end_operation(cres);
> -}
> -
> /*
> * Fallback page reading interface.
> */
> diff --git a/fs/fscache/internal.h b/fs/fscache/internal.h
> index f121c21590dc..ed1c9ed737f2 100644
> --- a/fs/fscache/internal.h
> +++ b/fs/fscache/internal.h
> @@ -70,17 +70,6 @@ static inline void fscache_see_cookie(struct fscache_cookie *cookie,
> where);
> }
>
> -/*
> - * io.c
> - */
> -static inline void fscache_end_operation(struct netfs_cache_resources *cres)
> -{
> - const struct netfs_cache_ops *ops = fscache_operation_valid(cres);
> -
> - if (ops)
> - ops->end_operation(cres);
> -}
> -
> /*
> * main.c
> */
> diff --git a/fs/nfs/fscache.c b/fs/nfs/fscache.c
> index cfe901650ab0..39654ca72d3d 100644
> --- a/fs/nfs/fscache.c
> +++ b/fs/nfs/fscache.c
> @@ -249,14 +249,6 @@ void nfs_fscache_release_file(struct inode *inode, struct file *filp)
> }
> }
>
> -static inline void fscache_end_operation(struct netfs_cache_resources *cres)
> -{
> - const struct netfs_cache_ops *ops = fscache_operation_valid(cres);
> -
> - if (ops)
> - ops->end_operation(cres);
> -}
> -
> /*
> * Fallback page reading interface.
> */
> diff --git a/include/linux/fscache.h b/include/linux/fscache.h
> index 296c5f1d9f35..d2430da8aa67 100644
> --- a/include/linux/fscache.h
> +++ b/include/linux/fscache.h
> @@ -456,6 +456,20 @@ int fscache_begin_read_operation(struct netfs_cache_resources *cres,
> return -ENOBUFS;
> }
>
> +/**
> + * fscache_end_operation - End the read operation for the netfs lib
> + * @cres: The cache resources for the read operation
> + *
> + * Clean up the resources at the end of the read request.
> + */
> +static inline void fscache_end_operation(struct netfs_cache_resources *cres)
> +{
> + const struct netfs_cache_ops *ops = fscache_operation_valid(cres);
> +
> + if (ops)
> + ops->end_operation(cres);
> +}
> +
> /**
> * fscache_read - Start a read from the cache.
> * @cres: The cache resources to use
>
>

Reviewed-by: Jeff Layton <jlayton@xxxxxxxxxx>