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} |