summaryrefslogtreecommitdiff
path: root/fs/btrfs/ctree.c
AgeCommit message (Collapse)Author
2008-09-25Btrfs: Optimizations for the extent_buffer codeChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2008-09-25Btrfs: Create extent_buffer interface for large blocksizesChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-09-10Add support for defragging files via btrfsctl -d. Avoid OOM on extent treeChris Mason
defrag. Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-08-29Btrfs: ctree.c cleanupsYan
Fixup a few buffer_head release errors, and fix an off by one in balance_node_right. Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-08-27Btrfs: Do more extensive readahead during tree searchesChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-08-27fix block readahead in btrfs_next_leafYan
Send the correct slot down to reada_for_search Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-08-10Btrfs: Add BH_Defrag to mark buffers that are in need of defraggingChris Mason
This allows the tree walking code to defrag only the newly allocated buffers, it seems to be a good balance between perfect defragging and the performance hit of repeatedly reallocating blocks. Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-08-10Btrfs: Btree defrag on the extent-mapping tree as wellChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-08-07Btrfs: Add run time btree defrag, and an ioctl to force btree defragChris Mason
This adds two types of btree defrag, a run time form that tries to defrag recently allocated blocks in the btree when they are still in ram, and an ioctl that forces defrag of all btree blocks. File data blocks are not defragged yet, but this can make a huge difference in sequential btree reads. Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-08-07Btrfs: Fold some btree readahead routines into something more generic.Chris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-08-07Btrfs: Do snapshot deletion in smaller chunks.Chris Mason
Before, snapshot deletion was a single atomic unit. This caused considerable lock contention and required an unbounded amount of space. Now, the drop_progress field in the root item is used to indicate how far along snapshot deletion is, and to resume where it left off. Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-07-11Btrfs: Some code cleanupsAneesh
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-07-11Btrfs: trivial include fixupsZach Brown
Almost none of the files including module.h need to do so, remove them. Include sched.h in extent-tree.c to silence a warning about cond_resched() being undeclared. Signed-off-by: Zach Brown <zach.brown@oracle.com> Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-06-28Btrfs: crash recovery fixesChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-06-22Btrfs: Audit callers and return codes to make sure -ENOSPC gets up the stackChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-06-13btrfs: Code cleanupAneesh
Attaching below is some of the code cleanups that i came across while reading the code. a) alloc_path already calls init_path. b) Mention that btrfs_inode is the in memory copy.Ext4 have ext4_inode_info as the in memory copy ext4_inode as the disk copy Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-06-12Btrfs: add GPLv2Chris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-05-11Btrfs: patch queue: fix corruption when splitting large itemsChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-05-10Btrfs: fix check_node and check_leaf to use less cpuChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-30Btrfs: allocator improvements, inode block groupsChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-20Btrfs: add owner and type fields to the extents aand block headersChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-20Btrfs: node balance optimizationsChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-20Btrfs: write barriers on commit, balance level before splitChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-18Btrfs: working file_write, reorganized key flagsChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-17Btrfs: rework csums and extent item orderingChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-17Btrfs: progress on file_writeChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-16Btrfs: early work to file_write in big extentsChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-11Btrfs: create a logical->phsyical block number mapping schemeChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-10Btrfs: drop owner and parentidChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-05Btrfs: uuidsChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-04Btrfs: support for items bigger than 1/2 the blocksizeChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-04Btrfs: early inline file data codeChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-04-02Btrfs: still corruption huntingChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-30Btrfs: corruption hunt continuesChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-30Btrfs: hunting slab corruptionChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-29Btrfs: verify csums on readChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-27Btrfs: split out level field in struct headerChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-23Add generation number to btrfs_header, readdir fixes, hash collision fixesChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-23btrfs_create, btrfs_write_super, btrfs_sync_fsChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-22Mountable btrfs, with readdirChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-21Btrfs: initial move to kernel module landChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-17Btrfs: minor commentsChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-16Btrfs: transaction handles everywhereChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-16Btrfs: pin freed blocks from the FS tree tooChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-16Btrfs: add a name_len to dir items, reorder keyChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-15Btrfs: Use a chunk of the key flags to record the item type.Chris Mason
Add (untested and simple) directory item code Fix comp_keys to use the new key ordering Add btrfs_insert_empty_item Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-14Btrfs: variable block size supportChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-13Btrfs: merge leaves before splitChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-13Btrfs: make some funcs staticChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>
2007-03-13rename funcs and structs to btrfsChris Mason
Signed-off-by: Chris Mason <chris.mason@oracle.com>