aboutsummaryrefslogtreecommitdiffstats
path: root/fs/logfs/dir.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/logfs/dir.c')
-rw-r--r--fs/logfs/dir.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/logfs/dir.c b/fs/logfs/dir.c
index 89104e6..e7659b1 100644
--- a/fs/logfs/dir.c
+++ b/fs/logfs/dir.c
@@ -224,10 +224,14 @@ static int logfs_unlink(struct inode *dir, struct dentry *dentry)
inode->i_ctime = dir->i_ctime = dir->i_mtime = CURRENT_TIME;
page = logfs_get_dd_page(dir, dentry);
- if (!page)
+ if (!page) {
+ kfree(ta);
return -ENOENT;
- if (IS_ERR(page))
+ }
+ if (IS_ERR(page)) {
+ kfree(ta);
return PTR_ERR(page);
+ }
index = page->index;
page_cache_release(page);