[RFC PATCH v4 0/4] ext4/jbd2: data=journal: write-protect pages on transaction commit

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxxxxx/
[2] https://lore.kernel.org/linux-ext4/20200916161538.GK3607@xxxxxxxxxxxxxx/

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




[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux