summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorhujianyang <hujianyang@huawei.com>2014-06-11 10:40:10 +0800
committerArtem Bityutskiy <artem.bityutskiy@linux.intel.com>2014-07-19 09:53:51 +0300
commit5a95741a574f69c8219d3164d1fbf1c855566afe (patch)
treed162ae6e5ccd57731a3801e83483ba6d9ba51fe2 /fs
parent033ead8230c2cf9cdc2d6e1148bfdf5674012a9c (diff)
downloadlinux-5a95741a574f69c8219d3164d1fbf1c855566afe.tar.gz
linux-5a95741a574f69c8219d3164d1fbf1c855566afe.tar.bz2
linux-5a95741a574f69c8219d3164d1fbf1c855566afe.zip
UBIFS: fix error handling in dump_lpt_leb()
This patch checks the return value of 'ubifs_unpack_nnode()'. If this function returns an error, 'nnode' may not be initialized, so just print an error message and break. Signed-off-by: hujianyang <hujianyang@huawei.com> Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Diffstat (limited to 'fs')
-rw-r--r--fs/ubifs/lpt_commit.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/ubifs/lpt_commit.c b/fs/ubifs/lpt_commit.c
index 45d4e96a6bac..ff47893ad5fd 100644
--- a/fs/ubifs/lpt_commit.c
+++ b/fs/ubifs/lpt_commit.c
@@ -1941,6 +1941,11 @@ static void dump_lpt_leb(const struct ubifs_info *c, int lnum)
pr_err("LEB %d:%d, nnode, ",
lnum, offs);
err = ubifs_unpack_nnode(c, p, &nnode);
+ if (err) {
+ pr_err("failed to unpack_node, error %d\n",
+ err);
+ break;
+ }
for (i = 0; i < UBIFS_LPT_FANOUT; i++) {
pr_cont("%d:%d", nnode.nbranch[i].lnum,
nnode.nbranch[i].offs);