Chris Mason
6702ed490c
Btrfs: Add run time btree defrag, and an ioctl to force btree defrag
...
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>
18 years ago
Zach Brown
ec6b910fb3
Btrfs: trivial include fixups
...
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>
18 years ago
Chris Mason
ccd467d60e
Btrfs: crash recovery fixes
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
4b52dff6d3
Btrfs: Fix super block updates during transaction commit
...
The super block written during commit was not consistent with the state of
the trees. This change adds an in-memory copy of the super so that we can
make sure to write out consistent data during a commit.
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
5eda7b5e9b
Btrfs: Add the ability to find and remove dead roots after a crash.
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
54aa1f4dfd
Btrfs: Audit callers and return codes to make sure -ENOSPC gets up the stack
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
11bd143fc8
Btrfs: Switch to libcrc32c to avoid problems with cryptomgr on highmem machines
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
8c2383c3dd
Subject: Rework btrfs_file_write to only allocate while page locks are held
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
9ebefb180b
Btrfs: patch queue: page_mkwrite
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
340887809d
Btrfs: i386 fixes from axboe
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
6cbd557078
Btrfs: add GPLv2
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
5af3981c18
Btrfs: printk fixes
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
39279cc3d2
Btrfs: split up super.c
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
0cf6c62017
Btrfs: remove device tree
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
facda1e787
Btrfs: get forced transaction commits via workqueue
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
08607c1b18
Btrfs: add compat ioctl
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
f9f3c6b666
Btrfs: 2.6.21-git fixes
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
de428b63b1
Btrfs: allocator optimizations, truncate readahead
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
509659cde5
Btrfs: switch to crc32c instead of sha256
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
e37c9e6921
Btrfs: many allocator fixes, pretty solid
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
be74417553
Btrfs: more allocator enhancements
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
35b7e47610
Btrfs: fix page cache memory leak
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
090d18753c
Btrfs: directory readahead
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
28b8bb9e00
Btrfs: allocator tweaks
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
cd1bc4653d
Btrfs: more block allocator work
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
9078a3e1e4
Btrfs: start of block group code
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
f2458e1d8c
Btrfs: change around extent-tree prealloc
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
4d77567309
Btrfs: add owner and type fields to the extents aand block headers
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
e66f709b15
Btrfs: write barriers on commit, balance level before split
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
8fd17795b2
Btrfs: early fsync support
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
236454dfff
Btrfs: many file_write fixes, inline data
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
70b2befd0c
Btrfs: rework csums and extent item ordering
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
b4100d6424
Btrfs: add a device id to device items
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
8352d8a473
Btrfs: add disk ioctl, mostly working
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
7eccb903a8
Btrfs: create a logical->phsyical block number mapping scheme
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
0bd93ba022
Btrfs: early support for multiple devices
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
2619ba1f0f
Btrfs: subvolumes
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
1b05da2ee6
Btrfs: drop the inode map tree
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
c5739bba52
Btrfs: snapshot progress
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
0f7d52f443
Btrfs: groundwork for subvolume and snapshot roots
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
d6e4a428eb
Btrfs: start of support for many FS volumes
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
5be6f7f174
Btrfs: dirindex optimizations
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
b1a4d96509
Btrfs: tweak the inode-map and free extent search starts on cold mount
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
9d64272cd3
Btrfs: don't wait on uptodate buffers on read
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
2da566edd8
Btrfs: csum_verify_file_block locking fix
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
7cfcc17e7f
Btrfs: corruptions fixed
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
2c90e5d658
Btrfs: still corruption hunting
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
d602557953
Btrfs: corruption hunt continues
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
22b0ebda6c
Btrfs: hunting slab corruption
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago
Chris Mason
f254e52c1c
Btrfs: verify csums on read
...
Signed-off-by: Chris Mason <chris.mason@oracle.com>
18 years ago