[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20200928194103.244692-1-mfo@canonical.com>
Date: Mon, 28 Sep 2020 16:40:59 -0300
From: Mauricio Faria de Oliveira <mfo@...onical.com>
To: Jan Kara <jack@...e.cz>
Cc: linux-ext4@...r.kernel.org,
dann frazier <dann.frazier@...onical.com>
Subject: [RFC PATCH v4 0/4] ext4/jbd2: data=journal: write-protect pages on transaction commit
Hey Jan,
This series implements your suggestions for the RFC PATCH v3 set [1].
That addressed the issue you confirmed with block_page_mkwrite() [2].
There's no "JBD2: Spotted dirty metadata buffer" message in over 72h
runs across 3 VMs (it used to happen within a few hours.) *Thanks!*
I added Reviewed-by: tags for the patches/changes you mentioned.
The only changes from v3 are patch 3 which is new, and contains
the 2 fixes to ext4_page_mkwrite(); and patch 4 changed 'struct
writeback_control.nr_to_write' from ~0ULL to LONG_MAX, since it
is signed long (~0ULL overflows to -1; kudos, kernel test robot!)
It looks almost good on fstests: zero regressions on data=ordered,
and two apparently flaky tests data=journal (generic/347 _passed_
1/6 times with the patch, and generic/547 failed 1/6 times.)
I'll have more fstests runs on original/patched kernel to confirm
if they are flaky on both, or hit corner cases with patches only,
and will follow up with results. (and basic testing w/ ocfs2 too.)
Thanks again!
Mauricio
[1] https://lore.kernel.org/linux-ext4/20200910193127.276214-1-mfo@canonical.com/
[2] https://lore.kernel.org/linux-ext4/20200916161538.GK3607@quack2.suse.cz/
Mauricio Faria de Oliveira (4):
jbd2: introduce/export functions
jbd2_journal_submit|finish_inode_data_buffers()
jbd2, ext4, ocfs2: introduce/use journal callbacks
j_submit|finish_inode_data_buffers()
ext4: data=journal: fixes for ext4_page_mkwrite()
ext4: data=journal: write-protect pages on
j_submit_inode_data_buffers()
fs/ext4/inode.c | 62 ++++++++++++++++++++++++++++-----
fs/ext4/super.c | 82 ++++++++++++++++++++++++++++++++++++++++++++
fs/jbd2/commit.c | 58 +++++++++++++++++--------------
fs/jbd2/journal.c | 2 ++
fs/ocfs2/super.c | 5 +++
include/linux/jbd2.h | 29 +++++++++++++++-
6 files changed, 203 insertions(+), 35 deletions(-)
--
2.17.1
Powered by blists - more mailing lists