Userspace utilities to manage btrfs filesystems
Go to file
David Woodhouse 4d48b96b28 Add basic RAID[56] support
David Woodhouse originally contributed this code, and Chris Mason
changed it around to reflect the current design goals for raid56.

The original code expected all metadata and data writes to be full
stripes.  This meant metadata block size == stripe size, and had a few
other restrictions.

This version allows metadata blocks smaller than the stripe size.  It
implements both raid5 and raid6, although it does not have code to
rebuild from parity if one of the drives is missing or incorrect.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
2013-02-01 14:22:07 -05:00
man btrfs-progs: remove '-h' from btrfs man page 2013-01-17 18:27:56 +01:00
.gitignore btrfs-progs: add a recovery utility to pull files from damanged filesystems 2011-10-27 12:49:54 -04:00
.hgignore Add .hgignore file to ignore verison.h 2008-07-23 11:36:13 -04:00
.hgtags Added tag v0.16 for changeset 2b26e4f8c71e 2008-08-04 15:46:36 -04:00
bcp Btrfs-progs: Correct path munging in bcp 2011-10-25 09:18:58 -04:00
bit-radix.c Make btrfs-progs compile with -fstrict-aliasing (included in -O2) again. 2007-09-14 10:31:06 -04:00
bit-radix.h add GPLv2 2007-06-12 09:07:11 -04:00
btrfs-corrupt-block.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
btrfs-defrag.c new util: 'btrfs' 2010-03-11 13:45:47 -05:00
btrfs-image.c Mixed back reference (FORWARD ROLLING FORMAT CHANGE) 2009-06-08 13:30:36 -04:00
btrfs-list.c Btrfs-progs: fix unaligned accesses 2013-01-17 18:27:53 +01:00
btrfs-list.h Btrfs-Progs: fix subvolumes's some full_path invaild problems. 2012-10-04 16:26:33 -04:00
btrfs-map-logical.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
btrfs-select-super.c btrfsck: decode error properly 2011-10-25 09:18:59 -04:00
btrfs-show.c Deprecate btrfsctl, btrfs-show, btrfs-vol 2011-10-25 09:18:31 -04:00
btrfs-vol.c Btrfs-progs: only enforce a maximum size if we specify one 2012-10-02 13:02:48 +02:00
btrfs-zero-log.c btrfs-progs: make sure btrfs-zero-log writes something 2011-11-21 10:27:17 -05:00
btrfs.c Btrfs-progs: fix several complie warning 2012-10-04 16:26:31 -04:00
btrfsck.c btrfs-progs: ignore -a option in mkfs 2013-01-17 18:34:40 +01:00
btrfsctl.c avoid several strncpy-induced buffer overruns 2012-06-05 19:56:20 +01:00
btrfslabel.c Btrfs-progs: seg fault in get_label_unmounted 2012-10-04 16:26:32 -04:00
btrfslabel.h Add the "btrfs filesystem label" command 2011-10-25 09:18:31 -04:00
btrfstune.c update btrfs-progs for seed device support 2008-11-18 10:40:06 -05:00
calc-size.c btrfs-progs: add a recovery utility to pull files from damanged filesystems 2011-10-27 12:49:54 -04:00
cmds-balance.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
cmds-device.c Btrfs-progs: only enforce a maximum size if we specify one 2012-10-02 13:02:48 +02:00
cmds-filesystem.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
cmds-inspect.c btrfs-progs: fix 32bit int/pointer cast warnings 2013-01-17 18:27:55 +01:00
cmds-qgroup.c Btrfs-progs: fix arguments check of qgroup limit 2012-10-02 13:02:51 +02:00
cmds-quota.c Btrfs progs: quota groups support 2012-09-04 11:15:49 +02:00
cmds-receive.c btrfs-progs: Receive: preserve ownership for symlinks, by using 'lchown' 2013-01-17 18:27:54 +01:00
cmds-scrub.c btrfs-progs: Fix getopt on arm platforms 2013-01-17 18:27:56 +01:00
cmds-send.c btrfs-progs: Fix getopt on arm platforms 2013-01-17 18:27:56 +01:00
cmds-subvolume.c Btrfs-progs: btrfs subvolume delete could delete subvolumes 2012-10-04 16:26:34 -04:00
commands.h Btrfs progs: quota groups support 2012-09-04 11:15:49 +02:00
common.c Btrfs-progs: rearrange files in the repo 2012-02-03 21:00:17 +02:00
convert.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
COPYING fix COPYING 2007-06-12 15:41:08 -04:00
crc32c.c Btrfs-progs: fix several complie warning 2012-10-04 16:26:31 -04:00
crc32c.h Btrfs-progs: fix several complie warning 2012-10-04 16:26:31 -04:00
ctree.c btrfsck: add early code to handle corrupted block groups 2012-02-22 10:59:55 -05:00
ctree.h Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
debug-tree.c btrfs-progs: update usage description for debug-tree.c 2013-01-17 18:27:55 +01:00
dir-item.c Fix unused-but-set errors in gcc-4.6 2011-10-25 09:18:32 -04:00
dir-test.c Btrfs: add btrfs-debug-tree -b <block number> to print a single block 2010-04-06 09:30:17 -04:00
disk-io.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
disk-io.h Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
extent_io.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
extent_io.h Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
extent-cache.c Fix unused-but-set errors in gcc-4.6 2011-10-25 09:18:32 -04:00
extent-cache.h Add semantic checks to btrfsck for files and directories 2009-01-07 14:57:12 -05:00
extent-tree.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
file-item.c btrfs-progs: Improvement for making btrfs image from source directory. 2011-10-25 09:19:00 -04:00
find-root.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
hash.h Switch btrfs_name_hash() to crc32c 2008-08-20 20:11:23 -04:00
hasher.c Unaligned access fixes 2008-02-15 11:19:58 -05:00
help.c Btrfs-progs: allow multi-line command group synopsis 2012-02-08 18:55:51 +02:00
inode-item.c btrfs-progs new dir index support 2008-07-24 12:13:32 -04:00
inode-map.c btrfs-progs: Fix printf format casting errors 2008-04-01 10:52:22 -04:00
INSTALL btrfs-progs-unstable: replace debug-tree to btrfs-debug-tree in INSTALL 2011-10-25 09:18:59 -04:00
ioctl-test.c Test the additional ioctl. 2011-10-25 09:18:58 -04:00
ioctl.h Btrfs progs: quota groups support 2012-09-04 11:15:49 +02:00
kerncompat.h Btrfs-progs: Fix compiler warnings on PPC64 2013-01-17 18:12:57 +01:00
list.h Dynamic chunk allocation 2008-03-24 15:03:58 -04:00
Makefile Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
mkfs.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
print-tree.c btrfs-progs: pretty print key in extent_item 2012-10-04 16:26:34 -04:00
print-tree.h Btrfs: add btrfs-debug-tree -b <block number> to print a single block 2010-04-06 09:30:17 -04:00
qgroup.c Btrfs progs: quota groups support 2012-09-04 11:15:49 +02:00
qgroup.h Btrfs progs: quota groups support 2012-09-04 11:15:49 +02:00
quick-test.c Btrfs: add btrfs-debug-tree -b <block number> to print a single block 2010-04-06 09:30:17 -04:00
radix-tree.c Make btrfs-progs compile with -fstrict-aliasing (included in -O2) again. 2007-09-14 10:31:06 -04:00
radix-tree.h i386 fixes from axboe 2007-06-12 11:39:09 -04:00
raid6.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
random-test.c Btrfs: add btrfs-debug-tree -b <block number> to print a single block 2010-04-06 09:30:17 -04:00
rbtree.c Stop using radix trees to record pending allocations 2007-10-15 16:25:04 -04:00
rbtree.h Stop using radix trees to record pending allocations 2007-10-15 16:25:04 -04:00
repair.c Btrfsck: add the ability to prune corrupt extent allocation tree blocks 2012-02-21 14:37:21 -05:00
repair.h Btrfsck: add the ability to prune corrupt extent allocation tree blocks 2012-02-21 14:37:21 -05:00
restore.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
root-tree.c Btrfs: update converter for the new disk format 2008-12-17 16:10:07 -05:00
send-stream.c Btrfs-progs: add btrfs send/receive commands 2012-07-26 14:51:27 -04:00
send-stream.h Btrfs-progs: add btrfs send/receive commands 2012-07-26 14:51:27 -04:00
send-utils.c Btrfs-progs: restructure list_subvolumes 2012-10-04 16:26:32 -04:00
send-utils.h Btrfs-progs: add btrfs send/receive commands 2012-07-26 14:51:27 -04:00
send.h Btrfs-progs: add btrfs send/receive commands 2012-07-26 14:51:27 -04:00
show-blocks Fix showblocks to display different colors for different metadata roots 2009-03-09 13:00:44 -04:00
transaction.h Update btrfs-progs to match kernel sources 2008-01-04 10:38:22 -05:00
utils.c btrfs-progs: plug memory leaks in btrfs_scan_one_dir() reported by cppcheck. 2013-01-17 18:27:55 +01:00
utils.h Move parse_size() to utils.[hc] 2013-01-17 18:27:54 +01:00
version.sh version.sh: fix version when built from tarball 2013-01-17 18:13:03 +01:00
volumes.c Add basic RAID[56] support 2013-02-01 14:22:07 -05:00
volumes.h Add basic RAID[56] support 2013-02-01 14:22:07 -05:00