add patch set-ext4_dax_aops-for-dax-files
[ext4-patch-queue.git] / dont-mark-mmp-buffer-head-dirty
blob820eea0488904ea8af92939466b4a1fa412cdc13
1 ext4: don't mark mmp buffer head dirty
3 From: Li Dongyang <dongyangli@ddn.com>
5 Marking mmp bh dirty before writing it will make writeback
6 pick up mmp block later and submit a write, we don't want the
7 duplicate write as kmmpd thread should have full control of
8 reading and writing the mmp block.
9 Another reason is we will also have random I/O error on
10 the writeback request when blk integrity is enabled, because
11 kmmpd could modify the content of the mmp block(e.g. setting
12 new seq and time) while the mmp block is under I/O requested
13 by writeback.
15 Signed-off-by: Li Dongyang <dongyangli@ddn.com>
16 Signed-off-by: Theodore Ts'o <tytso@mit.edu>
17 Reviewed-by: Andreas Dilger <adilger@dilger.ca>
18 Cc: stable@vger.kernel.org
19 ---
20  fs/ext4/mmp.c | 1 -
21  1 file changed, 1 deletion(-)
23 diff --git a/fs/ext4/mmp.c b/fs/ext4/mmp.c
24 index 39b07c2d3384..2305b4374fd3 100644
25 --- a/fs/ext4/mmp.c
26 +++ b/fs/ext4/mmp.c
27 @@ -49,7 +49,6 @@ static int write_mmp_block(struct super_block *sb, struct buffer_head *bh)
28          */
29         sb_start_write(sb);
30         ext4_mmp_csum_set(sb, mmp);
31 -       mark_buffer_dirty(bh);
32         lock_buffer(bh);
33         bh->b_end_io = end_buffer_write_sync;
34         get_bh(bh);
35 -- 
36 2.18.0