summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Btrfs: Implement ACLs setting and gettingYan2008-09-253-41/+51
| | | | | | ACLs are stored but not used for permission checks (yet) Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Remove verbose WARN_ONChris Mason2008-09-251-2/+0
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Fix extent_buffer usage when nodesize != leafsizeChris Mason2008-09-253-15/+54
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add flush barriers on commitChris Mason2008-09-253-3/+16
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Remove extent_map debugging messageChris Mason2008-09-251-1/+0
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add inode flags supportYan2008-09-253-14/+24
| | | | | | This patch adds NODATASUM & NODATACOW inode flags support. Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: online shrinking fixesChris Mason2008-09-252-11/+36
| | | | | | | | | | While shrinking the FS, the allocation functions need to make sure they don't try to allocate bytes past the end of the FS. nodatacow needed an extra check to force cows when the existing extents are past the end of the FS. Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Disable btree reada during extent backref lookups.Chris Mason2008-09-251-0/+4
| | | | | | This reada is generally not effective. Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add some simple throttling to wait for data=ordered and snapshot deletionChris Mason2008-09-256-0/+26
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Move snapshot creation to commit timeChris Mason2008-09-253-67/+100
| | | | | | | | | | It is very difficult to create a consistent snapshot of the btree when other writers may update the btree before the commit is done. This changes the snapshot creation to happen during the commit, while no other updates are possible. Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add data=ordered supportChris Mason2008-09-2513-28/+387
| | | | | | | | This forces file data extents down the disk along with the metadata that references them. The current implementation is fairly simple, and just writes out all of the dirty pages in an inode before the commit. Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Change tree block csum tagging to avoid false error messagesChris Mason2008-09-251-10/+36
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: resizer: don't hold the fs_mutex for long periods of timeChris Mason2008-09-251-1/+21
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Properly call btrfs_search_slot while shrinkingChris Mason2008-09-251-1/+9
| | | | | | | | The shrinking code used btrfs_next_leaf to find the next item, but this does not cow the blocks it touches. This fix calls search_slot after finding the next item to do appropriate cow and balancing. Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Lower the max inline size to 8kChris Mason2008-09-251-1/+1
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Change st_blocksize to 4kChris Mason2008-09-252-2/+9
| | | | | | | Some programs (python) do rwm cycles at the granularity returned by stat. Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Properly handle overlapping extent in shrink_extent_treeYan2008-09-251-84/+56
| | | | | | | | | | | The patch fixes the overlapping extent issue in shrink_extent_tree. It checks whether there is an overlapping extent by using find_previous_extent. If there is an overlapping extent, it setups key.objectid and cur_byte properly. --- Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add a helper that finds previous extent itemYan2008-09-251-44/+36
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Fix lock ordering of the snapshot semaphore against the page lockChris Mason2008-09-251-2/+4
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* count_snapshots: Properly update the leaf pointer after btrfs_next_leafChris Mason2008-09-252-3/+3
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Force inlining off in a few places to save stack usageChris Mason2008-09-253-49/+54
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: 32 bit compile fixes for the resizer and enospc checksChris Mason2008-09-252-4/+10
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Reduce stack usage in the resizer, fix 32 bit compilesChris Mason2008-09-255-43/+63
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Explicitly send a root objectid to count_snapshots_in_pathChris Mason2008-09-252-44/+11
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add readahead to the online shrinker, and a mount -o alloc_start= for ↵Chris Mason2008-09-255-9/+28
| | | | | | testing Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Fix NULL block groups on reading the inodeChris Mason2008-09-252-2/+6
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Support for online FS resize (grow and shrink)Chris Mason2008-09-258-14/+629
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Fix an off by one in the extent_map prepare write codeChris Mason2008-09-252-3/+3
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Implement basic support for -ENOSPCChris Mason2008-09-256-28/+193
| | | | | | | | | | This is intended to prevent accidentally filling the drive. A determined user can still make things oops. It includes some accounting of the current bytes under delayed allocation, but this will change as things get optimized Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Less aggressive readahead on deletesChris Mason2008-09-251-9/+11
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Fix nodatacow extent lookupChris Mason2008-09-251-1/+0
| | | | | | | Yan Zheng noticed the offset into the extent was incorrectly being added to the extent start before trying to find it in the extent allocation tree. Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Fix delayed allocation to avoid missing delalloc extentsChris Mason2008-09-252-2/+8
| | | | | | find_lock_delalloc_range could exit out too early Signed-off-by: Chris Mason <chris.mason@oracle.com>
* kmalloc a few large stack objects in the btrfs_ioctl pathChris Mason2008-09-252-24/+56
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Back port to 2.6.18-el kernelsChris Mason2008-09-259-20/+239
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add mount option to enforce a max extent sizeChris Mason2008-09-254-11/+65
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Fix extent_map and extent_state leaks by flushing lrus on FS unmountChris Mason2008-09-251-0/+10
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add mount option to turn off data cowChris Mason2008-09-255-25/+293
| | | | | | | | | | | A number of workloads do not require copy on write data or checksumming. mount -o nodatasum to disable checksums and -o nodatacow to disable both copy on write and checksumming. In nodatacow mode, copy on write is still performed when a given extent is under snapshot. Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add mount -o nodatasum to turn of file data checksummingChris Mason2008-09-254-9/+34
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Fixes for loopback files in btrfsChris Mason2008-09-252-2/+14
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Off by one fix for btrfs_drop_extentsYan2008-09-251-1/+2
| | | | | | | | | | | One of my old patches introduces a new bug to btrfs_drop_extents(changeset 275). Inline extents are not truncated properly when "extent_end == end", it can trigger the BUG_ON at file.c:600. I hope I don't introduce new bug this time. --- Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Reorder extent back refs to differentiate btree blocks from file dataChris Mason2008-09-252-10/+10
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Fix btrfs_inc_ref to add backref hintsChris Mason2008-09-251-2/+4
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Fix typo in .. check (thanks Yan)Chris Mason2008-09-251-1/+1
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add backrefs for symbolic link inodesChris Mason2008-09-251-17/+13
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Extra NULL block group checks in find_free_extentChris Mason2008-09-251-0/+6
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add back pointers from the inode to the directory that references itChris Mason2008-09-253-143/+272
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add lowest key information to back refs for extent tree blocks as well.Chris Mason2008-09-254-19/+110
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Add back pointers from extents to the btree or file referencing themChris Mason2008-09-258-105/+577
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: Implement generation numbers in block pointersChris Mason2008-09-253-8/+115
| | | | Signed-off-by: Chris Mason <chris.mason@oracle.com>
* Btrfs: section mismatch warningsChristian Hesse2008-09-253-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | --Boundary-00=_CcOWHFYK4T+JwSj Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Hello everybody, compiling btrfs into the kernel results in section mismatch warnings. __exit functions are called where they are not allowed to. The attached patch fixes this for me. Not sure if it is correct though. Signed-off-by: Christian Hesse <mail@earthworm.de> -- Regards, Chris --Boundary-00=_CcOWHFYK4T+JwSj Content-Type: text/x-diff; charset="iso-8859-1"; name="btrfs-section_mismatches.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="btrfs-section_mismatches.patch" Signed-off-by: Chris Mason <chris.mason@oracle.com>