[Linux-cachefs] [PATCH] netfs: Make ops->init_rreq() optional

JeffleXu jefflexu at linux.alibaba.com
Thu Jan 13 09:11:32 UTC 2022



On 1/13/22 4:22 PM, David Howells wrote:
> Hi Jeffle,
> 
> I've altered your patch commit message, if you could take a look?
> 
> David
> ---
> From: Jeffle Xu <jefflexu at linux.alibaba.com>
> 
> netfs: Make ops->init_rreq() optional
> 
> Make the ops->init_rreq() callback optional.  This isn't required for the
> erofs changes I'm implementing to do on-demand read through fscache[1].
> Further, ceph has an empty init_rreq method that can then be removed and
> it's marked optional in the documentation.
> 
> Signed-off-by: Jeffle Xu <jefflexu at linux.alibaba.com>
> Signed-off-by: David Howells <dhowells at redhat.com>
> Reviewed-by: Jeff Layton <jlayton at kernel.org>
> Link: https://lore.kernel.org/r/20211227125444.21187-1-jefflexu@linux.alibaba.com/ [1]
> Link: https://lore.kernel.org/r/20211228124419.103020-1-jefflexu@linux.alibaba.com
> ---

LGTM. Thanks.


>  fs/ceph/addr.c         |    5 -----
>  fs/netfs/read_helper.c |    3 ++-
>  2 files changed, 2 insertions(+), 6 deletions(-)
> 
> diff --git a/fs/ceph/addr.c b/fs/ceph/addr.c
> index b3d9459c9bbd..c98e5238a1b6 100644
> --- a/fs/ceph/addr.c
> +++ b/fs/ceph/addr.c
> @@ -297,10 +297,6 @@ static void ceph_netfs_issue_op(struct netfs_read_subrequest *subreq)
>  	dout("%s: result %d\n", __func__, err);
>  }
>  
> -static void ceph_init_rreq(struct netfs_read_request *rreq, struct file *file)
> -{
> -}
> -
>  static void ceph_readahead_cleanup(struct address_space *mapping, void *priv)
>  {
>  	struct inode *inode = mapping->host;
> @@ -312,7 +308,6 @@ static void ceph_readahead_cleanup(struct address_space *mapping, void *priv)
>  }
>  
>  static const struct netfs_read_request_ops ceph_netfs_read_ops = {
> -	.init_rreq		= ceph_init_rreq,
>  	.is_cache_enabled	= ceph_is_cache_enabled,
>  	.begin_cache_operation	= ceph_begin_cache_operation,
>  	.issue_op		= ceph_netfs_issue_op,
> diff --git a/fs/netfs/read_helper.c b/fs/netfs/read_helper.c
> index 6169659857b3..501da990c259 100644
> --- a/fs/netfs/read_helper.c
> +++ b/fs/netfs/read_helper.c
> @@ -55,7 +55,8 @@ static struct netfs_read_request *netfs_alloc_read_request(
>  		INIT_WORK(&rreq->work, netfs_rreq_work);
>  		refcount_set(&rreq->usage, 1);
>  		__set_bit(NETFS_RREQ_IN_PROGRESS, &rreq->flags);
> -		ops->init_rreq(rreq, file);
> +		if (ops->init_rreq)
> +			ops->init_rreq(rreq, file);
>  		netfs_stat(&netfs_n_rh_rreq);
>  	}
>  
> 

-- 
Thanks,
Jeffle




More information about the Linux-cachefs mailing list