aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/extent_map.c
Commit message (Collapse)AuthorAgeFilesLines
...
* Btrfs: Allow tree blocks larger than the page sizeChris Mason2008-09-251-25/+66
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Change the remaining radix trees used by extent-tree.c to extent_map ↵Chris Mason2008-09-251-2/+3
| | | | | | trees Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Stop using radix trees for the block group cacheChris Mason2008-09-251-2/+16
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Fix extent_buffer and extent_state leaksChris Mason2008-09-251-11/+53
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Go back to kmaps instead of page_address in extent_buffersChris Mason2008-09-251-31/+19
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Avoid memcpy where possible in extent_buffersChris Mason2008-09-251-30/+102
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Optimizations for the extent_buffer codeChris Mason2008-09-251-3/+8
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Create extent_buffer interface for large blocksizesChris Mason2008-09-251-16/+656
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: factor page private preparations into a helperChristoph Hellwig2008-09-251-25/+15
| | | | | Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: [PATCH] extent_map: add writepage_end_io hookChristoph Hellwig2007-09-101-0/+2
| | | | | | | | | | | | | XFS updates the ondisk inode size only after the data I/O has finished, so it needs a hook when the writepage end_bio handler has finished. Might not be worth applying as-is as the per-page callback is very ineffcient. What XFS really wants is a callback when writeout of a whole extent has completed. This delayed i_size updates scheme might be worthwile for btrfs aswell, btw. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: [PATCH] extent_map: make the writepage_io hook optionalChristoph Hellwig2007-09-101-1/+6
| | | | | | | | | The writepage_io is not mandatory, e.g. my port of xfs to the extent_map code does not have one for now. So handle a NULL pointer gracefully here. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: [PATCH] extent_map: provide generic bmapChristoph Hellwig2007-09-101-0/+19
| | | | | | | | | | generic_bmap is completely trivial, while the extent to bh mapping in btrfs is rather complex. So provide a extent_bmap instead that takes a get_extent callback and can be used by filesystem using the extent_map code. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: [PATCH] extent_map: fix locking for bio completionChristoph Hellwig2007-09-101-6/+8
| | | | | | | | | | | | | The bio completion handlers can be run in any context, e.g. when using the old ide driver they run in hardirq context with irqs disabled so lockdep rightfully warns about using write_lock_irq useage in these handlers. This patch switches clear_extent_bit and set_extent_bit to write_lock_irqsave to fix this problem. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Reorder tests in set_extent_bit to properly find holesChris Mason2007-09-101-22/+22
| | | | | | | | Yan Zheng noticed that set_extent_bit was exiting too early when there was a hole in the map. The fix is to reorder the tests to check for the hole first. Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Add support for defragging files via btrfsctl -d. Avoid OOM on extent treeChris Mason2007-09-101-6/+10
| | | | | | defrag. Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: fsx delalloc fixesChris Mason2007-08-301-2/+7
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add file data csums back in via hooks in the extent map codeChris Mason2007-08-301-10/+84
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add delayed allocation to the extent based page tree codeChris Mason2007-08-271-35/+112
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Extent based page cache code. This uses an rbtree of extents and testsChris Mason2007-08-271-0/+1656
instead of buffer heads. Signed-off-by: Chris Mason <chris.mason@oracle.com>