From: David Sterba <dsterba@suse.cz>
To: Qu Wenruo <wqu@suse.com>
Cc: linux-btrfs@vger.kernel.org
Subject: Re: [PATCH 2/7] btrfs: add workspace manager initialization for zstd
Date: Mon, 18 Aug 2025 17:08:29 +0200 [thread overview]
Message-ID: <20250818150829.GL22430@twin.jikos.cz> (raw)
In-Reply-To: <db54546adb1bb51b2b9d1841520dbf9dc64adbed.1755148754.git.wqu@suse.com>
On Thu, Aug 14, 2025 at 03:03:21PM +0930, Qu Wenruo wrote:
> This involves:
>
> - Add zstd_alloc_workspace_manager() and zstd_free_workspace_manager()
> Those two functions will accept an fs_info pointer, and alloc/free
> fs_info->compr_wsm[BTRFS_COMPRESS_ZSTD] pointer.
>
> - Add btrfs_alloc_compress_wsm() and btrfs_free_compress_wsm()
> Those are helpers allocating the workspace managers for all
> algorithms.
> For now only zstd is supported, and the timing is a little unusual,
> the btrfs_alloc_compress_wsm() should only be called after the
> sectorsize being initialized.
>
> Meanwhile btrfs_free_fs_info_compress() is called in
> btrfs_free_fs_info().
>
> - Move the definition of btrfs_compression_type to "fs.h"
> The reason is that "compression.h" has already included "fs.h", thus
> we can not just include "compression.h" to get the definition of
> BTRFS_NR_COMPRESS_TYPES to define fs_info::compr_wsm[].
This is a bit unfortunate, I'd like to keep the subystems in their own
files but we'd have to add another kind of indirection to resolve that.
Either a new header or another structure for the compression types that
is not embedded in fs_info. But the type definitions are short and used
in a lot of code anyway so no big deal.
next prev parent reply other threads:[~2025-08-18 15:08 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-14 5:33 [PATCH 0/7] btrfs: per-fs compression workspace manager Qu Wenruo
2025-08-14 5:33 ` [PATCH 1/7] btrfs: add an fs_info parameter for " Qu Wenruo
2025-08-14 5:33 ` [PATCH 2/7] btrfs: add workspace manager initialization for zstd Qu Wenruo
2025-08-18 15:08 ` David Sterba [this message]
2025-08-18 22:14 ` Qu Wenruo
2025-08-14 5:33 ` [PATCH 3/7] btrfs: add generic workspace manager initialization Qu Wenruo
2025-08-18 15:12 ` David Sterba
2025-08-14 5:33 ` [PATCH 4/7] btrfs: migrate to use per-fs workspace manager Qu Wenruo
2025-08-14 5:33 ` [PATCH 5/7] btrfs: cleanup the per-module workspace managers Qu Wenruo
2025-08-14 5:33 ` [PATCH 6/7] btrfs: rename btrfs_compress_op to btrfs_compress_levels Qu Wenruo
2025-08-14 5:33 ` [PATCH 7/7] btrfs: reduce workspace buffer space to block size Qu Wenruo
2025-08-18 15:13 ` [PATCH 0/7] btrfs: per-fs compression workspace manager 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=20250818150829.GL22430@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 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.