[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <57d35fdb5ea646f96b70fd8b8a29434761c3f1d3.camel@kernel.org>
Date: Thu, 17 Sep 2020 12:49:40 -0400
From: Jeff Layton <jlayton@...nel.org>
To: "Matthew Wilcox (Oracle)" <willy@...radead.org>,
linux-fsdevel@...r.kernel.org
Cc: linux-mm@...ck.org, v9fs-developer@...ts.sourceforge.net,
linux-kernel@...r.kernel.org, linux-afs@...ts.infradead.org,
ceph-devel@...r.kernel.org, linux-cifs@...r.kernel.org,
ecryptfs@...r.kernel.org, linux-um@...ts.infradead.org,
linux-mtd@...ts.infradead.org, Richard Weinberger <richard@....at>
Subject: Re: [PATCH 04/13] ceph: Tell the VFS that readpage was synchronous
On Thu, 2020-09-17 at 16:10 +0100, Matthew Wilcox (Oracle) wrote:
> The ceph readpage implementation was already synchronous, so use
> AOP_UPDATED_PAGE to avoid cycling the page lock.
>
> Signed-off-by: Matthew Wilcox (Oracle) <willy@...radead.org>
> ---
> fs/ceph/addr.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/fs/ceph/addr.c b/fs/ceph/addr.c
> index 6ea761c84494..b2bf8bf7a312 100644
> --- a/fs/ceph/addr.c
> +++ b/fs/ceph/addr.c
> @@ -291,10 +291,11 @@ static int ceph_do_readpage(struct file *filp, struct page *page)
> static int ceph_readpage(struct file *filp, struct page *page)
> {
> int r = ceph_do_readpage(filp, page);
> - if (r != -EINPROGRESS)
> - unlock_page(page);
> - else
> - r = 0;
> + if (r == -EINPROGRESS)
> + return 0;
> + if (r == 0)
> + return AOP_UPDATED_PAGE;
> + unlock_page(page);
> return r;
> }
>
Looks good to me. I assume you'll merge all of these as a set since the
early ones are a prerequisite?
Reviewed-by: Jeff Layton <jlayton@...nel.org>
Powered by blists - more mailing lists