Commit message (Collapse) | Author | Age | ||
---|---|---|---|---|
... | ||||
* | Fix balance_level to free the middle block if there is room in the left one | Chris Mason | 2008-04-24 | |
| | | | | | | balance level starts by trying to empty the middle block, and then pushes from the right to the middle. This might empty the right block and leave a small number of pointers in the middle. | |||
* | Update the Ext3 converter | Chris Mason | 2008-04-22 | |
| | | | | | | | | | | | The main changes in this patch are adding chunk handing and data relocation ability. In the last step of conversion, the converter relocates data in system chunk and move chunk tree into system chunk. In the rollback process, the converter remove chunk tree from system chunk and copy data back. Regards YZ --- | |||
* | Add chunk uuids and update multi-device back references | Chris Mason | 2008-04-15 | |
| | | | | | | | | | | | | | | | | | | 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. | |||
* | Don't allow written blocks from this transaction to be reallocated | Chris Mason | 2008-04-04 | |
| | | | | | | | | | | | | When a block is freed, it can be immediately reused if it is from the current transaction. But, an extra check is required to make sure the block had not been written yet. If it were reused after being written, the transid in the block header might match the transid of the next time the block was allocated. The parent node records the transaction ID of the block it is pointing to, and this is used as part of validating the block on reads. So, there can only be one version of a block per transaction. | |||
* | Recow all roots at the end of mkfs | Chris Mason | 2008-04-04 | |
| | | | | | | The mkfs code bootstraps the filesystem on a single device. Once the raid block groups are setup, it needs to recow all of the blocks so that each tree is properly allocated. | |||
* | Add support for single single duplication of metadata | Chris Mason | 2008-04-03 | |
| | ||||
* | Add mirroring support across multiple drives | Chris Mason | 2008-04-03 | |
| | ||||
* | btrfs-progs: Fix printf format casting errors | Alex Chiang | 2008-04-01 | |
| | | | | | | | | | | | We get lots of warnings of the flavor: utils.c:441: warning: format '%Lu' expects type 'long long unsigned int' but argument 2 has type 'u64' And thanks to -Werror, the build fails. Clean up these printfs by properly casting the arg to the format specified. Signed-off-by: Alex Chiang <achiang@hp.com> | |||
* | Implement raid0 when multiple devices are present | Chris Mason | 2008-03-25 | |
| | | | | This defaults to striping across all devices | |||
* | Walk all block devices looking for btrfs | Chris Mason | 2008-03-24 | |
| | ||||
* | Dynamic chunk allocation | Chris Mason | 2008-03-24 | |
| | ||||
* | Add support for multiple devices per filesystem | Chris Mason | 2008-03-24 | |
| | ||||
* | Remove extent back refs in batches, and avoid duplicate searches | Chris Mason | 2008-03-04 | |
| | ||||
* | Add debugging for block group update failure | Chris Mason | 2008-02-04 | |
| | ||||
* | Insert extent record and the first backref in a single balance | Chris Mason | 2008-03-04 | |
| | ||||
* | Tune readahead during defrag to avoid reading too much at once | Chris Mason | 2008-01-24 | |
| | ||||
* | Rename the extent_map code to extent_io | Chris Mason | 2008-03-04 | |
| | | | | This mirrors the changes in the kernel code. | |||
* | Hash in the owner and offset for file extent backref keys | Chris Mason | 2008-02-01 | |
| | ||||
* | A few update for btrfs-progs | Yan | 2008-01-08 | |
| | | | | | | | Hello, This patch adds inode flags definition to btrfs-progs and updates extent-tree.c to match the kernel. | |||
* | Update find_free_extent for the ext3 conversion tool | Yan | 2008-01-04 | |
| | | | | | This patch adds customized find_free_extent support to btrfs-progs, the conversion program requires this. | |||
* | Update btrfs-progs to match kernel sources | Yan | 2008-01-04 | |
| | ||||
* | Add back pointers from extents to the file or btree referencing them | Chris Mason | 2007-12-11 | |
| | ||||
* | Add generation numbers to block pointers | Chris Mason | 2007-12-09 | |
| | ||||
* | Update btrfs-progs to better match the kernel | Yan | 2007-12-05 | |
| | ||||
* | Add simple stripe size parameter | Chris Mason | 2007-11-30 | |
| | ||||
* | properly init block group cache structs | Chris Mason | 2007-10-19 | |
| | ||||
* | Remove the last radix tree (block_group_cache) | Chris Mason | 2007-10-17 | |
| | ||||
* | Create a slightly more generic extent-caching structure | Chris Mason | 2007-10-15 | |
| | ||||
* | Switch to byte granular allocations | Chris Mason | 2007-10-15 | |
| | ||||
* | Stop using radix trees to record pending allocations | Chris Mason | 2007-10-15 | |
| | ||||
* | Allow large blocks | Chris Mason | 2007-10-15 | |
| | ||||
* | Make btrfs-progs compile with -fstrict-aliasing (included in -O2) again. | Jan Engelhardt | 2007-09-14 | |
| | | | | | | | | | This is done by doing a two-step conversion (rather than a one-step). First, the variable goes from type * to void *, and then to implicitly to void **. (Not sure if this is "good practice", but it shuts up the compiler, so it seems the compiler takes into account that we are actually punning it this way.) | |||
* | btrfs-progs support for root block accounting | Josef Bacik | 2007-08-29 | |
| | | | | | | This adds support for keeping track of the number of blocks used by root_item's. This makes it so that mkfs lays down the "default" subvol with the correct block accounting in place. Thank you, | |||
* | add GPLv2 | Chris Mason | 2007-06-12 | |
| | ||||
* | printf cleanups | Chris Mason | 2007-06-12 | |
| | ||||
* | 32 bit compile fixes | Chris Mason | 2007-06-08 | |
| | ||||
* | cleanup warnings found with -O2 | Chris Mason | 2007-05-22 | |
| | ||||
* | start of block group code | Chris Mason | 2007-04-26 | |
| | ||||
* | get rid of the extent_item type field | Chris Mason | 2007-04-24 | |
| | ||||
* | fsck checks against extent map, small fixes | Chris Mason | 2007-04-23 | |
| | ||||
* | add owner and type fields to the extents aand block headers | Chris Mason | 2007-04-20 | |
| | ||||
* | drop owner and parentid | Chris Mason | 2007-04-10 | |
| | ||||
* | uuids | Chris Mason | 2007-04-05 | |
| | ||||
* | generations on headers | Chris Mason | 2007-03-26 | |
| | ||||
* | Better block record keeping, real mkfs | Chris Mason | 2007-03-20 | |
| | ||||
* | Add inode map, and the start of file extent items | Chris Mason | 2007-03-20 | |
| | ||||
* | transaction handles everywhere | Chris Mason | 2007-03-16 | |
| | ||||
* | pin freed blocks from the FS tree too | Chris Mason | 2007-03-16 | |
| | ||||
* | Use a chunk of the key flags to record the item type. | Chris Mason | 2007-03-15 | |
| | | | | | | Add (untested and simple) directory item code Fix comp_keys to use the new key ordering Add btrfs_insert_empty_item | |||
* | variable block size support | Chris Mason | 2007-03-14 | |
| |