From: Vasiliy Kulikov Date: Sun, 5 Sep 2010 18:33:00 +0000 (+0400) Subject: UBIFS: check return code of ubifs_lpt_lookup X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=0e54c8992a35ab8126e8a7661007ddc1745a2597;p=openwrt%2Fstaging%2Fblogic.git UBIFS: check return code of ubifs_lpt_lookup Function ubifs_lpt_lookup may return ERR_PTR(...). Check for it. [Tweaked by Artem Bityutskiy] Signed-off-by: Vasiliy Kulikov Signed-off-by: Artem Bityutskiy --- diff --git a/fs/ubifs/lpt.c b/fs/ubifs/lpt.c index 0084a33c4c69..72775d35b99e 100644 --- a/fs/ubifs/lpt.c +++ b/fs/ubifs/lpt.c @@ -1363,6 +1363,7 @@ static int read_lsave(struct ubifs_info *c) goto out; for (i = 0; i < c->lsave_cnt; i++) { int lnum = c->lsave[i]; + struct ubifs_lprops *lprops; /* * Due to automatic resizing, the values in the lsave table @@ -1370,7 +1371,11 @@ static int read_lsave(struct ubifs_info *c) */ if (lnum >= c->leb_cnt) continue; - ubifs_lpt_lookup(c, lnum); + lprops = ubifs_lpt_lookup(c, lnum); + if (IS_ERR(lprops)) { + err = PTR_ERR(lprops); + goto out; + } } out: vfree(buf);