We should release this mutex before returning the error code.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
if (root->fs_info->quota_enabled) {
ret = btrfs_qgroup_reserve(root, num_bytes +
nr_extents * root->leafsize);
if (root->fs_info->quota_enabled) {
ret = btrfs_qgroup_reserve(root, num_bytes +
nr_extents * root->leafsize);
+ if (ret) {
+ mutex_unlock(&BTRFS_I(inode)->delalloc_mutex);
}
ret = reserve_metadata_bytes(root, block_rsv, to_reserve, flush);
}
ret = reserve_metadata_bytes(root, block_rsv, to_reserve, flush);