Userspace utilities to manage btrfs filesystems
Go to file
Qu Wenruo 8e3eb7a6e8 btrfs-progs: Add better search generation judgment for btrfs-find-root
Before the patch, btrfs-find-root will only consider it find a good root
if its generation matches generation in superblock and its level is
currently found highest level.

But that's not correct in 2 ways.
1) Root with decreased level
Since tree level can decrease, like subvolume/file deletion.
Which will make the new root have higher generation but lower level.

2) Root not updated in latest transaction.
If there is some root not updated in latest transaction, its generation
will be smaller than the one in superblock, and btrfs-find-root will not
find it.

This patch will use different generation for different tree to search,
solving the above problems.

Currently, it only supports generation/level in superblock. Using tree
root level/generation if possible will be introduced later.

Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
2015-02-11 18:34:06 +01:00
Documentation btrfs-progs: autoconf: detect tools to build docs 2015-02-03 16:06:52 +01:00
tests btrfs-progs: deal with no extent info 2015-02-09 14:53:07 -05:00
.gitignore btrfs-progs: autoconf: generate documentation makefile as well 2015-02-03 15:42:34 +01:00
autogen.sh btrfs-progs: build, make autogen.sh work on older systems 2015-01-28 19:03:23 +01:00
backref.c btrfs-progs: read_tree_block() and read_node_slot() cleanup. 2015-02-02 19:21:24 +01:00
backref.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
bcp
bitops.h
btrfs-calc-size.c btrfs-progs: read_tree_block() and read_node_slot() cleanup. 2015-02-02 19:21:24 +01:00
btrfs-completion btrfs-progs: add bash completion script 2015-02-02 17:49:41 +01:00
btrfs-convert.c btrfs-progs: drop feature defines from C files, in favour of CFLAGS defines 2015-01-27 14:45:59 +01:00
btrfs-corrupt-block.c Btrfs-progs: let btrfs-corrupt-block specify a root 2015-02-09 14:41:51 -05:00
btrfs-crc.c btrfs-progs: use check_argc_* to check arg number for all tools 2014-08-22 15:07:02 +02:00
btrfs-debug-tree.c btrfs-progs: read_tree_block() and read_node_slot() cleanup. 2015-02-02 19:21:24 +01:00
btrfs-debugfs btrfs-progs: Add simple python front end to the search ioctl 2014-12-04 17:03:49 +01:00
btrfs-find-root.c btrfs-progs: Add better search generation judgment for btrfs-find-root 2015-02-11 18:34:06 +01:00
btrfs-fragments.c btrfs-progs: drop feature defines from C files, in favour of CFLAGS defines 2015-01-27 14:45:59 +01:00
btrfs-image.c Btrfs-progs: skip opening all devices with restore 2015-02-09 14:53:15 -05:00
btrfs-list.c btrfs-progs: drop feature defines from C files, in favour of CFLAGS defines 2015-01-27 14:45:59 +01:00
btrfs-list.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
btrfs-map-logical.c btrfs-progs: autoconf: use standard PACKAGE_* macros 2015-01-28 18:00:58 +01:00
btrfs-select-super.c btrfs-progs: autoconf: use standard PACKAGE_* macros 2015-01-28 18:00:58 +01:00
btrfs-show-super.c btrfs-progs: autoconf: use standard PACKAGE_* macros 2015-01-28 18:00:58 +01:00
btrfs-zero-log.c btrfs-progs: autoconf: use standard PACKAGE_* macros 2015-01-28 18:00:58 +01:00
btrfs.c btrfs-progs: autoconf: use standard PACKAGE_* macros 2015-01-28 18:00:58 +01:00
btrfsck.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
btrfstune.c btrfs-progs: autoconf: use standard PACKAGE_* macros 2015-01-28 18:00:58 +01:00
chunk-recover.c Btrfs-progs: skip opening all devices with restore 2015-02-09 14:53:15 -05:00
cmds-balance.c btrfs-progs: drop old fi balance syntax from help 2015-02-02 18:18:16 +01:00
cmds-check.c Btrfs-progs: fix bad extent flag 2015-02-09 14:53:16 -05:00
cmds-device.c btrfs-progs: unify getopt table terminators 2015-01-21 18:56:40 +01:00
cmds-fi-disk_usage.c btrfs-progs: unify getopt table terminators 2015-01-21 18:56:40 +01:00
cmds-fi-disk_usage.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
cmds-filesystem.c btrfs-progs: autoconf: use standard PACKAGE_* macros 2015-01-28 18:00:58 +01:00
cmds-inspect.c Btrfs-progs: fix some build warnings on 32bit platform 2014-08-22 15:07:03 +02:00
cmds-property.c btrfs-progs fix wrong memory free on check_is_root 2014-12-22 18:34:23 +01:00
cmds-qgroup.c btrfs-progs: qgroups, adjust help text 2015-02-03 18:37:33 +01:00
cmds-quota.c Btrfs-progs: fix magic return value in cmds-quota.c 2013-10-16 08:20:41 -04:00
cmds-receive.c btrfs-progs: drop feature defines from C files, in favour of CFLAGS defines 2015-01-27 14:45:59 +01:00
cmds-replace.c btrfs-progs: add new dev replace result 2014-11-25 18:50:58 +01:00
cmds-rescue.c btrfs-progs: use check_argc_exact to check arg number of btrfs-rescue 2014-08-22 14:39:31 +02:00
cmds-restore.c btrfs-progs: read_tree_block() and read_node_slot() cleanup. 2015-02-02 19:21:24 +01:00
cmds-scrub.c btrfs-progs: fix check of running scrub 2015-01-19 18:53:41 +01:00
cmds-send.c btrfs-progs: drop feature defines from C files, in favour of CFLAGS defines 2015-01-27 14:45:59 +01:00
cmds-subvolume.c btrfs-progs: make getopt tables static const 2015-01-19 13:44:49 +01:00
commands.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
configure.ac btrfs-progs: autoconf: do not force fortify flags 2015-02-05 15:11:40 +01:00
COPYING
crc32c.c btrfs-progs: make many private symbols static 2013-09-03 19:41:08 +02:00
crc32c.h
ctree.c btrfs-progs: read_tree_block() and read_node_slot() cleanup. 2015-02-02 19:21:24 +01:00
ctree.h btrfs-progs: Add support to suppress tree block csum error output 2015-02-11 17:14:05 +01:00
dir-item.c Btrfs-progs: delete bogus dir indexes 2014-10-14 10:45:03 +02:00
dir-test.c Btrfs-progs: fix magic return value in dir-test.c 2013-10-16 08:20:42 -04:00
disk-io.c btrfs-progs: Add new btrfs_open_ctree_flags CHUNK_ONLY 2015-02-11 17:19:30 +01:00
disk-io.h btrfs-progs: Add new btrfs_open_ctree_flags CHUNK_ONLY 2015-02-11 17:19:30 +01:00
extent_io.c btrfs-progs: read_tree_block() and read_node_slot() cleanup. 2015-02-02 19:21:24 +01:00
extent_io.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
extent-cache.c btrfs-progs: Add last_cache_extent() for extent-cache. 2014-12-10 11:54:10 +01:00
extent-cache.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
extent-tree.c Btrfs-progs: remove global transaction from fsck 2015-02-09 14:53:15 -05:00
file-item.c btrfs-progs: remove btrfs_release_path before btrfs_free_path 2014-09-14 19:06:12 +02:00
file.c btrfs-progs: Add btrfs_get_extent() and btrfs_punch_hole(). 2015-02-02 14:16:38 +01:00
find-root.c btrfs-progs: Add new find-root.[ch] infrastructure 2015-02-11 18:34:04 +01:00
find-root.h btrfs-progs: Add new find-root.[ch] infrastructure 2015-02-11 18:34:04 +01:00
free-space-cache.c btrfs-progs: Remove a unused function offset_to_bitmap() 2014-12-19 15:05:01 +01:00
free-space-cache.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
fsck.btrfs btrfs-progs: add fsck.btrfs stub and manpage 2014-01-31 08:22:13 -08:00
hash.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
hasher.c
help.c btrfs-progs: include headers required for musl-libc 2014-12-18 18:22:06 +01:00
inode-item.c btrfs-progs: fix overflow check in btrfs_insert_inode_ref 2014-12-30 15:48:55 +01:00
inode-map.c btrfs-progs: remove btrfs_release_path before btrfs_free_path 2014-09-14 19:06:12 +02:00
inode.c btrfs-progs: handle orphan creation error in btrfs_unlink 2015-01-06 18:46:03 +01:00
INSTALL btrfs-progs: Add information about libblkid requirement to INSTALL file 2014-08-22 14:39:31 +02:00
ioctl-test.c btrfs-progs: mark static & remove unused from non-kernel code 2013-09-03 19:40:54 +02:00
ioctl.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
kerncompat.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
library-test.c btrfs-progs: build, add basic build test for library 2014-11-07 17:52:57 +01:00
list_sort.c btrfs-progs: add list_sort and use it to sort devices by id 2013-10-16 08:22:26 -04:00
list_sort.h btrfs-progs: add list_sort and use it to sort devices by id 2013-10-16 08:22:26 -04:00
list.h Btrfs-progs: introduce list_{first, next}_entry/list_splice_tail{_init} 2013-07-03 14:06:55 -04:00
Makefile.in btrfs-progs: Add new find-root.[ch] infrastructure 2015-02-11 18:34:04 +01:00
mkfs.c btrfs-progs: autoconf: use standard PACKAGE_* macros 2015-01-28 18:00:58 +01:00
print-tree.c Btrfs-progs: make debug-tree spit out full_backref flag 2015-02-09 14:53:15 -05:00
print-tree.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
props.c btrfs-progs: use system attr instead of attr library 2014-11-19 14:42:17 +01:00
props.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
qgroup-verify.c btrfs-progs: read_tree_block() and read_node_slot() cleanup. 2015-02-02 19:21:24 +01:00
qgroup-verify.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
qgroup.c btrfs-progs: qgroup: make large size aligned 2015-01-27 14:46:12 +01:00
qgroup.h btrfs-progs: make btrfs qgroups show human readable sizes 2015-01-21 18:13:18 +01:00
quick-test.c Btrfs-progs: rework open_ctree to take flags, add a new one V2 2013-11-07 16:10:40 -05:00
radix-tree.c btrfs-progs: Remove a unused function root_gtp_mask(). 2014-12-19 15:04:56 +01:00
radix-tree.h
raid6.c btrfs-progs: give raid6.c its exported prototypes 2013-09-03 19:41:11 +02:00
random-test.c Btrfs-progs: fix magic return value in random-test.c 2013-10-16 08:20:42 -04:00
rbtree_augmented.h btrfs-progs: libbtrfs, make exported headers compatible with C++ 2014-11-03 23:50:50 +01:00
rbtree-utils.c Btrfs-progs: break out rbtree util functions 2014-10-14 10:39:39 +02:00
rbtree-utils.h btrfs-progs: libbtrfs, make exported headers compatible with C++ 2014-11-03 23:50:50 +01:00
rbtree.c Btrfs-progs: update rbtree libs 2014-10-14 10:39:40 +02:00
rbtree.h btrfs-progs: libbtrfs, make exported headers compatible with C++ 2014-11-03 23:50:50 +01:00
repair.c Btrfs-progs: introduce common insert/search/delete functions for rb-tree 2013-07-03 14:06:54 -04:00
repair.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
root-tree.c Btrfs-progs: free path if we don't find root item 2014-03-21 06:23:32 -07:00
send-stream.c btrfs-progs: fix compiler warning 2014-11-07 18:14:38 +01:00
send-stream.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
send-test.c btrfs-progs: drop feature defines from C files, in favour of CFLAGS defines 2015-01-27 14:45:59 +01:00
send-utils.c btrfs-progs: fix spacing in error messages 2014-11-25 19:50:12 +01:00
send-utils.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
send.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
show-blocks
string-table.c btrfs-progs: Add helpers functions to handle the printing of data in tabular format 2014-12-04 16:48:09 +01:00
string-table.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
super-recover.c Btrfs-progs: skip opening all devices with restore 2015-02-09 14:53:15 -05:00
task-utils.c btrfs-progs: convert: use task for progress indication of metadata creation 2014-12-04 17:13:44 +01:00
task-utils.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
transaction.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
ulist.c btrfs-progs: import ulist 2014-08-22 14:39:33 +02:00
ulist.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00
utils-lib.c btrfs-progs: drop feature defines from C files, in favour of CFLAGS defines 2015-01-27 14:45:59 +01:00
utils.c btrfs-progs: don't output operational status information to stderr 2015-01-27 16:48:44 +01:00
utils.h btrfs-progs: define common geopt values for unit suffixes 2015-01-21 18:13:18 +01:00
uuid-tree.c btrfs-progs: fix in-place byte swapping 2013-09-03 19:41:06 +02:00
version.h.in btrfs-progs: autoconf: use ./configure to generate version.h 2015-01-28 18:00:59 +01:00
version.sh Btrfs progs v3.19-rc2 2015-02-05 17:14:36 +01:00
volumes.c btrfs-progs: drop feature defines from C files, in favour of CFLAGS defines 2015-01-27 14:45:59 +01:00
volumes.h btrfs-progs: unify header file inclusion protections 2015-01-21 17:49:26 +01:00