Commit cef02231 authored by Jeffle Xu's avatar Jeffle Xu Committed by David Howells
Browse files

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: default avatarJeffle Xu <jefflexu@linux.alibaba.com>
Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
Reviewed-by: default avatarJeff Layton <jlayton@kernel.org>
cc: linux-cachefs@redhat.com
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
Link: https://lore.kernel.org/r/164251410387.3435901.2504600788262093313.stgit@warthog.procyon.org.uk/ # v1
parent c522e3ad
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -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,
+2 −1
Original line number Diff line number Diff line
@@ -55,6 +55,7 @@ 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);
		if (ops->init_rreq)
			ops->init_rreq(rreq, file);
		netfs_stat(&netfs_n_rh_rreq);
	}