From: Andreas Gruenbacher <agruenba@redhat.com> To: Christoph Hellwig <hch@infradead.org>, "Darrick J . Wong" <djwong@kernel.org>, Alexander Viro <viro@zeniv.linux.org.uk>, Matthew Wilcox <willy@infradead.org> Cc: Andreas Gruenbacher <agruenba@redhat.com>, linux-xfs@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-ext4@vger.kernel.org, cluster-devel@redhat.com Subject: [RFC v6 06/10] iomap: Add __iomap_get_folio helper Date: Sun, 8 Jan 2023 20:40:30 +0100 [thread overview] Message-ID: <20230108194034.1444764-7-agruenba@redhat.com> (raw) In-Reply-To: <20230108194034.1444764-1-agruenba@redhat.com> Add an __iomap_get_folio() helper as the counterpart of the existing __iomap_put_folio() helper. Use the new helper in iomap_write_begin(). Not a functional change. Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com> --- fs/iomap/buffered-io.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/fs/iomap/buffered-io.c b/fs/iomap/buffered-io.c index 418519dea2ce..666107c3a385 100644 --- a/fs/iomap/buffered-io.c +++ b/fs/iomap/buffered-io.c @@ -602,6 +602,17 @@ static int __iomap_write_begin(const struct iomap_iter *iter, loff_t pos, return 0; } +static struct folio *__iomap_get_folio(struct iomap_iter *iter, loff_t pos, + size_t len) +{ + const struct iomap_page_ops *page_ops = iter->iomap.page_ops; + + if (page_ops && page_ops->page_prepare) + return page_ops->page_prepare(iter, pos, len); + else + return iomap_get_folio(iter, pos); +} + static void __iomap_put_folio(struct iomap_iter *iter, loff_t pos, size_t ret, struct folio *folio) { @@ -642,10 +653,7 @@ static int iomap_write_begin(struct iomap_iter *iter, loff_t pos, if (!mapping_large_folio_support(iter->inode->i_mapping)) len = min_t(size_t, len, PAGE_SIZE - offset_in_page(pos)); - if (page_ops && page_ops->page_prepare) - folio = page_ops->page_prepare(iter, pos, len); - else - folio = iomap_get_folio(iter, pos); + folio = __iomap_get_folio(iter, pos, len); if (IS_ERR(folio)) return PTR_ERR(folio); -- 2.38.1
WARNING: multiple messages have this Message-ID (diff)
From: Andreas Gruenbacher <agruenba@redhat.com> To: cluster-devel.redhat.com Subject: [Cluster-devel] [RFC v6 06/10] iomap: Add __iomap_get_folio helper Date: Sun, 8 Jan 2023 20:40:30 +0100 [thread overview] Message-ID: <20230108194034.1444764-7-agruenba@redhat.com> (raw) In-Reply-To: <20230108194034.1444764-1-agruenba@redhat.com> Add an __iomap_get_folio() helper as the counterpart of the existing __iomap_put_folio() helper. Use the new helper in iomap_write_begin(). Not a functional change. Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com> --- fs/iomap/buffered-io.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/fs/iomap/buffered-io.c b/fs/iomap/buffered-io.c index 418519dea2ce..666107c3a385 100644 --- a/fs/iomap/buffered-io.c +++ b/fs/iomap/buffered-io.c @@ -602,6 +602,17 @@ static int __iomap_write_begin(const struct iomap_iter *iter, loff_t pos, return 0; } +static struct folio *__iomap_get_folio(struct iomap_iter *iter, loff_t pos, + size_t len) +{ + const struct iomap_page_ops *page_ops = iter->iomap.page_ops; + + if (page_ops && page_ops->page_prepare) + return page_ops->page_prepare(iter, pos, len); + else + return iomap_get_folio(iter, pos); +} + static void __iomap_put_folio(struct iomap_iter *iter, loff_t pos, size_t ret, struct folio *folio) { @@ -642,10 +653,7 @@ static int iomap_write_begin(struct iomap_iter *iter, loff_t pos, if (!mapping_large_folio_support(iter->inode->i_mapping)) len = min_t(size_t, len, PAGE_SIZE - offset_in_page(pos)); - if (page_ops && page_ops->page_prepare) - folio = page_ops->page_prepare(iter, pos, len); - else - folio = iomap_get_folio(iter, pos); + folio = __iomap_get_folio(iter, pos, len); if (IS_ERR(folio)) return PTR_ERR(folio); -- 2.38.1
next prev parent reply other threads:[~2023-01-08 19:43 UTC|newest] Thread overview: 82+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-01-08 19:40 [RFC v6 00/10] Turn iomap_page_ops into iomap_folio_ops Andreas Gruenbacher 2023-01-08 19:40 ` [Cluster-devel] " Andreas Gruenbacher 2023-01-08 19:40 ` [RFC v6 01/10] iomap: Add __iomap_put_folio helper Andreas Gruenbacher 2023-01-08 19:40 ` [Cluster-devel] " Andreas Gruenbacher 2023-01-08 19:40 ` [RFC v6 02/10] iomap/gfs2: Unlock and put folio in page_done handler Andreas Gruenbacher 2023-01-08 19:40 ` [Cluster-devel] " Andreas Gruenbacher 2023-01-08 19:40 ` [RFC v6 03/10] iomap: Rename page_done handler to put_folio Andreas Gruenbacher 2023-01-08 19:40 ` [Cluster-devel] " Andreas Gruenbacher 2023-01-08 19:40 ` [RFC v6 04/10] iomap: Add iomap_get_folio helper Andreas Gruenbacher 2023-01-08 19:40 ` [Cluster-devel] " Andreas Gruenbacher 2023-01-08 21:33 ` Dave Chinner 2023-01-08 21:33 ` [Cluster-devel] " Dave Chinner 2023-01-09 12:46 ` Andreas Gruenbacher 2023-01-09 12:46 ` [Cluster-devel] " Andreas Gruenbacher 2023-01-10 8:46 ` Christoph Hellwig 2023-01-10 8:46 ` [Cluster-devel] " Christoph Hellwig 2023-01-10 9:07 ` Andreas Grünbacher 2023-01-10 9:07 ` [Cluster-devel] " Andreas Grünbacher 2023-01-10 13:34 ` Matthew Wilcox 2023-01-10 13:34 ` [Cluster-devel] " Matthew Wilcox 2023-01-10 15:24 ` Christoph Hellwig 2023-01-10 15:24 ` [Cluster-devel] " Christoph Hellwig 2023-01-11 19:36 ` Matthew Wilcox 2023-01-11 19:36 ` [Cluster-devel] " Matthew Wilcox 2023-01-11 20:52 ` Dave Chinner 2023-01-11 20:52 ` [Cluster-devel] " Dave Chinner 2023-01-12 8:41 ` Christoph Hellwig 2023-01-12 8:41 ` [Cluster-devel] " Christoph Hellwig 2023-01-15 17:01 ` Darrick J. Wong 2023-01-15 17:01 ` [Cluster-devel] " Darrick J. Wong 2023-01-15 17:06 ` Darrick J. Wong 2023-01-15 17:06 ` [Cluster-devel] " Darrick J. Wong 2023-01-16 5:46 ` Matthew Wilcox 2023-01-16 5:46 ` [Cluster-devel] " Matthew Wilcox 2023-01-16 7:34 ` Christoph Hellwig 2023-01-16 7:34 ` [Cluster-devel] " Christoph Hellwig 2023-01-16 13:18 ` Matthew Wilcox 2023-01-16 13:18 ` [Cluster-devel] " Matthew Wilcox 2023-01-16 16:02 ` Christoph Hellwig 2023-01-16 16:02 ` [Cluster-devel] " Christoph Hellwig 2023-01-08 19:40 ` [RFC v6 05/10] iomap/gfs2: Get page in page_prepare handler Andreas Gruenbacher 2023-01-08 19:40 ` [Cluster-devel] " Andreas Gruenbacher 2023-01-31 19:37 ` Matthew Wilcox 2023-01-31 19:37 ` [Cluster-devel] " Matthew Wilcox 2023-01-31 21:33 ` Andreas Gruenbacher 2023-01-31 21:33 ` [Cluster-devel] " Andreas Gruenbacher 2023-01-08 19:40 ` Andreas Gruenbacher [this message] 2023-01-08 19:40 ` [Cluster-devel] [RFC v6 06/10] iomap: Add __iomap_get_folio helper Andreas Gruenbacher 2023-01-10 8:48 ` Christoph Hellwig 2023-01-10 8:48 ` [Cluster-devel] " Christoph Hellwig 2023-01-08 19:40 ` [RFC v6 07/10] iomap: Rename page_prepare handler to get_folio Andreas Gruenbacher 2023-01-08 19:40 ` [Cluster-devel] " Andreas Gruenbacher 2023-01-08 19:40 ` [RFC v6 08/10] iomap/xfs: Eliminate the iomap_valid handler Andreas Gruenbacher 2023-01-08 19:40 ` [Cluster-devel] " Andreas Gruenbacher 2023-01-08 21:59 ` Dave Chinner 2023-01-08 21:59 ` [Cluster-devel] " Dave Chinner 2023-01-09 18:45 ` Andreas Gruenbacher 2023-01-09 18:45 ` [Cluster-devel] " Andreas Gruenbacher 2023-01-09 22:54 ` Dave Chinner 2023-01-09 22:54 ` [Cluster-devel] " Dave Chinner 2023-01-10 1:09 ` Andreas Grünbacher 2023-01-10 1:09 ` [Cluster-devel] " Andreas Grünbacher 2023-01-15 17:29 ` Darrick J. Wong 2023-01-15 17:29 ` [Cluster-devel] " Darrick J. Wong 2023-01-18 7:21 ` Christoph Hellwig 2023-01-18 7:21 ` [Cluster-devel] " Christoph Hellwig 2023-01-18 9:11 ` Damien Le Moal 2023-01-18 9:11 ` [Cluster-devel] " Damien Le Moal 2023-01-18 19:04 ` Darrick J. Wong 2023-01-18 19:04 ` [Cluster-devel] " Darrick J. Wong 2023-01-18 19:57 ` Andreas Grünbacher 2023-01-18 19:57 ` [Cluster-devel] " Andreas Grünbacher 2023-01-18 21:42 ` Dave Chinner 2023-01-18 21:42 ` [Cluster-devel] " Dave Chinner 2023-01-10 8:51 ` Christoph Hellwig 2023-01-10 8:51 ` [Cluster-devel] " Christoph Hellwig 2023-01-10 8:52 ` Christoph Hellwig 2023-01-10 8:52 ` [Cluster-devel] " Christoph Hellwig 2023-01-08 19:40 ` [RFC v6 09/10] iomap: Rename page_ops to folio_ops Andreas Gruenbacher 2023-01-08 19:40 ` [Cluster-devel] " Andreas Gruenbacher 2023-01-08 19:40 ` [RFC v6 10/10] xfs: Make xfs_iomap_folio_ops static Andreas Gruenbacher 2023-01-08 19:40 ` [Cluster-devel] " Andreas Gruenbacher
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20230108194034.1444764-7-agruenba@redhat.com \ --to=agruenba@redhat.com \ --cc=cluster-devel@redhat.com \ --cc=djwong@kernel.org \ --cc=hch@infradead.org \ --cc=linux-ext4@vger.kernel.org \ --cc=linux-fsdevel@vger.kernel.org \ --cc=linux-xfs@vger.kernel.org \ --cc=viro@zeniv.linux.org.uk \ --cc=willy@infradead.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.