Development of userspace BTRFS tools
Find a file
Mark Fasheh 86279e7ef2 btrfs-progs: add extended inode ref support to btrfsck
Add a function, process_inode_extref() to be called from process_one_leaf()
when an item type of BTRFS_INODE_EXTREF_KEY is encountered.

Similarly to process_inode_ref(), process_inode_extref() walks an extref and
adds an inode_backref structure for each reference found within.

I modified fsck's inode_backref to get a type field (ref_type) which helps
us internally track the exact type of backrefs found.  Of course this field
could be overwritten in case of disk corruption (duplicate refs) but
duplicate refs themselves are tracked by btrfsck so that should not be an
issue as btrfsck is written today.

Signed-off-by: Mark Fasheh <mfasheh@suse.de>
2013-01-31 22:33:23 +01:00
man Btrfs-progs: man btrfs: subcommands must be grouped together 2013-01-31 19:14:43 +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 Btrfs-progs, btrfs-corrupt-block: fix the wrong usage 2012-07-03 16:27:46 -04:00
btrfs-defrag.c new util: 'btrfs' 2010-03-11 13:45:47 -05:00
btrfs-image.c btrfs-progs: Handle errors returned from open_ctree 2013-01-21 18:27:54 +01:00
btrfs-list.c Btrfs-progs: we need to have the string null terminated 2013-01-25 22:45:39 +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 Btrfs-progs, btrfs-map-logical: Fix typo in usage 2012-07-03 16:27:46 -04:00
btrfs-select-super.c btrfs-progs: Handle errors returned from open_ctree 2013-01-21 18:27:54 +01:00
btrfs-show-super.c btrfs-progs: Add btrfs-show-super 2013-01-23 19:41:27 +01: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: add support for device replace procedure 2013-01-31 13:47:26 +01:00
btrfsck.c btrfs-progs: add extended inode ref support to btrfsck 2013-01-31 22:33:23 +01:00
btrfsctl.c Btrfs-progs: move open_file_or_dir() to utils.c 2013-01-30 00:40:35 +01:00
btrfslabel.c btrfs-progs: fix build warnings in btrfslabel.c 2013-01-30 00:40:35 +01:00
btrfslabel.h Add the "btrfs filesystem label" command 2011-10-25 09:18:31 -04:00
btrfstune.c btrfs-progs: Handle errors returned from open_ctree 2013-01-21 18:27:54 +01: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 Btrfs-progs: move open_file_or_dir() to utils.c 2013-01-30 00:40:35 +01:00
cmds-device.c Btrfs-progs: add command to get/reset device stats via ioctl 2013-01-31 13:47:17 +01:00
cmds-filesystem.c Move parse_size() to utils.[hc] 2013-01-17 18:27:54 +01:00
cmds-inspect.c Btrfs-progs: move open_file_or_dir() to utils.c 2013-01-30 00:40:35 +01:00
cmds-qgroup.c Btrfs-progs: move open_file_or_dir() to utils.c 2013-01-30 00:40:35 +01:00
cmds-quota.c Btrfs-progs: move open_file_or_dir() to utils.c 2013-01-30 00:40:35 +01:00
cmds-receive.c Btrfs-progs: correct btrfs receive usage string 2013-01-21 18:28:00 +01:00
cmds-replace.c Btrfs-progs: add support for device replace procedure 2013-01-31 13:47:26 +01:00
cmds-scrub.c Btrfs-progs: make two utility functions globally available 2013-01-30 00:40:35 +01:00
cmds-send.c Btrfs-prog/send: fix wrong dump_fd check in cmd_send_start() 2013-01-31 19:17:06 +01:00
cmds-subvolume.c Btrfs-progs: move open_file_or_dir() to utils.c 2013-01-30 00:40:35 +01:00
commands.h Btrfs-progs: add support for device replace procedure 2013-01-31 13:47:26 +01:00
convert.c Btrfs-progs: Fix compiler warnings on PPC64 2013-01-17 18:12:57 +01: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 btrfs-progs: Basic support for extended inode refs 2013-01-31 22:29:13 +01: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-progs: Handle errors returned from open_ctree 2013-01-21 18:27:54 +01:00
disk-io.c Btrfs-progs: fix an off-by-one in write_dev_supers() 2013-01-22 12:31:41 +01:00
disk-io.h Add open_ctree_fs_info for partial FS opens 2012-02-05 16:11:48 -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 btrfsck: add early code to handle corrupted block groups 2012-02-22 10:59:55 -05:00
extent_io.c Allow extent_buffers to use more ram 2012-02-06 05:08:06 -05:00
extent_io.h Verify parent generation number on btree reads 2008-05-13 13:48:58 -04: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 btrfs-progs: update options in find-root.c 2013-01-26 12:32:31 +01: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: add support for device replace procedure 2013-01-31 13:47:26 +01:00
kerncompat.h btrfs-progs: fix unaligned accesses v2 2013-01-28 18:06:43 +01:00
list.h Dynamic chunk allocation 2008-03-24 15:03:58 -04:00
Makefile btrfs-progs: fix parallel build 2013-01-31 18:55:34 +01:00
mkfs.c btrfs-progs: fix mkfs.btrfs -r option 2013-01-31 13:47:26 +01:00
print-tree.c btrfs-progs: Basic support for extended inode refs 2013-01-31 22:29:13 +01: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: clean up reduplicate parse_qgroupid() and replace atoi with strtoull 2013-01-21 18:28:01 +01:00
qgroup.h Btrfs-progs: clean up reduplicate parse_qgroupid() and replace atoi with strtoull 2013-01-21 18:28:01 +01:00
quick-test.c btrfs-progs: Handle errors returned from open_ctree 2013-01-21 18:27:54 +01: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
random-test.c btrfs-progs: Handle errors returned from open_ctree 2013-01-21 18:27:54 +01: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 btrfs-progs: print the right mount checking info in restore.c 2013-01-17 18:27:55 +01: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: bugfix for subvolume parent determination in btrfs send 2013-01-21 18:52:48 +01: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 btrfs-progs: add malloc check in transaction.h/btrfs_start_transaction 2013-01-18 18:27:21 +01:00
utils.c Btrfs-progs: make two utility functions globally available 2013-01-30 00:40:35 +01:00
utils.h Btrfs-progs: make two utility functions globally available 2013-01-30 00:40:35 +01:00
version.sh version.sh: fix version when built from tarball 2013-01-17 18:13:03 +01:00
volumes.c Btrfs-progs: add support for device replace procedure 2013-01-31 13:47:26 +01:00
volumes.h Btrfs-progs: add support for device replace procedure 2013-01-31 13:47:26 +01:00