Btrfs: avoid double free of fs_info->qgroup_ulist
authorJan Schmidt <list.btrfs@jan-o-sch.net>
Tue, 28 May 2013 15:47:23 +0000 (15:47 +0000)
committerJosef Bacik <jbacik@fusionio.com>
Fri, 14 Jun 2013 15:30:08 +0000 (11:30 -0400)
commiteb1716af887375f1e2099f69bb89dfc5bd169bfa
tree634461e97227d6d75b3e05f47567bd1d1478beb2
parent4373519db4dbca05341a60b28f6e159b106e4c4b
Btrfs: avoid double free of fs_info->qgroup_ulist

When btrfs_read_qgroup_config or btrfs_quota_enable return non-zero, we've
already freed the fs_info->qgroup_ulist. The final btrfs_free_qgroup_config
called from quota_disable makes another ulist_free(fs_info->qgroup_ulist)
call.

We set fs_info->qgroup_ulist to NULL on the mentioned error paths, turning
the ulist_free in btrfs_free_qgroup_config into a noop.

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