Files
twx-linux/fs
Theodore Ts'o c173c38416 ext4: avoid kernel warning when writing the superblock to a dead device
commit e86807862e upstream.

The xfstests generic/475 test switches the underlying device with
dm-error while running a stress test.  This results in a large number
of file system errors, and since we can't lock the buffer head when
marking the superblock dirty in the ext4_grp_locked_error() case, it's
possible the superblock to be !buffer_uptodate() without
buffer_write_io_error() being true.

We need to set buffer_uptodate() before we call mark_buffer_dirty() or
this will trigger a WARN_ON.  It's safe to do this since the
superblock must have been properly read into memory or the mount would
have been successful.  So if buffer_uptodate() is not set, we can
safely assume that this happened due to a failed attempt to write the
superblock.

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-01-16 22:12:33 +01:00
..
2017-08-06 18:59:43 -07:00
2018-12-05 19:42:40 +01:00
2018-11-21 09:26:03 +01:00
2019-01-13 10:03:52 +01:00
2018-12-17 09:38:35 +01:00
2017-11-30 08:39:04 +00:00
2018-12-17 09:38:35 +01:00
2018-12-21 14:11:31 +01:00
2017-06-14 15:06:00 +02:00
2018-05-16 10:08:42 +02:00
2018-02-17 13:21:15 +01:00
2017-06-14 15:06:01 +02:00