From: fdmanana@kernel.org
To: linux-btrfs@vger.kernel.org
Subject: [PATCH v2 00/11] btrfs: fixes around swap file activation and cleanups
Date: Wed, 11 Dec 2024 15:04:57 +0000 [thread overview]
Message-ID: <cover.1733929327.git.fdmanana@suse.com> (raw)
In-Reply-To: <cover.1733832118.git.fdmanana@suse.com>
From: Filipe Manana <fdmanana@suse.com>
There are a couple issues with swap file activation, one being races with
memory mapped writes, while the other one is a failure due to buggy
detection of extent sharedness - we can often consider an extent as shared
when it is not but it used to be. The rest are just some cleanups or
enhancements.
V2: Updated patch 10/11, it mentioned a no longer existing argument that
removed in patch 05/11, the patches were re-ordered at some point.
Filipe Manana (11):
btrfs: fix race with memory mapped writes when activating swap file
btrfs: fix swap file activation failure due to extents that used to be shared
btrfs: allow swap activation to be interruptible
btrfs: avoid monopolizing a core when activating a swap file
btrfs: remove no longer needed strict argument from can_nocow_extent()
btrfs: remove the snapshot check from check_committed_ref()
btrfs: avoid redundant call to get inline ref type at check_committed_ref()
btrfs: simplify return logic at check_committed_ref()
btrfs: simplify arguments for btrfs_cross_ref_exist()
btrfs: add function comment for check_committed_ref()
btrfs: add assertions and comment about path expectations to btrfs_cross_ref_exist()
fs/btrfs/btrfs_inode.h | 2 +-
fs/btrfs/direct-io.c | 3 +-
fs/btrfs/extent-tree.c | 128 +++++++++++++++++++++++++-----------
fs/btrfs/extent-tree.h | 3 +-
fs/btrfs/file.c | 2 +-
fs/btrfs/inode.c | 146 +++++++++++++++++++++++++++++------------
fs/btrfs/locking.h | 5 ++
7 files changed, 203 insertions(+), 86 deletions(-)
--
2.45.2
next prev parent reply other threads:[~2024-12-11 15:05 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-11 14:53 [PATCH 00/11] btrfs: fixes around swap file activation and cleanups fdmanana
2024-12-11 14:53 ` [PATCH 01/11] btrfs: fix race with memory mapped writes when activating swap file fdmanana
2024-12-11 14:53 ` [PATCH 02/11] btrfs: fix swap file activation failure due to extents that used to be shared fdmanana
2024-12-11 14:53 ` [PATCH 03/11] btrfs: allow swap activation to be interruptible fdmanana
2024-12-11 14:53 ` [PATCH 04/11] btrfs: avoid monopolizing a core when activating a swap file fdmanana
2024-12-11 14:53 ` [PATCH 05/11] btrfs: remove no longer needed strict argument from can_nocow_extent() fdmanana
2024-12-11 14:53 ` [PATCH 06/11] btrfs: remove the snapshot check from check_committed_ref() fdmanana
2024-12-11 14:53 ` [PATCH 07/11] btrfs: avoid redundant call to get inline ref type at check_committed_ref() fdmanana
2024-12-11 14:53 ` [PATCH 08/11] btrfs: simplify return logic " fdmanana
2024-12-11 14:53 ` [PATCH 09/11] btrfs: simplify arguments for btrfs_cross_ref_exist() fdmanana
2024-12-11 14:53 ` [PATCH 10/11] btrfs: add function comment for check_committed_ref() fdmanana
2024-12-11 14:53 ` [PATCH 11/11] btrfs: add assertions and comment about path expectations to btrfs_cross_ref_exist() fdmanana
2024-12-11 15:04 ` fdmanana [this message]
2024-12-11 15:04 ` [PATCH v2 01/11] btrfs: fix race with memory mapped writes when activating swap file fdmanana
2024-12-11 15:04 ` [PATCH v2 02/11] btrfs: fix swap file activation failure due to extents that used to be shared fdmanana
2024-12-13 20:52 ` Qu Wenruo
2024-12-13 22:36 ` Filipe Manana
2024-12-11 15:05 ` [PATCH v2 03/11] btrfs: allow swap activation to be interruptible fdmanana
2024-12-11 15:05 ` [PATCH v2 04/11] btrfs: avoid monopolizing a core when activating a swap file fdmanana
2024-12-11 15:05 ` [PATCH v2 05/11] btrfs: remove no longer needed strict argument from can_nocow_extent() fdmanana
2024-12-11 15:05 ` [PATCH v2 06/11] btrfs: remove the snapshot check from check_committed_ref() fdmanana
2024-12-11 15:05 ` [PATCH v2 07/11] btrfs: avoid redundant call to get inline ref type at check_committed_ref() fdmanana
2024-12-11 15:05 ` [PATCH v2 08/11] btrfs: simplify return logic " fdmanana
2024-12-11 15:05 ` [PATCH v2 09/11] btrfs: simplify arguments for btrfs_cross_ref_exist() fdmanana
2024-12-11 15:05 ` [PATCH v2 10/11] btrfs: add function comment for check_committed_ref() fdmanana
2024-12-11 15:05 ` [PATCH v2 11/11] btrfs: add assertions and comment about path expectations to btrfs_cross_ref_exist() fdmanana
2024-12-13 21:03 ` Qu Wenruo
2024-12-13 22:29 ` Filipe Manana
2024-12-13 21:07 ` [PATCH v2 00/11] btrfs: fixes around swap file activation and cleanups Qu Wenruo
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=cover.1733929327.git.fdmanana@suse.com \
--to=fdmanana@kernel.org \
--cc=linux-btrfs@vger.kernel.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: 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