UBIFS: do not read flash unnecessarily
authorArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
Fri, 25 Mar 2011 16:33:57 +0000 (18:33 +0200)
committerBrad Figg <brad.figg@canonical.com>
Wed, 27 Apr 2011 18:41:03 +0000 (11:41 -0700)
BugLink: http://bugs.launchpad.net/bugs/761134

commit 8b229c76765816796eec7ccd428f03bd8de8b525 upstream.

This fix makes the 'dbg_check_old_index()' function return
immediately if debugging is disabled, instead of executing
incorrect 'goto out' which causes UBIFS to:

1. Allocate memory
2. Read the flash

On every commit. OK, we do not commit that often, but it is
still silly to do unneeded I/O anyway.

Credits to coverity for spotting this silly issue.

Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>

fs/ubifs/commit.c

index 02429d8..32bcb2c 100644 (file)
@@ -521,7 +521,7 @@ int dbg_check_old_index(struct ubifs_info *c, struct ubifs_zbranch *zroot)
        size_t sz;
 
        if (!(ubifs_chk_flags & UBIFS_CHK_OLD_IDX))
-               goto out;
+               return 0;
 
        INIT_LIST_HEAD(&list);