Commit eef19816 authored by Richard Weinberger's avatar Richard Weinberger

ubifs: Fix memory leak in lprobs self-check

Allocate the buffer after we return early.
Otherwise memory is being leaked.

Cc: <stable@vger.kernel.org>
Fixes: 1e51764a ("UBIFS: add new flash file system")
Signed-off-by: default avatarRichard Weinberger <richard@nod.at>
parent 25677478
...@@ -1089,10 +1089,6 @@ static int scan_check_cb(struct ubifs_info *c, ...@@ -1089,10 +1089,6 @@ static int scan_check_cb(struct ubifs_info *c,
} }
} }
buf = __vmalloc(c->leb_size, GFP_NOFS, PAGE_KERNEL);
if (!buf)
return -ENOMEM;
/* /*
* After an unclean unmount, empty and freeable LEBs * After an unclean unmount, empty and freeable LEBs
* may contain garbage - do not scan them. * may contain garbage - do not scan them.
...@@ -1111,6 +1107,10 @@ static int scan_check_cb(struct ubifs_info *c, ...@@ -1111,6 +1107,10 @@ static int scan_check_cb(struct ubifs_info *c,
return LPT_SCAN_CONTINUE; return LPT_SCAN_CONTINUE;
} }
buf = __vmalloc(c->leb_size, GFP_NOFS, PAGE_KERNEL);
if (!buf)
return -ENOMEM;
sleb = ubifs_scan(c, lnum, 0, buf, 0); sleb = ubifs_scan(c, lnum, 0, buf, 0);
if (IS_ERR(sleb)) { if (IS_ERR(sleb)) {
ret = PTR_ERR(sleb); ret = PTR_ERR(sleb);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment