Chris Mason
c830821ddf
Add disk format elements for compression
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2008-10-29 14:37:41 -04:00
Yan Zheng
5986faaf47
Remove offset field from struct btrfs_extent_ref
...
The offset field in struct btrfs_extent_ref records the position
inside file that file extent is referenced by. In the new back
reference system, tree leaves holding reference to file extent
are recorded explicitly. We can quickly scan these tree leaves, so the
offset field is not required.
This patch also makes the back reference system check the objectid
when extents are being deleted
Signed-off-by: Yan Zheng <zheng.yan@oracle.com>
2008-10-09 11:55:30 -04:00
Zheng Yan
428b7fa630
Full back reference support
...
This patch makes the back reference system to explicit record the
location of parent node for all types of extents. The location of
parent node is placed into the offset field of backref key. Every
time a tree block is balanced, the back references for the affected
lower level extents are updated.
2008-09-23 12:29:10 -04:00
Josef Bacik
0045e0dd70
btrfs-progs: add orphan support to print-tree
...
This adds orphan support to print-tree so when debug_tree hits an orphan item it
will print out "orphan item" under it so you know what it is
2008-07-30 09:15:02 -04:00
Josef Bacik
059c20b384
btrfs-progs new dir index support
2008-07-24 12:13:32 -04:00
Chris Mason
9a9bdd6047
Pass down the expected generation number when reading tree blocks
2008-05-12 13:51:24 -04:00
Chris Mason
951fd7371c
Add chunk uuids and update multi-device back references
...
Block headers now store the chunk tree uuid
Chunk items records the device uuid for each stripes
Device extent items record better back refs to the chunk tree
Block groups record better back refs to the chunk tree
The chunk tree format has also changed. The objectid of BTRFS_CHUNK_ITEM_KEY
used to be the logical offset of the chunk. Now it is a chunk tree id,
with the logical offset being stored in the offset field of the key.
This allows a single chunk tree to record multiple logical address spaces,
upping the number of bytes indexed by a chunk tree from 2^64 to
2^128.
2008-04-15 15:42:08 -04:00
Chris Mason
1f3ba6a3f9
Btrfsck updates for multi-device filesystems
2008-03-24 15:04:37 -04:00
Chris Mason
510be29677
Add support for multiple devices per filesystem
2008-03-24 15:03:18 -04:00
Chris Mason
ba1efed418
btrfs_print_node: don't use btrfs_item_key_to_cpu on nodes
2008-01-07 15:25:48 -05:00
Yan
7777e63b42
Update btrfs-progs to match kernel sources
2008-01-04 10:38:22 -05:00
Chris Mason
fba66bd865
Add back pointers from the inode to the directory that referenced it
2007-12-12 14:39:36 -05:00
Chris Mason
4122e65cb2
Add back pointers from extents to the file or btree referencing them
2007-12-11 09:21:42 -05:00
Chris Mason
73372dcf8f
Add generation numbers to block pointers
2007-12-09 13:46:24 -05:00
Josef Bacik
e3815ddde6
xattr support for btrfs-progs
2007-11-16 11:46:07 -05:00
Chris Mason
38f79f9077
Switch to byte granular allocations
2007-10-15 16:25:14 -04:00
Chris Mason
f12d799856
Allow large blocks
2007-10-15 16:24:39 -04:00
Chris Mason
8454d619a7
extra stats for btrfsck, link count in print-tree.c
2007-09-14 09:19:19 -04:00
Chris Mason
0528b69c15
add defrag ioctl
2007-08-07 16:15:59 -04:00
Chris Mason
d9f1317c7d
add GPLv2
2007-06-12 09:07:11 -04:00
Chris Mason
38ef945266
printf cleanups
2007-06-12 08:08:04 -04:00
Chris Mason
b53a236c3e
remove device tree
2007-06-09 09:22:37 -04:00
Chris Mason
9b25940b9d
data vs metadata flag for block groups
2007-05-30 10:21:32 -04:00
Chris Mason
007e5efb9b
allocator improvements, inode block groups
2007-04-30 15:25:49 -04:00
Chris Mason
5856b7e124
start of block group code
2007-04-26 16:46:06 -04:00
Chris Mason
10d06538f1
get rid of the extent_item type field
2007-04-24 12:09:01 -04:00
Chris Mason
2f2264fc2d
add owner and type fields to the extents aand block headers
2007-04-20 20:23:29 -04:00
Chris Mason
07eb5008f3
bring back the inode number directory index
2007-04-19 15:41:24 -04:00
Chris Mason
eb3bd5da66
inline file data in extents
2007-04-19 13:38:02 -04:00
Chris Mason
8c973943bb
key flag reorg
2007-04-18 16:15:47 -04:00
Chris Mason
8d1d13c786
rework csum and extent item ordering
2007-04-17 15:40:34 -04:00
Chris Mason
23218726a2
early work to file_write in big extents
2007-04-16 09:23:09 -04:00
Chris Mason
3eaaf935e5
add some support for multiple devices to progs
2007-04-12 12:14:47 -04:00
Chris Mason
d23ea8706c
early support for multiple devices
2007-04-11 13:57:55 -04:00
Chris Mason
e52d2e2fa1
drop owner and parentid
2007-04-10 12:36:58 -04:00
Chris Mason
1b4ca380ed
drop the inode map tree
2007-04-10 12:13:29 -04:00
Chris Mason
8accdae27a
start of support for subvolumes
2007-04-06 15:39:12 -04:00
Chris Mason
6542904d95
dir inode index
2007-04-04 21:23:26 -04:00
Chris Mason
4d11434c12
update print-tree for inline data
2007-04-04 13:27:22 -04:00
Chris Mason
4200896a53
add file extents to print_leaf
2007-03-26 16:01:00 -04:00
Chris Mason
132db51b1f
generations on headers
2007-03-26 11:24:42 -04:00
Chris Mason
8a2c8123c5
create a root dir in mkfs
2007-03-21 11:13:29 -04:00
Chris Mason
ab61081c6c
change dir-test to insert inode_items
2007-03-20 15:57:25 -04:00
Chris Mason
099f1ae6e4
Add inode map, and the start of file extent items
2007-03-20 14:38:32 -04:00
Chris Mason
80fabe2ee0
add a name_len to dir items, reorder key
2007-03-16 08:46:49 -04:00
Chris Mason
e89de2d271
directory testing code and dir item fixes
2007-03-15 15:18:43 -04:00
Chris Mason
da99898c78
Use a chunk of the key flags to record the item type.
...
Add (untested and simple) directory item code
Fix comp_keys to use the new key ordering
Add btrfs_insert_empty_item
2007-03-15 12:56:47 -04:00
Chris Mason
c8afca944b
reorder key offset and flags
2007-03-14 14:26:53 -04:00
Chris Mason
7a0a809b4c
variable block size support
2007-03-14 14:14:43 -04:00
Chris Mason
942050de0e
add leaf data casting helper
2007-03-14 10:31:29 -04:00