summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Retry metadata reads in the face of checksum failuresChris Mason2008-04-09
|
* Change btrfs_map_block to return a structure with mappings for all stripesChris Mason2008-04-09
|
* Don't allow written blocks from this transaction to be reallocatedChris Mason2008-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.
* Use leafsize and nodesize == pagesize for nowChris Mason2008-04-09
|
* Recow all roots at the end of mkfsChris Mason2008-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 mkfs options for data and metadata mirroring modesChris Mason2008-04-03
| | | | | | | | | | | | | | mkfs.btrfs --data {raid0,raid1,single} mkfs.btrfs --metadata {raid0,raid1,single} In single mode, no extra duplication or striping is done. In raid0 mode, blocks are spread across all of the available devices In raid1 mode, blocks are mirrored across two devices. For metadata, if raid1 is used and there is only one device, the metadata is duplicated on that single spindle. The defaults are raid0 for data and raid1 for metadata
* Add support for single single duplication of metadataChris Mason2008-04-03
|
* Add mirroring support across multiple drivesChris Mason2008-04-03
|
* Use getopt_long and introduce long mkfs options. -s now means --sectorsizeChris Mason2008-04-01
|
* btrfs-progs: Fix printf format casting errorsAlex Chiang2008-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>
* btrfs-progs: Stop stomping on 'name' input parameterAlex Chiang2008-04-01
| | | | | | | | | | | | | | | | | In btrfs_name_hash, Local variable 'buf' is declared as __u32 buf[2]; but we then try to do this: buf[0] = 0x67452301; buf[1] = 0xefcdab89; buf[2] = 0x98badcfe; buf[3] = 0x10325476; Oops. Fix buf to be the proper size. Signed-off-by: Alex Chiang <achiang@hp.com>
* check if partition is mounted before mkfsGoldwyn Rodrigues2008-04-01
| | | | | | | | This saves from the blunder of formatting a live mounted filesystem. This can be extended to get the mount flags of the filesystem mounted. Signed-off-by: Goldwyn Rodrigues <rgoldwyn@gmail.com>
* Update struct btrfs_header flags, and use it to indicate buffers are writtenChris Mason2008-04-01
|
* Implement raid0 when multiple devices are presentChris Mason2008-03-25
| | | | This defaults to striping across all devices
* Walk all block devices looking for btrfsChris Mason2008-03-24
|
* ioctls to scan for btrfs filesystemsChris Mason2008-03-24
|
* Btrfsck updates for multi-device filesystemsChris Mason2008-03-24
|
* Dynamic chunk allocationChris Mason2008-03-24
|
* Add support for multiple devices per filesystemChris Mason2008-03-24
|
* Remove extent back refs in batches, and avoid duplicate searchesChris Mason2008-03-04
|
* Add debugging for block group update failureChris Mason2008-02-04
|
* Call btrfs_cow_block while lowering tree level.Yan2008-02-01
| | | | | | | | When freeing root block of a tree, btrfs_free_extent' parameter 'ref_generation' is from root block itseft. When freeing non-root block, 'ref_generation' is from its parent. so when converting a non-root block to root block, we must guarantee its generation is equal to its parent's generation.
* Insert extent record and the first backref in a single balanceChris Mason2008-03-04
|
* Copy correct tree when inserting into slot 0Chris Mason2008-01-30
|
* Add inode item and backref in one insert, reducing cpu usageChris Mason2008-01-29
|
* During deletes and truncate, remove many items at once from the treeChris Mason2008-01-29
|
* Add some extra debugging around file data checksum failuresChris Mason2008-03-04
|
* Tune readahead during defrag to avoid reading too much at onceChris Mason2008-01-24
|
* Rename the extent_map code to extent_ioChris Mason2008-03-04
| | | | This mirrors the changes in the kernel code.
* Add debug-tree -e to print all allocated extents, and show-blocks to graph themChris Mason2008-03-03
|
* Added tag v0.13 for changeset 58b803dc9faeChris Mason2008-02-21
|
* CRC32C big endian bugs...David Miller2008-02-15
| | | | | The CRC32C implementation in the btrfs progs is different from the one in the kernel, so obviously nothing can possibly work on big-endian.
* Unaligned access fixesDavid Miller2008-02-15
| | | | | | | | | | | | | The first problem is that these SETGET macros lose typing information, and therefore can't see the 'packed' attribute and therefore take unaligned access SIGBUS signals on sparc64 when trying to derefernce the member. The next problem is a similar issue in btrfs_name_hash(). This gets passed things like &key.offset which is a member of a packed structure, losing this packed'ness information btrfs_name_hash() performs a potentially unaligned memory access, again resulting in a SIGBUS.
* mkfs: Zero 2MB at the start and end of the deviceChris Mason2008-02-15
| | | | But, on sparc, don't zero the first 1k.
* Added tag v0.12 for changeset 5e8f040cdf7cChris Mason2008-02-06
|
* Update magicChris Mason2008-02-04
|
* Hash in the owner and offset for file extent backref keysChris Mason2008-02-01
|
* Fix for test_range_bitYan2008-01-22
| | | | | test_range_bit doesn't properly handle the case: there's a hole at the end of the range and there's no other extent_state after the range.
* Fix btrfsck args checkingKyle McMartin2008-01-22
| | | | | btrfsck fails to check if it actually received a dev argument though, so if you don't pass a device, we get a nice segfault.
* btrfs-progs: build with -D_FORTIFY_SOURCE=2Jan Engelhardt2008-01-22
| | | | | | | | | | | Add -D_FORTIFY_SOURCE=2 to the makeflags. It has been very helpful in finding problems. Signed-off-by: Jan Engelhardt <jengelh@computergmbh.de> --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
* btrfs-progs: fix a buffer overflow during mkfsJan Engelhardt2008-01-22
| | | | | | | | | | | | Using strncpy avoids a 1 byte overflow into the next field of the struct. The overflow is harmless, but does trip automated tools. Signed-off-by: Jan Engelhardt <jengelh@computergmbh.de> --- utils.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
* Fix for btrfs_find_free_objectidYan2008-01-22
| | | | | | btrfs_find_free_objectid may return a used objectid due to arithmetic underflow. This bug may happen when parameter 'root' is tree root, so it may cause serious problems when creating snapshot or sub-volume.
* Fixes for the converterYan2008-01-22
| | | | | | | | | | | | | | Hello, This patch fixes two newly found bugs in the converter. The important one is in create_ext2_image, sub-volume root directory's size not properly updated after creating the ext2 image file. The other one is a small bug in xattr support codes. In addition to the fixes, this patch moves the 'if mounted' check to main() function. Regards YZ ---
* Added tag v0.11 for changeset b3e59089dab6Chris Mason2008-01-17
|
* Remove kernel-space header in btrfs-progsYan2008-01-17
| | | | | | When porting ctree.c in btrfs kernel module to btrfs-progs, I forgot to remove a kernel-space header. This may cause compile error on some system.
* Added tag v0.10 for changeset 548ea8d7514bChris Mason2008-01-15
|
* Install btrfs-convert during make installChris Mason2008-01-14
|
* Change the magic to rev the disk formatChris Mason2008-01-14
|
* Add readonly inode flagYan2008-01-14
| | | | | This patch adds readonly inode flag support. A file with this flag can't be modified, but can be deleted.
* xattr support for the ext3->btrfs converterYan2008-01-14
|