diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 53a157884ad62680138e3af2a587a4cd1a57377d..1824c0ef6fa6fe45d059e4ae4963de18558bedd5 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c @@ -1891,6 +1891,13 @@ static int __ext4_journalled_writepage(struct page *page, goto out; } + if (!page_has_buffers(page)) { + /* Check buffer valid since we ever unlock this page */ + ext4_journal_stop(handle); + ClearPageDirty(page); + goto out; + } + if (inline_data) { ret = ext4_mark_inode_dirty(handle, inode); } else {