logfs: Grow inode in delete path
[firefly-linux-kernel-4.4.55.git] / fs / logfs / readwrite.c
index 88284c67ba9787ab23b58c2f55fe0f2216475129..4153e65b01488b55d6a5646cee01689b26afc6a3 100644 (file)
@@ -1576,11 +1576,15 @@ int logfs_write_buf(struct inode *inode, struct page *page, long flags)
 static int __logfs_delete(struct inode *inode, struct page *page)
 {
        long flags = WF_DELETE;
+       int err;
 
        inode->i_ctime = inode->i_mtime = CURRENT_TIME;
 
        if (page->index < I0_BLOCKS)
                return logfs_write_direct(inode, page, flags);
+       err = grow_inode(inode, page->index, 0);
+       if (err)
+               return err;
        return logfs_write_rec(inode, page, page->index, 0, flags);
 }