public inbox for linux-btrfs@vger.kernel.org
 help / color / mirror / Atom feed
From: David Sterba <dsterba@suse.cz>
To: Qu Wenruo <wqu@suse.com>
Cc: linux-btrfs@vger.kernel.org
Subject: Re: [PATCH 0/6] btrfs: compression: migrate to folio interfaces
Date: Wed, 27 Mar 2024 00:33:35 +0100	[thread overview]
Message-ID: <20240326233335.GV14596@twin.jikos.cz> (raw)
In-Reply-To: <cover.1706521511.git.wqu@suse.com>

On Mon, Jan 29, 2024 at 08:16:05PM +1030, Qu Wenruo wrote:
> This is the conversion for btrfs compression paths to use folio
> interfaces.
> 
> For now, it's a pure intrefaces change, just with some variable names
> also changed from "page" to "folio".
> 
> There is no utilization of possible larger folio size yet, thus we're
> still using a lot of PAGE_SIZE/PAGE_SHIFT in the existing code.
> 
> But it's still a good first step towards large folio for btrfs data.
> 
> The first patch is in fact independent from the series, to slightly
> enhance the page cache missing error handling, but all later patches
> relies on it, to make later folio change a little smoother.
> 
> The third patch is also a good cleanup, as it allows we to pass a single
> page to inline creation path.
> Although during tests, it turns out that under heavy race we can try to
> insert an empty inline extent, but since the old code can handle it
> well, I just added one comment for it.
> 
> The remaining but the last one are some preparation before the final
> conversion.
> 
> And the final patch is the core conversion, as we have several structure
> relying on page array, it's impossible to just convert one algorithm to
> folio meanwhile keep all the other using pages.
> 
> 
> Qu Wenruo (6):
>   btrfs: compression: add error handling for missed page cache
>   btrfs: compression: convert page allocation to folio interfaces
>   btrfs: make insert_inline_extent() to accept one page directly
>   btrfs: migrate insert_inline_extent() to folio interfaces
>   btrfs: introduce btrfs_alloc_folio_array()
>   btrfs: compression: migrate compression/decompression paths to folios

I added this patchset to my misc-next and it was in linux-next until
now. The bug that was a blocker for folio conversions is now fixed,
also thanks to you, so we can continue with the conversions. As this
patchset is 2 months old I'm not sure if it would be helpful to start
commenting and do the normal iteration round, I did a review and style
fixup round and moved it to for-next. Please have a look and let me know
if you find something wrong. I did mostly whitespace changes, though I
did remove the ASSERT(0), if there's btrfs_crit message it's quite
noticeable, and removed the local variable for fs_info in the first one.

The conversions are all direct and seem safe to me, we won't do
multi-page folios yet, so the intemediate steps are the right way to go.
Thanks.

  parent reply	other threads:[~2024-03-26 23:41 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-29  9:46 [PATCH 0/6] btrfs: compression: migrate to folio interfaces Qu Wenruo
2024-01-29  9:46 ` [PATCH 1/6] btrfs: compression: add error handling for missed page cache Qu Wenruo
2024-01-29  9:46 ` [PATCH 2/6] btrfs: compression: convert page allocation to folio interfaces Qu Wenruo
2024-01-29  9:46 ` [PATCH 3/6] btrfs: make insert_inline_extent() to accept one page directly Qu Wenruo
2024-01-29  9:46 ` [PATCH 4/6] btrfs: migrate insert_inline_extent() to folio interfaces Qu Wenruo
2024-01-29  9:46 ` [PATCH 5/6] btrfs: introduce btrfs_alloc_folio_array() Qu Wenruo
2024-01-29  9:46 ` [PATCH 6/6] btrfs: compression: migrate compression/decompression paths to folios Qu Wenruo
2024-03-26 23:33 ` David Sterba [this message]
2024-03-28  2:22   ` [PATCH 0/6] btrfs: compression: migrate to folio interfaces Qu Wenruo
2024-03-28 19:19     ` David Sterba

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=20240326233335.GV14596@twin.jikos.cz \
    --to=dsterba@suse.cz \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=wqu@suse.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