Contributors: 5
Author |
Tokens |
Token Proportion |
Commits |
Commit Proportion |
Josef Bacik |
109 |
56.77% |
2 |
12.50% |
Chris Mason |
57 |
29.69% |
10 |
62.50% |
Leo Martins |
15 |
7.81% |
1 |
6.25% |
David Sterba |
8 |
4.17% |
2 |
12.50% |
Josef Whiter |
3 |
1.56% |
1 |
6.25% |
Total |
192 |
|
16 |
|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
// SPDX-License-Identifier: GPL-2.0
/*
* Copyright (C) 2008 Red Hat. All rights reserved.
*/
#include "ctree.h"
#include "orphan.h"
int btrfs_insert_orphan_item(struct btrfs_trans_handle *trans,
struct btrfs_root *root, u64 offset)
{
BTRFS_PATH_AUTO_FREE(path);
struct btrfs_key key;
key.objectid = BTRFS_ORPHAN_OBJECTID;
key.type = BTRFS_ORPHAN_ITEM_KEY;
key.offset = offset;
path = btrfs_alloc_path();
if (!path)
return -ENOMEM;
return btrfs_insert_empty_item(trans, root, path, &key, 0);
}
int btrfs_del_orphan_item(struct btrfs_trans_handle *trans,
struct btrfs_root *root, u64 offset)
{
BTRFS_PATH_AUTO_FREE(path);
struct btrfs_key key;
int ret = 0;
key.objectid = BTRFS_ORPHAN_OBJECTID;
key.type = BTRFS_ORPHAN_ITEM_KEY;
key.offset = offset;
path = btrfs_alloc_path();
if (!path)
return -ENOMEM;
ret = btrfs_search_slot(trans, root, &key, path, -1, 1);
if (ret < 0)
return ret;
if (ret)
return -ENOENT;
return btrfs_del_item(trans, root, path);
}