aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Marshall <tdm.code@gmail.com>2017-05-18 23:50:22 +0000
committerAndreas Blaesius <skate4life@gmx.de>2017-06-07 15:23:23 +0000
commit423532f98b4d3e57e5b59d5140e9c06e83f560a6 (patch)
treec166112ace0c9fb578310e3e6451b76ab01469c0
parent6bd3eaad59ab6a02de1387a341b56bcf49fc1998 (diff)
downloadkernel_samsung_tuna-423532f98b4d3e57e5b59d5140e9c06e83f560a6.tar.gz
kernel_samsung_tuna-423532f98b4d3e57e5b59d5140e9c06e83f560a6.tar.bz2
kernel_samsung_tuna-423532f98b4d3e57e5b59d5140e9c06e83f560a6.zip
kernel: Fix potential refcount leak in su check
Change-Id: I8d2c8bed65a01eb0928308df638a04449a5bd881
-rw-r--r--fs/namei.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/namei.c b/fs/namei.c
index c202c8d4c13..e0957f2b048 100644
--- a/fs/namei.c
+++ b/fs/namei.c
@@ -1626,8 +1626,10 @@ static int path_lookupat(int dfd, const char *name,
if (!err) {
struct super_block *sb = nd->inode->i_sb;
if (sb->s_flags & MS_RDONLY) {
- if (d_is_su(nd->path.dentry) && !su_visible())
+ if (d_is_su(nd->path.dentry) && !su_visible()) {
+ path_put(&nd->path);
err = -ENOENT;
+ }
}
}