[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20191215015849.23223-1-navid.emamdoost@gmail.com>
Date: Sat, 14 Dec 2019 19:58:48 -0600
From: Navid Emamdoost <navid.emamdoost@...il.com>
To: Mike Marshall <hubcap@...ibond.com>,
Martin Brandenburg <martin@...ibond.com>,
devel@...ts.orangefs.org, linux-kernel@...r.kernel.org
Cc: emamd001@....edu, Navid Emamdoost <navid.emamdoost@...il.com>
Subject: [PATCH] orangefs: Fix memory leak in orangefs_mount
In the implementation of orangefs_mount() the allocated memory for sb
info should be released if op_alloc() fails. Release it via
goto free_sb_and_op.
Fixes: 482664ddba81 ("orangefs: add features op")
Signed-off-by: Navid Emamdoost <navid.emamdoost@...il.com>
---
fs/orangefs/super.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/fs/orangefs/super.c b/fs/orangefs/super.c
index ee5efdc35cc1..ad98b893989b 100644
--- a/fs/orangefs/super.c
+++ b/fs/orangefs/super.c
@@ -566,8 +566,10 @@ struct dentry *orangefs_mount(struct file_system_type *fst,
if (orangefs_userspace_version >= 20906) {
new_op = op_alloc(ORANGEFS_VFS_OP_FEATURES);
- if (!new_op)
- return ERR_PTR(-ENOMEM);
+ if (!new_op) {
+ d = ERR_PTR(-ENOMEM);
+ goto free_sb_and_op;
+ }
new_op->upcall.req.features.features = 0;
ret = service_operation(new_op, "orangefs_features", 0);
orangefs_features = new_op->downcall.resp.features.features;
--
2.17.1
Powered by blists - more mailing lists