]> Git Repo - linux.git/commit
ext4: Fix WARN_ON_ONCE in ext4_commit_super()
authorPranay Kr. Srivastava <[email protected]>
Mon, 4 Jul 2016 14:24:52 +0000 (10:24 -0400)
committerTheodore Ts'o <[email protected]>
Mon, 4 Jul 2016 14:24:52 +0000 (10:24 -0400)
commit4743f83990614af6adb09ea7aa3c37b78c4031ab
tree86784086a26c2d2181270426145540310de8acd0
parent646caa9c8e196880b41cd3e3d33a2ebc752bdb85
ext4: Fix WARN_ON_ONCE in ext4_commit_super()

If there are racing calls to ext4_commit_super() it's possible for
another writeback of the superblock to result in the buffer being
marked with an error after we check if the buffer is marked as having
a write error and the buffer up-to-date flag is set again.  If that
happens mark_buffer_dirty() can end up throwing a WARN_ON_ONCE.

Fix this by moving this check to write before we call
write_buffer_dirty(), and keeping the buffer locked during this whole
sequence.

Signed-off-by: Pranay Kr. Srivastava <[email protected]>
Signed-off-by: Theodore Ts'o <[email protected]>
fs/ext4/super.c
This page took 0.067128 seconds and 4 git commands to generate.