diff --git a/fs/buffer.c b/fs/buffer.c index 23f645657488ba7ff5bd07cd9d0a85bdc96a2e0b..20cd9ea64253678cdf30458cd7feb9505e9ebeba 100644 --- a/fs/buffer.c +++ b/fs/buffer.c @@ -2083,7 +2083,8 @@ static int __block_commit_write(struct inode *inode, struct page *page, set_buffer_uptodate(bh); mark_buffer_dirty(bh); } - clear_buffer_new(bh); + if (buffer_new(bh)) + clear_buffer_new(bh); block_start = block_end; bh = bh->b_this_page;