Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2b8120ef authored by Jan Blunck's avatar Jan Blunck Committed by Jan Kara
Browse files

ext2: Use ext2_clear_super_error() in ext2_sync_fs()



ext2_sync_fs() used to duplicate the code from ext2_clear_super_error().

Signed-off-by: default avatarJan Blunck <jblunck@suse.de>
Signed-off-by: default avatarJan Kara <jack@suse.cz>
parent 41d1a636
Loading
Loading
Loading
Loading
+3 −17
Original line number Diff line number Diff line
@@ -1120,8 +1120,8 @@ static void ext2_clear_super_error(struct super_block *sb)
		 * be remapped.  Nothing we can do but to retry the
		 * write and hope for the best.
		 */
		printk(KERN_ERR "EXT2-fs: %s previous I/O error to "
		       "superblock detected", sb->s_id);
		ext2_msg(sb, KERN_ERR,
		       "previous I/O error to superblock detected\n");
		clear_buffer_write_io_error(sbh);
		set_buffer_uptodate(sbh);
	}
@@ -1161,23 +1161,9 @@ static void ext2_sync_super(struct super_block *sb, struct ext2_super_block *es)
static int ext2_sync_fs(struct super_block *sb, int wait)
{
	struct ext2_super_block *es = EXT2_SB(sb)->s_es;
	struct buffer_head *sbh = EXT2_SB(sb)->s_sbh;

	lock_kernel();
	if (buffer_write_io_error(sbh)) {
		/*
		 * Oh, dear.  A previous attempt to write the
		 * superblock failed.  This could happen because the
		 * USB device was yanked out.  Or it could happen to
		 * be a transient write error and maybe the block will
		 * be remapped.  Nothing we can do but to retry the
		 * write and hope for the best.
		 */
		ext2_msg(sb, KERN_ERR,
		       "previous I/O error to superblock detected\n");
		clear_buffer_write_io_error(sbh);
		set_buffer_uptodate(sbh);
	}
	ext2_clear_super_error(sb);

	if (es->s_state & cpu_to_le16(EXT2_VALID_FS)) {
		ext2_debug("setting valid to 0\n");