From: Matthew Wilcox <willy@infradead.org>
To: Luis Chamberlain <mcgrof@kernel.org>
Cc: "Pankaj Raghav" <p.raghav@samsung.com>,
"Jaegeuk Kim" <jaegeuk@kernel.org>,
"Yangtao Li" <frank.li@vivo.com>,
chao@kernel.org, linux-f2fs-devel@lists.sourceforge.net,
linux-kernel@vger.kernel.org, fengnanchang@gmail.com,
linux-fsdevel@vger.kernel.org, linux-mm@kvack.org,
vishal.moola@gmail.com,
"Javier González" <javier.gonz@samsung.com>,
"Adam Manzanares" <a.manzanares@samsung.com>
Subject: Re: [PATCH] f2fs: Support enhanced hot/cold data separation for f2fs
Date: Thu, 25 Jan 2024 20:47:39 +0000 [thread overview]
Message-ID: <ZbLI63UHBErD6_L2@casper.infradead.org> (raw)
In-Reply-To: <Y5D8wYGpp/95ShTV@bombadil.infradead.org>
On Wed, Dec 07, 2022 at 12:51:13PM -0800, Luis Chamberlain wrote:
> On Wed, Nov 30, 2022 at 03:18:41PM +0000, Matthew Wilcox wrote:
> > From a filesystem point of view, you need to ensure that you handle folios
> > larger than PAGE_SIZE correctly. The easiest way is to spread the use
> > of folios throughout the filesystem. For example, today the first thing
> > we do in f2fs_read_data_folio() is convert the folio back into a page.
> > That works because f2fs hasn't told the kernel that it supports large
> > folios, so the VFS won't create large folios for it.
> >
> > It's a lot of subtle things. Here's an obvious one:
> > zero_user_segment(page, 0, PAGE_SIZE);
> > There's a folio equivalent that will zero an entire folio.
> >
> > But then there is code which assumes the number of blocks per page (maybe
> > not in f2fs?) and so on. Every filesystem will have its own challenges.
> >
> > One way to approach this is to just enable large folios (see commit
> > 6795801366da or 8549a26308f9) and see what breaks when you run xfstests
> > over it. Probably quite a lot!
>
> Me and Pankaj are very interested in helping on this front. And so we'll
> start to organize and talk every week about this to see what is missing.
> First order of business however will be testing so we'll have to
> establish a public baseline to ensure we don't regress. For this we intend
> on using kdevops so that'll be done first.
>
> If folks have patches they want to test in consideration for folio /
> iomap enhancements feel free to Cc us :)
>
> After we establish a baseline we can move forward with taking on tasks
> which will help with this conversion.
So ... it's been a year. How is this project coming along? There
weren't a lot of commits to f2fs in 2023 that were folio related.
next prev parent reply other threads:[~2024-01-25 20:47 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-17 20:24 [PATCH v3 00/23] Convert to filemap_get_folios_tag() Vishal Moola (Oracle)
2022-10-17 20:24 ` [PATCH v3 01/23] pagemap: Add filemap_grab_folio() Vishal Moola (Oracle)
2022-10-24 19:36 ` Vishal Moola
2022-10-24 19:38 ` Matthew Wilcox
2022-10-17 20:24 ` [PATCH v3 02/23] filemap: Added filemap_get_folios_tag() Vishal Moola (Oracle)
2022-10-24 19:42 ` Matthew Wilcox
2022-10-17 20:24 ` [PATCH v3 03/23] filemap: Convert __filemap_fdatawait_range() to use filemap_get_folios_tag() Vishal Moola (Oracle)
2022-10-24 20:06 ` Matthew Wilcox
2022-10-17 20:24 ` [PATCH v3 04/23] page-writeback: Convert write_cache_pages() " Vishal Moola (Oracle)
2022-10-24 20:12 ` Matthew Wilcox
2022-10-17 20:24 ` [PATCH v3 05/23] afs: Convert afs_writepages_region() " Vishal Moola (Oracle)
2022-10-17 20:24 ` [PATCH v3 06/23] btrfs: Convert btree_write_cache_pages() to use filemap_get_folio_tag() Vishal Moola (Oracle)
2022-10-17 20:24 ` [PATCH v3 07/23] btrfs: Convert extent_write_cache_pages() to use filemap_get_folios_tag() Vishal Moola (Oracle)
2022-10-17 20:24 ` [PATCH v3 08/23] ceph: Convert ceph_writepages_start() " Vishal Moola (Oracle)
2022-10-28 17:20 ` Jeff Layton
2022-10-17 20:24 ` [PATCH v3 09/23] cifs: Convert wdata_alloc_and_fillpages() " Vishal Moola (Oracle)
2022-10-23 14:01 ` kernel test robot
2022-10-17 20:24 ` [PATCH v3 10/23] ext4: Convert mpage_prepare_extent_to_map() " Vishal Moola (Oracle)
2022-10-24 19:26 ` Vishal Moola
2022-10-17 20:24 ` [PATCH v3 11/23] f2fs: Convert f2fs_fsync_node_pages() " Vishal Moola (Oracle)
2022-10-24 19:31 ` Vishal Moola
2022-11-10 18:51 ` Vishal Moola
2022-10-29 4:46 ` [f2fs-dev] " Chao Yu
2022-10-17 20:24 ` [PATCH v3 12/23] f2fs: Convert f2fs_flush_inline_data() " Vishal Moola (Oracle)
2022-10-29 4:47 ` [f2fs-dev] " Chao Yu
2022-10-17 20:24 ` [PATCH v3 13/23] f2fs: Convert f2fs_sync_node_pages() " Vishal Moola (Oracle)
2022-10-29 4:47 ` [f2fs-dev] " Chao Yu
2022-10-17 20:24 ` [PATCH v3 14/23] f2fs: Convert f2fs_write_cache_pages() " Vishal Moola (Oracle)
2022-11-14 7:02 ` [f2fs-dev] " Chao Yu
2022-11-14 21:38 ` Vishal Moola
2022-11-23 2:26 ` Vishal Moola
2022-11-23 7:51 ` Vishal Moola
2022-12-05 20:34 ` Vishal Moola
2022-12-12 14:41 ` Chao Yu
2022-12-12 19:13 ` [RFC PATCH] " Vishal Moola (Oracle)
2022-12-15 1:48 ` Chao Yu
2022-12-15 18:45 ` Matthew Wilcox
2022-12-21 17:17 ` Vishal Moola
2022-12-23 8:07 ` Christoph Hellwig
2022-12-15 19:02 ` Jaegeuk Kim
2023-01-03 20:53 ` Matthew Wilcox
2022-11-29 19:14 ` [f2fs-dev] [PATCH v3 14/23] " Matthew Wilcox
2022-11-30 12:48 ` [PATCH] f2fs: Support enhanced hot/cold data separation for f2fs Yangtao Li
2022-11-30 15:18 ` Matthew Wilcox
2022-12-07 20:51 ` Luis Chamberlain
2024-01-25 20:47 ` Matthew Wilcox [this message]
2024-01-25 20:54 ` Luis Chamberlain
2024-01-26 21:01 ` Matthew Wilcox
2024-01-26 21:32 ` Luis Chamberlain
2024-01-27 7:05 ` Eric Biggers
2022-11-30 12:51 ` [PATCH]f2fs: Convert f2fs_write_cache_pages() to use filemap_get_folios_tag() Yangtao Li
2022-10-17 20:24 ` [PATCH v3 15/23] f2fs: Convert last_fsync_dnode() " Vishal Moola (Oracle)
2022-10-17 20:24 ` [PATCH v3 16/23] f2fs: Convert f2fs_sync_meta_pages() " Vishal Moola (Oracle)
2022-10-17 20:24 ` [PATCH v3 17/23] gfs2: Convert gfs2_write_cache_jdata() " Vishal Moola (Oracle)
2022-10-24 19:23 ` Vishal Moola
2022-10-17 20:24 ` [PATCH v3 18/23] nilfs2: Convert nilfs_lookup_dirty_data_buffers() " Vishal Moola (Oracle)
2022-10-17 20:24 ` [PATCH v3 19/23] nilfs2: Convert nilfs_lookup_dirty_node_buffers() " Vishal Moola (Oracle)
2022-10-17 20:24 ` [PATCH v3 20/23] nilfs2: Convert nilfs_btree_lookup_dirty_buffers() " Vishal Moola (Oracle)
2022-10-17 20:24 ` [PATCH v3 21/23] nilfs2: Convert nilfs_copy_dirty_pages() " Vishal Moola (Oracle)
2022-10-17 20:24 ` [PATCH v3 22/23] nilfs2: Convert nilfs_clear_dirty_pages() " Vishal Moola (Oracle)
2022-10-17 20:24 ` [PATCH v3 23/23] filemap: Remove find_get_pages_range_tag() Vishal Moola (Oracle)
2022-11-28 8:58 [PATCH 0/5] Support enhanced hot/cold data separation for f2fs qixiaoyu1
2022-11-29 7:49 ` [PATCH] f2fs: " Yangtao Li
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=ZbLI63UHBErD6_L2@casper.infradead.org \
--to=willy@infradead.org \
--cc=a.manzanares@samsung.com \
--cc=chao@kernel.org \
--cc=fengnanchang@gmail.com \
--cc=frank.li@vivo.com \
--cc=jaegeuk@kernel.org \
--cc=javier.gonz@samsung.com \
--cc=linux-f2fs-devel@lists.sourceforge.net \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mcgrof@kernel.org \
--cc=p.raghav@samsung.com \
--cc=vishal.moola@gmail.com \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).