* [GIT PULL] Btrfs fixes for 7.2-rc7, part 2
@ 2026-08-06 20:20 David Sterba
2026-08-06 20:31 ` pr-tracker-bot
0 siblings, 1 reply; 2+ messages in thread
From: David Sterba @ 2026-08-06 20:20 UTC (permalink / raw)
To: torvalds; +Cc: David Sterba, linux-btrfs, linux-kernel
Hi,
this pull request brings back the fixup worker infrastructure. It's a
mechanism to detect pages/folios that are marked dirty without filesystem
knowledge and require COW fixup. The consequence of not doing so is
silent data loss.
The first patch covers the scenarios in detail, also reflecting folio
API port and subpage block size support added in recent years. The
original fixup worker was only for pages.
The patch is relatively big, half of the code is debugging and support
code, the rest is the core design around the detection and fix.
The second patch handles an unlikely case when there's work left during
unmount.
Commits with additional or historical info:
- b2a9f217ad3fa8 ("btrfs: remove the COW fixup mechanism")
- 25f3c5021985e8 ("Btrfs: keep pages dirty when using btrfs_writepage_fixup_worker")
- 87826df0ec36fc ("btrfs: delalloc for page dirtied out-of-band in fixup worker")
- 247e743cbe6e65 ("Btrfs: Use async helpers to deal with pages that have been improperly dirtied")
Please pull, thanks.
----------------------------------------------------------------
The following changes since commit c4c0673e4cb15b0c127e6d00732a2427bdd12c11:
btrfs: raid56: fix scrub read assembly submitting no reads (2026-07-21 06:44:08 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux.git tags/for-7.2-rc6-fixup-worker-tag
for you to fetch changes up to ae2567b11c3df43861d05f856bdb3434b3961aa1:
btrfs: flush the fixup workers during close_ctree (2026-08-04 00:59:16 +0200)
----------------------------------------------------------------
Boris Burkov (2):
btrfs: trigger cow fixup via dirty_folio()
btrfs: flush the fixup workers during close_ctree
fs/btrfs/btrfs_inode.h | 1 +
fs/btrfs/disk-io.c | 28 +++++-
fs/btrfs/extent_io.c | 113 ++++++++++++++++++++++
fs/btrfs/fs.h | 12 +++
fs/btrfs/inode.c | 217 ++++++++++++++++++++++++++++++++++++++++++-
fs/btrfs/subpage.c | 216 +++++++++++++++++++++++++++++++++++++++++-
fs/btrfs/subpage.h | 41 +++++++-
include/trace/events/btrfs.h | 35 +++++++
8 files changed, 651 insertions(+), 12 deletions(-)
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [GIT PULL] Btrfs fixes for 7.2-rc7, part 2
2026-08-06 20:20 [GIT PULL] Btrfs fixes for 7.2-rc7, part 2 David Sterba
@ 2026-08-06 20:31 ` pr-tracker-bot
0 siblings, 0 replies; 2+ messages in thread
From: pr-tracker-bot @ 2026-08-06 20:31 UTC (permalink / raw)
To: David Sterba; +Cc: torvalds, David Sterba, linux-btrfs, linux-kernel
The pull request you sent on Thu, 6 Aug 2026 22:20:45 +0200:
> git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux.git tags/for-7.2-rc6-fixup-worker-tag
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/6c68fa601b49683ecb04eded993a71dfa8b2ba0b
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-08-06 20:32 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-06 20:20 [GIT PULL] Btrfs fixes for 7.2-rc7, part 2 David Sterba
2026-08-06 20:31 ` pr-tracker-bot
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.