Messages in this thread Patch in this message | | | From | Jan Kara <> | Subject | [PATCH] udf: Mark LVID buffer as uptodate before marking it dirty | Date | Fri, 23 Dec 2011 12:10:33 +0100 |
| |
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.
Signed-off-by: Jan Kara <jack@suse.cz> --- fs/udf/super.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)
I carry this patch in my tree and will merge it with Linus in the next merge window if noone objects.
diff --git a/fs/udf/super.c b/fs/udf/super.c index e185253..87cb24a 100644 --- a/fs/udf/super.c +++ b/fs/udf/super.c @@ -1799,6 +1799,12 @@ static void udf_close_lvid(struct super_block *sb) le16_to_cpu(lvid->descTag.descCRCLength))); lvid->descTag.tagChecksum = udf_tag_checksum(&lvid->descTag); + /* + * We set buffer uptodate unconditionally here to avoid spurious + * warnings from mark_buffer_dirty() when previous EIO has marked + * the buffer as !uptodate + */ + set_buffer_uptodate(bh); mark_buffer_dirty(bh); sbi->s_lvid_dirty = 0; mutex_unlock(&sbi->s_alloc_mutex); -- 1.7.1
| |