UBIFS: fix oops on error path in read_pnode

commit 54acbaaa52 upstream.

Thanks to coverity which spotted that UBIFS will oops if 'kmalloc()'
in 'read_pnode()' fails and we dereference a NULL 'pnode' pointer
when we 'goto out'.

Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Artem Bityutskiy 2011-03-25 19:09:54 +02:00 committed by Willy Tarreau
parent 8356f8768a
commit acd3bc5b82

View File

@ -1240,10 +1240,9 @@ static int read_pnode(struct ubifs_info *c, struct ubifs_nnode *parent, int iip)
lnum = branch->lnum;
offs = branch->offs;
pnode = kzalloc(sizeof(struct ubifs_pnode), GFP_NOFS);
if (!pnode) {
err = -ENOMEM;
goto out;
}
if (!pnode)
return -ENOMEM;
if (lnum == 0) {
/*
* This pnode was not written which just means that the LEB