ctree.c (b18c6685810af8e6763760711aece31ccc7a8ea8) | ctree.c (70b2befd0c8a4064715d8b340270650cc9d15af8) |
---|---|
1#include <linux/module.h> 2#include "ctree.h" 3#include "disk-io.h" 4#include "transaction.h" 5 6static int split_node(struct btrfs_trans_handle *trans, struct btrfs_root 7 *root, struct btrfs_path *path, int level); 8static int split_leaf(struct btrfs_trans_handle *trans, struct btrfs_root --- 101 unchanged lines hidden (view full) --- 110 struct btrfs_key k1; 111 112 btrfs_disk_key_to_cpu(&k1, disk); 113 114 if (k1.objectid > k2->objectid) 115 return 1; 116 if (k1.objectid < k2->objectid) 117 return -1; | 1#include <linux/module.h> 2#include "ctree.h" 3#include "disk-io.h" 4#include "transaction.h" 5 6static int split_node(struct btrfs_trans_handle *trans, struct btrfs_root 7 *root, struct btrfs_path *path, int level); 8static int split_leaf(struct btrfs_trans_handle *trans, struct btrfs_root --- 101 unchanged lines hidden (view full) --- 110 struct btrfs_key k1; 111 112 btrfs_disk_key_to_cpu(&k1, disk); 113 114 if (k1.objectid > k2->objectid) 115 return 1; 116 if (k1.objectid < k2->objectid) 117 return -1; |
118 if (k1.offset > k2->offset) 119 return 1; 120 if (k1.offset < k2->offset) 121 return -1; | |
122 if (k1.flags > k2->flags) 123 return 1; 124 if (k1.flags < k2->flags) 125 return -1; | 118 if (k1.flags > k2->flags) 119 return 1; 120 if (k1.flags < k2->flags) 121 return -1; |
122 if (k1.offset > k2->offset) 123 return 1; 124 if (k1.offset < k2->offset) 125 return -1; |
|
126 return 0; 127} 128 129static int check_node(struct btrfs_root *root, struct btrfs_path *path, 130 int level) 131{ 132 int i; 133 struct btrfs_node *parent = NULL; --- 1153 unchanged lines hidden (view full) --- 1287 */ 1288 /* first correct the data pointers */ 1289 for (i = slot; i < nritems; i++) { 1290 u32 ioff = btrfs_item_offset(leaf->items + i); 1291 btrfs_set_item_offset(leaf->items + i, 1292 ioff + size_diff); 1293 } 1294 /* shift the data */ | 126 return 0; 127} 128 129static int check_node(struct btrfs_root *root, struct btrfs_path *path, 130 int level) 131{ 132 int i; 133 struct btrfs_node *parent = NULL; --- 1153 unchanged lines hidden (view full) --- 1287 */ 1288 /* first correct the data pointers */ 1289 for (i = slot; i < nritems; i++) { 1290 u32 ioff = btrfs_item_offset(leaf->items + i); 1291 btrfs_set_item_offset(leaf->items + i, 1292 ioff + size_diff); 1293 } 1294 /* shift the data */ |
1295printk("truncate item, new_size %u old_size %u, diff %u, bufp %p, dst, %p, num %u, old_data_start %u, data_end %u\n", new_size, old_size, size_diff, leaf, btrfs_leaf_data(leaf) + data_end + size_diff, old_data_start-data_end, old_data_start, data_end); | |
1296 btrfs_memmove(root, leaf, btrfs_leaf_data(leaf) + 1297 data_end + size_diff, btrfs_leaf_data(leaf) + 1298 data_end, old_data_start + new_size - data_end); 1299 btrfs_set_item_size(leaf->items + slot, new_size); 1300 btrfs_mark_buffer_dirty(leaf_buf); 1301 1302 ret = 0; 1303 if (btrfs_leaf_free_space(root, leaf) < 0) --- 363 unchanged lines hidden --- | 1295 btrfs_memmove(root, leaf, btrfs_leaf_data(leaf) + 1296 data_end + size_diff, btrfs_leaf_data(leaf) + 1297 data_end, old_data_start + new_size - data_end); 1298 btrfs_set_item_size(leaf->items + slot, new_size); 1299 btrfs_mark_buffer_dirty(leaf_buf); 1300 1301 ret = 0; 1302 if (btrfs_leaf_free_space(root, leaf) < 0) --- 363 unchanged lines hidden --- |