Userspace utilities to manage btrfs filesystems
Go to file
David Sterba 24f1713777 btrfs-progs: fix unaligned access calculating raid56 data
The extent_buffer::data might be unaligned wrt unsigned long, depends on
acutal layout of the structure and width of the int types. Use explicit
unaligned access helpers.

Reported-by: Anatoly Pugachev <matorola@gmail.com>
Signed-off-by: David Sterba <dsterba@suse.com>
2016-07-28 14:08:30 +02:00
Documentation btrfs-progs: docs: update btrfs-balance manual page 2016-07-28 14:08:29 +02:00
m4 btrfs-progs: build: add m4 macros for AC_CHECK_DEFINE 2016-06-24 14:05:44 +02:00
tests btrfs-progs: tests: add 007-unsupported-block-sizes 2016-07-15 01:25:12 +02:00
.gitignore btrfs-progs: build: let autotools include m4 2016-06-24 14:05:44 +02:00
64-btrfs-dm.rules btrfs-progs: udev: add rules for dm devices 2016-06-01 14:56:56 +02:00
Android.mk btrfs-progs: Add Android build mk file 2015-09-01 14:02:49 +02:00
CHANGES btrfs-progs: update CHANGES for 4.6.1 2016-06-24 14:05:44 +02:00
COPYING
INSTALL btrfs-progs: INSTALL: enhance build instructions 2015-09-07 11:46:32 +02:00
Makefile.extrawarn btrfs-progs: build: allow to build with various compiler warnings 2015-10-21 14:29:26 +02:00
Makefile.in btrfs-progs: makefile: add target for testing installation 2016-06-01 14:56:56 +02:00
README.md btrfs-progs: add an initial README 2015-11-02 15:10:13 +01:00
androidcompat.h btrfs-progs: add compat header for android 2015-09-01 14:02:49 +02:00
autogen.sh btrfs-progs: build: let autotools include m4 2016-06-24 14:05:44 +02:00
backref.c btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
backref.h
bcp
bitops.h
btrfs-calc-size.c btrfs-progs: copy btrfs-calc-size to inspect-internal tree-stats 2016-05-02 14:39:53 +02:00
btrfs-completion btrfs-progs: update docs and completion for tree-stats 2016-05-02 14:39:57 +02:00
btrfs-convert.c btrfs-progs: convert: Fix a bug which fails to insert hole file extent 2016-06-07 18:15:19 +02:00
btrfs-corrupt-block.c btrfs-progs: corrupt block: handle eb read and write errors 2016-07-15 17:03:28 +02:00
btrfs-crc.c btrfs-progs: btrfs-crc: make argc check more strict 2016-06-03 14:49:43 +02:00
btrfs-debug-tree.c btrfs-progs: unify naming of argc and argv 2016-03-14 13:42:47 +01:00
btrfs-debugfs btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
btrfs-find-root.c btrfs-progs: Add new option for specify chunk root bytenr 2016-03-14 13:42:47 +01:00
btrfs-fragments.c btrfs-progs: use ioctl search headers everywhere 2016-05-11 15:53:16 +02:00
btrfs-image.c btrfs-progs: image: fix minor resource leak 2016-07-15 16:27:06 +02:00
btrfs-list.c btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
btrfs-list.h btrfs-progs: add missing includes to header files 2015-06-10 02:52:21 +02:00
btrfs-map-logical.c Btrfs-progs: fix btrfs-map-logical to only print extent mapping info 2016-07-15 11:45:29 +02:00
btrfs-select-super.c btrfs-progs: utils: switch more error messages to common helpers 2016-03-14 14:38:16 +01:00
btrfs-show-super.c btrfs-progs: introduce inspect-internal dump-super 2016-03-14 13:42:47 +01:00
btrfs-zero-log.c btrfs-progs: unify argc min/max checking 2016-03-14 13:42:47 +01:00
btrfs.c btrfs-progs: move prefixcmp to utils 2016-01-14 11:07:10 +01:00
btrfsck.h btrfs-progs: chunk-recovery: Fix a float point error 2015-11-19 18:34:30 +01:00
btrfstune.c btrfs-progs: do not set optind if not necessary 2016-07-13 19:41:55 +02:00
chunk-recover.c btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
cmds-balance.c btrfs-progs: balance: add another (shorter) option for background 2016-07-26 19:30:39 +02:00
cmds-check.c btrfs-progs: check: write corrected qgroup info to disk 2016-07-13 18:44:26 +02:00
cmds-device.c btrfs-progs: do not set optind if not necessary 2016-07-13 19:41:55 +02:00
cmds-fi-du.c btrfs-progs: do not set optind if not necessary 2016-07-13 19:41:55 +02:00
cmds-fi-du.h btrfs-progs: filesystem: add 'du' command 2016-03-14 13:42:47 +01:00
cmds-fi-usage.c btrfs-progs: do not set optind if not necessary 2016-07-13 19:41:55 +02:00
cmds-fi-usage.h btrfs-progs: add missing includes to header files 2015-06-10 02:52:21 +02:00
cmds-filesystem.c btrfs-progs: do not set optind if not necessary 2016-07-13 19:41:55 +02:00
cmds-inspect-dump-super.c btrfs-progs: dump-super: add more long options 2016-03-15 16:41:06 +01:00
cmds-inspect-dump-super.h btrfs-progs: unify naming of argc and argv 2016-03-14 13:42:47 +01:00
cmds-inspect-dump-tree.c btrfs-progs: deprecate and stop using btrfs_level_size 2016-05-02 14:40:23 +02:00
cmds-inspect-dump-tree.h btrfs-progs: unify naming of argc and argv 2016-03-14 13:42:47 +01:00
cmds-inspect-tree-stats.c btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
cmds-inspect-tree-stats.h btrfs-progs: copy btrfs-calc-size to inspect-internal tree-stats 2016-05-02 14:39:53 +02:00
cmds-inspect.c btrfs-progs: do not set optind if not necessary 2016-07-13 19:41:55 +02:00
cmds-property.c btrfs-progs: prop: remove conditions which never be satisfied 2016-05-11 16:43:42 +02:00
cmds-qgroup.c btrfs-progs: do not set optind if not necessary 2016-07-13 19:41:55 +02:00
cmds-quota.c btrfs-progs: do not set optind if not necessary 2016-07-13 19:41:55 +02:00
cmds-receive.c btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
cmds-replace.c btrfs-progs: check for negative return value from ioctl 2016-01-12 15:02:55 +01:00
cmds-rescue.c btrfs-progs: unify argc min/max checking, a few more 2016-03-14 13:42:47 +01:00
cmds-restore.c btrfs-progs: replace leafsize with nodesize 2016-05-02 14:40:18 +02:00
cmds-scrub.c btrfs-progs: do not set optind if not necessary 2016-07-13 19:41:55 +02:00
cmds-send.c btrfs-progs: send: add quiet option 2016-06-01 14:56:56 +02:00
cmds-subvolume.c btrfs-progs: do not set optind if not necessary 2016-07-13 19:41:55 +02:00
commands.h btrfs-progs: clean up commands.h 2016-06-01 14:56:56 +02:00
configure.ac btrfs-progs: build: check if FIEMAP_EXTENT_SHARED is defined 2016-06-24 14:05:44 +02:00
crc32c.c
crc32c.h
ctree.c btrfs-progs: extent-tree: Introduce function to find the first overlapping extent 2016-06-07 18:15:19 +02:00
ctree.h btrfs-progs: check: write corrected qgroup info to disk 2016-07-13 18:44:26 +02:00
dir-item.c btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
dir-test.c
disk-io.c Btrfs-progs: Initialize stripesize to the value of sectorsize 2016-06-17 17:11:26 +02:00
disk-io.h btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
extent-cache.c btrfs-progs: extent-tree: Add add_merge_cache_extent function 2016-01-12 15:01:03 +01:00
extent-cache.h btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
extent-tree.c btrfs-progs: convert: Fix a bug leads to discontinuous extents 2016-07-04 13:44:54 +02:00
extent_io.c btrfs-progs: fix btrfsck of space_cache=v2 bitmaps on big-endian 2016-07-26 18:35:05 +02:00
extent_io.h btrfs-progs: fix btrfsck of space_cache=v2 bitmaps on big-endian 2016-07-26 18:35:05 +02:00
file-item.c btrfs-progs: libbtrfs: remove max/min macros from API 2016-03-14 13:42:47 +01:00
file.c btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
find-root.c btrfs-progs: replace leafsize with nodesize 2016-05-02 14:40:18 +02:00
find-root.h btrfs-progs: find-root: Allow btrfs-find-root to search chunk root even chunk root is corrupted 2016-02-26 17:27:58 +01:00
free-space-cache.c btrfs-progs: libbtrfs: remove max/min macros from API 2016-03-14 13:42:47 +01:00
free-space-cache.h btrfs-progs: check the free space tree in btrfsck 2016-01-12 15:02:54 +01:00
free-space-tree.c btrfs-progs: free-space-tree: minor message adjustments 2016-01-12 15:02:55 +01:00
free-space-tree.h btrfs-progs: check the free space tree in btrfsck 2016-01-12 15:02:54 +01:00
fsck.btrfs
hash.h
hasher.c
help.c btrfs-progs: move prefixcmp to utils 2016-01-14 11:07:10 +01:00
inode-item.c
inode-map.c btrfs-progs: libbtrfs: remove max/min macros from API 2016-03-14 13:42:47 +01:00
inode.c btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
internal.h btrfs-progs: libbtrfs: remove max/min macros from API 2016-03-14 13:42:47 +01:00
interval_tree_generic.h btrfs-progs: Import interval tree implemenation from Linux v4.0-rc7. 2016-02-26 17:27:58 +01:00
ioctl-test.c
ioctl.h btrfs-progs: use the correct struct for BTRFS_IOC_LOGICAL_INO 2016-07-04 14:12:38 +02:00
kerncompat.h btrfs-progs: kerncompat: introduce put_unaligned_x helpers 2016-07-28 14:08:30 +02:00
library-test.c
list.h
list_sort.c btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
list_sort.h
mkfs.c btrfs-progs: mkfs: fix allocation information output of block group types 2016-07-04 14:01:04 +02:00
print-tree.c btrfs-progs: check: write corrected qgroup info to disk 2016-07-13 18:44:26 +02:00
print-tree.h
props.c btrfs-progs: prop: convert error messages to use error() 2016-05-11 16:37:12 +02:00
props.h
qgroup-verify.c btrfs-progs: handle ulist_add errors in qgroup-verify 2016-07-15 16:12:00 +02:00
qgroup-verify.h btrfs-progs: check: write corrected qgroup info to disk 2016-07-13 18:44:26 +02:00
qgroup.c btrfs-progs: use ioctl search headers everywhere 2016-05-11 15:53:16 +02:00
qgroup.h btrfs-progs: add missing includes to header files 2015-06-10 02:52:21 +02:00
quick-test.c btrfs-progs: use calloc instead of malloc+memset 2015-10-21 14:29:26 +02:00
radix-tree.c
radix-tree.h
raid6.c
random-test.c
rbtree-utils.c
rbtree-utils.h
rbtree.c
rbtree.h btrfs-progs: Import interval tree implemenation from Linux v4.0-rc7. 2016-02-26 17:27:58 +01:00
rbtree_augmented.h btrfs-progs: Import interval tree implemenation from Linux v4.0-rc7. 2016-02-26 17:27:58 +01:00
repair.c btrfs-progs: factor out repair mode 2016-07-04 15:22:53 +02:00
repair.h btrfs-progs: factor out repair mode 2016-07-04 15:22:53 +02:00
root-tree.c
send-stream.c
send-stream.h btrfs-progs: add missing includes to header files 2015-06-10 02:52:21 +02:00
send-test.c btrfs-progs: check for negative return value from ioctl 2016-01-12 15:02:55 +01:00
send-utils.c btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
send-utils.h btrfs-progs: drop argument from attribute deprecated 2015-06-30 15:05:07 +02:00
send.h
show-blocks btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
string-table.c btrfs-progs: add function attributes for the printf-like 2016-01-12 15:02:55 +01:00
string-table.h btrfs-progs: string table: fix whitespace damage 2015-11-03 00:55:20 +01:00
super-recover.c btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
task-utils.c btrfs-progs: Check periodic.timer_fd's value before use 2015-11-16 14:23:45 +01:00
task-utils.h
transaction.h btrfs-progs: add missing includes to header files 2015-06-10 02:52:21 +02:00
ulist.c btrfs-progs: typo review of strings and comments 2016-06-01 14:56:56 +02:00
ulist.h
utils-lib.c
utils.c btrfs-progs: du: fix to skip not btrfs dir/file 2016-07-13 18:44:52 +02:00
utils.h btrfs-progs: new helper for option parsing, more permissive for "no options" 2016-06-17 17:01:25 +02:00
uuid-tree.c btrfs-progs: use ioctl search headers everywhere 2016-05-11 15:53:16 +02:00
version.h.in
version.sh Btrfs progs v4.6.1 2016-06-24 14:10:31 +02:00
volumes.c btrfs-progs: fix unaligned access calculating raid56 data 2016-07-28 14:08:30 +02:00
volumes.h btrfs-progs: Introduce function to create convert data chunks 2016-06-07 18:15:19 +02:00

README.md

Btrfs-progs

Userspace utilities to manage btrfs filesystems. License: GPLv2.

Btrfs is a copy on write (COW) filesystem for Linux aimed at implementing advanced features while focusing on fault tolerance, repair and easy administration.

This repository hosts following utilities:

  • btrfs — the main administration tool (manual page)
  • mkfs.btrfs — utility to create the filesystem (manual page)

See INSTALL for build instructions.

Release cycle

The major version releases are time-based and follow the cycle of the linux kernel releases. The cycle usually takes 2 months. A minor version releases may happen in the meantime if there are queued bug fixes or minor useful improvements.

Development

The patch submissions, development or general discussions take place at linux-btrfs@vger.kernel.org mailinglist, subsciption not required.

References