aboutsummaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2011-12-23 05:53:07 -0500
committerJan Kara <jack@suse.cz>2012-01-09 07:52:10 -0500
commit853a0c25baf96b028de1654bea1e0c8857eadf3d (patch)
tree2b72d7cafe569583322fa132ebc8c9821e8d7bce /fs
parent33c104d415e92a51aaf638dc3d93920cfa601e5c (diff)
udf: Mark LVID buffer as uptodate before marking it dirty
When we hit EIO while writing LVID, the buffer uptodate bit is cleared. This then results in an anoying warning from mark_buffer_dirty() when we write the buffer again. So just set uptodate flag unconditionally. Reviewed-by: Namjae Jeon <linkinjeon@gmail.com> Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs')
-rw-r--r--fs/udf/super.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/udf/super.c b/fs/udf/super.c
index e185253470df..87cb24a0ee7b 100644
--- a/fs/udf/super.c
+++ b/fs/udf/super.c
@@ -1799,6 +1799,12 @@ static void udf_close_lvid(struct super_block *sb)
1799 le16_to_cpu(lvid->descTag.descCRCLength))); 1799 le16_to_cpu(lvid->descTag.descCRCLength)));
1800 1800
1801 lvid->descTag.tagChecksum = udf_tag_checksum(&lvid->descTag); 1801 lvid->descTag.tagChecksum = udf_tag_checksum(&lvid->descTag);
1802 /*
1803 * We set buffer uptodate unconditionally here to avoid spurious
1804 * warnings from mark_buffer_dirty() when previous EIO has marked
1805 * the buffer as !uptodate
1806 */
1807 set_buffer_uptodate(bh);
1802 mark_buffer_dirty(bh); 1808 mark_buffer_dirty(bh);
1803 sbi->s_lvid_dirty = 0; 1809 sbi->s_lvid_dirty = 0;
1804 mutex_unlock(&sbi->s_alloc_mutex); 1810 mutex_unlock(&sbi->s_alloc_mutex);