key.offset = qgroupid;
 
        path = btrfs_alloc_path();
-       BUG_ON(!path);
+       if (!path)
+               return -ENOMEM;
+
        ret = btrfs_search_slot(trans, root, &key, path, 0, 1);
        if (ret > 0)
                ret = -ENOENT;
        key.offset = qgroup->qgroupid;
 
        path = btrfs_alloc_path();
-       BUG_ON(!path);
+       if (!path)
+               return -ENOMEM;
+
        ret = btrfs_search_slot(trans, root, &key, path, 0, 1);
        if (ret > 0)
                ret = -ENOENT;
        key.offset = 0;
 
        path = btrfs_alloc_path();
-       BUG_ON(!path);
+       if (!path)
+               return -ENOMEM;
+
        ret = btrfs_search_slot(trans, root, &key, path, 0, 1);
        if (ret > 0)
                ret = -ENOENT;