inode-item.c (5caf2a002901f0fde475371c4bf1c553b51884af) inode-item.c (1e1d27017c5986c1ea81181506042cf9cba3f6ea)
1#include <linux/module.h>
1#include <stdio.h>
2#include <stdlib.h>
3#include "kerncompat.h"
4#include "radix-tree.h"
2#include "ctree.h"
3#include "disk-io.h"
5#include "ctree.h"
6#include "disk-io.h"
4#include "transaction.h"
5
7
6int btrfs_insert_inode(struct btrfs_trans_handle *trans, struct btrfs_root
7 *root, u64 objectid, struct btrfs_inode_item
8 *inode_item)
8int btrfs_insert_inode(struct btrfs_root *root, u64 objectid,
9 struct btrfs_inode_item *inode_item)
9{
10{
10 struct btrfs_path *path;
11 struct btrfs_path path;
11 struct btrfs_key key;
12 int ret;
13 key.objectid = objectid;
14 key.flags = 0;
15 btrfs_set_key_type(&key, BTRFS_INODE_ITEM_KEY);
16 key.offset = 0;
17
12 struct btrfs_key key;
13 int ret;
14 key.objectid = objectid;
15 key.flags = 0;
16 btrfs_set_key_type(&key, BTRFS_INODE_ITEM_KEY);
17 key.offset = 0;
18
18 path = btrfs_alloc_path();
19 BUG_ON(!path);
20 btrfs_init_path(path);
21 ret = btrfs_insert_item(trans, root, &key, inode_item,
22 sizeof(*inode_item));
23 btrfs_release_path(root, path);
24 btrfs_free_path(path);
19 btrfs_init_path(&path);
20 ret = btrfs_insert_item(root, &key, inode_item, sizeof(*inode_item));
21 btrfs_release_path(root, &path);
25 return ret;
26}
27
22 return ret;
23}
24
28int btrfs_lookup_inode(struct btrfs_trans_handle *trans, struct btrfs_root
29 *root, struct btrfs_path *path, u64 objectid, int mod)
25int btrfs_lookup_inode(struct btrfs_root *root, struct btrfs_path *path,
26 u64 objectid, int mod)
30{
31 struct btrfs_key key;
32 int ins_len = mod < 0 ? -1 : 0;
33 int cow = mod != 0;
34
35 key.objectid = objectid;
36 key.flags = 0;
37 btrfs_set_key_type(&key, BTRFS_INODE_ITEM_KEY);
38 key.offset = 0;
27{
28 struct btrfs_key key;
29 int ins_len = mod < 0 ? -1 : 0;
30 int cow = mod != 0;
31
32 key.objectid = objectid;
33 key.flags = 0;
34 btrfs_set_key_type(&key, BTRFS_INODE_ITEM_KEY);
35 key.offset = 0;
39 return btrfs_search_slot(trans, root, &key, path, ins_len, cow);
36 return btrfs_search_slot(root, &key, path, ins_len, cow);
40}
37}