Thread (11 messages) 11 messages, 3 authors, 2021-10-19

Re: [PATCH -next v3 1/5] ext4: init 'seq' with the value which set in 'ext4_multi_mount_protect'

From: Jan Kara <jack@suse.cz>
Date: 2021-10-19 08:53:26
Also in: lkml

On Tue 19-10-21 14:49:55, Ye Bin wrote:
If two host have the same nodename, and seq start from 0, May cause the
detection mechanism to fail.
So init 'seq' with the value which set in 'ext4_multi_mount_protect' to
accelerate conflict detection.

Signed-off-by: Ye Bin <redacted>
...
quoted hunk ↗ jump to hunk
@@ -143,6 +143,7 @@ static int kmmpd(void *data)
 	mmp_block = le64_to_cpu(es->s_mmp_block);
 	mmp = (struct mmp_struct *)(bh->b_data);
 	mmp->mmp_time = cpu_to_le64(ktime_get_real_seconds());
+	seq = le32_to_cpu(mmp->mmp_seq);
 	/*
 	 * Start with the higher mmp_check_interval and reduce it if
 	 * the MMP block is being updated on time.
Thanks for the patch. After discussing what MMP guards against and what it
does not protect, I don't think this change is actually needed. Under
normal conditions we expect kmmpd() to only write to MMP block, checking of
MMP block is done only in ext4_multi_mount_protect(). And for checking
there to trigger, using 'seq' starting from 1 in kmmpd is enough...

								Honza

-- 
Jan Kara [off-list ref]
SUSE Labs, CR
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help