Btrfs: fix memory patcher through fs_info->qgroup_ulist
authorJan Schmidt <list.btrfs@jan-o-sch.net>
Tue, 28 May 2013 15:47:22 +0000 (15:47 +0000)
committerJosef Bacik <jbacik@fusionio.com>
Fri, 14 Jun 2013 15:30:07 +0000 (11:30 -0400)
Commit 5b7c665e introduced fs_info->qgroup_ulist, that is allocated during
btrfs_read_qgroup_config and meant to be used later by the qgroup accounting
code. However, it is always freed before btrfs_read_qgroup_config returns,
becuase the commit mentioned above adds a check for (ret), where a check
for (ret < 0) would have been the right choice. This commit fixes the check.

Cc: Wang Shilong <wangsl-fnst@cn.fujitsu.com>
Signed-off-by: Jan Schmidt <list.btrfs@jan-o-sch.net>
Signed-off-by: Josef Bacik <jbacik@fusionio.com>
fs/btrfs/qgroup.c

index d059d86c31312d3c170850a7ed9dafb2e715d2c2..74b432d0b7034961037b8764d16f005380b672de 100644 (file)
@@ -430,7 +430,7 @@ out:
        }
        btrfs_free_path(path);
 
-       if (ret)
+       if (ret < 0)
                ulist_free(fs_info->qgroup_ulist);
 
        return ret < 0 ? ret : 0;