Qu Wenruo [Tue, 21 Feb 2017 08:34:31 +0000 (16:34 +0800)]
btrfs-progs: check: lowmem: Fix false alert on inline compressed extent
Old lowmem check doesn't check if the inline extent is compressed and
always checks extent numbytes against inline item size.
And when it finds the extent numbytes mismatch with inline item size it
doesn't output any error message, just return error silently, making it
quite hard to debug.
Fix it by only checking extent numbytes against inline item size when
the extent is not compressed, and output error message.
Reported-by: Christoph Anton Mitterer <calestyo@scientia.net>
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Qu Wenruo [Tue, 21 Feb 2017 08:34:30 +0000 (16:34 +0800)]
btrfs-progs: check: lowmem: Fix extent item size false alert
If one extent item has no inline ref, btrfs lowmem mode check can give
false alert without outputting any error message.
The problem is lowmem mode always assumes that extent item has inline
refs, and when it encounters such case it flags the extent item has
wrong size, but doesn't output the error message.
Although we already have such image submitted, at the commit time due to
another bug in cmds-check return value, it doesn't detect it until that
bug is fixed.
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Qu Wenruo [Tue, 21 Feb 2017 08:34:29 +0000 (16:34 +0800)]
btrfs-progs: check: lowmem: Fix false alert in checking data extent csums
Btrfs lowmem check can report false csum error like:
ERROR: root 5 EXTENT_DATA[257 0] datasum missing
ERROR: root 5 EXTENT_DATA[257 4096] prealloc shouldn't have datasum
This is because lowmem check code always compare the found csum size
with the whole extent which data extents points to.
Normally it's OK, but when prealloc extent is written, or reflink is
done, data extent can points to part of a larger extent, making the csum
check wrong.
To fix it, the csum check part is modified to handle plain and
compressed extents in different ways:
1) Plain extent
Only search csums for the range it refers to.
So the search range is from (disk_bytenr + extent_offset) and search
length is (extent_num_bytes)
2) Compressed extent
Search the whole extent.
Search range is from (disk_bytner) and search length is
(disk_num_bytes)
Reported-by: Chris Murphy <chris@colorremedies.com>
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Qu Wenruo [Tue, 21 Feb 2017 08:34:28 +0000 (16:34 +0800)]
btrfs-progs: check: Output verbose error when fsck found a bug in any tree
Although we output error like "errors found in extent allocation tree or
chunk allocation", but we lacks such output for other trees, but leaving
the final "found error is %d" to catch the last return value(and
sometime it's cleared)
This patch adds extra error message for top level error path, and modify
the last "found error is %d" to "error(s) found" or "no error found".
Cc: Christoph Anton Mitterer <calestyo@scientia.net>
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Qu Wenruo [Tue, 21 Feb 2017 08:34:27 +0000 (16:34 +0800)]
btrfs-progs: check: lowmem: Fix several bugs related to afterward search
Since btrfs_search_slot() can point to the slot which is beyond the
leaves' capacity, we should pay extra attention when doing afterward
search.
While for lowmem check, several places uses afterward search:
1) Block group item used space check
2) Device item used space check
3) Data extent backref check.
In the following case for block group item check, btrfs lowmem mode
check will skip the block group and report false alert:
leaf
29405184 items 37 free space 1273 generation 11 owner 2
...
item 36 key (
77594624 EXTENT_ITEM 2097152)
extent refs 1 gen 8 flags DATA
extent data backref root 5 objectid 265 offset 0 count 1
leaf
29409280 items 43 free space 670 generation 11 owner 2
item 0 key (
96468992 EXTENT_ITEM 2097152)
extent refs 1 gen 8 flags DATA
extent data backref root 5 objectid 274 offset 0 count 1
item 1 key (
96468992 BLOCK_GROUP_ITEM
33554432)
block group used 2265088 chunk_objectid 256 flags DATA
When checking block group item, we will search key (
96468992 0 0) to
start from the first item in the block group.
While search_slot() will point to leaf
29405184, slot 37 which is beyond
leaf capacity.
And when reading key from slot 37, uninitialized data can be read out
and cause us to exit block group item check, leading to false alert.
Fix it by checking path.slot[0] before reading out the key.
Reported-by: Christoph Anton Mitterer <calestyo@scientia.net>
Reported-by: Chris Murphy <chris@colorremedies.com>
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Nicholas D Steeves [Tue, 21 Feb 2017 23:14:38 +0000 (18:14 -0500)]
btrfs-progs: docs: fix many typos, plus three edits for clarity
Signed-off-by: Nicholas D Steeves <nsteeves@gmail.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Benedikt Morbach [Wed, 22 Feb 2017 21:32:46 +0000 (22:32 +0100)]
btrfs-progs: send-dump: add missing newlines
make sure to include newlines after commands that have only one
argument, such as 'unlink' or 'mkfile'
changes
unlink ./baz.0/file_autimes ./baz.0/ atime=2017-02-22T11:59:16+0100 mtime=2017-02-22T11:59:16+0100 ctime=2017-02-22T11:59:16+0100
truncate ./baz.0/file_a size=131072
chmod ./baz.0/file_a mode=644
utimes ./baz.0/file_a atime=2017-02-22T11:59:16+0100 mtime=2017-02-22T11:59:16+0100 ctime=2017-02-22T11:59:16+0100
mkfile ./baz.0/o258-11-0rename ./baz.0/o258-11-0 dest=./baz.0/file_b
utimes ./baz.0/ atime=2017-02-22T11:59:16+0100 mtime=2017-02-22T11:59:16+0100 ctime=2017-02-22T11:59:16+0100
to
unlink ./baz.0/file_a
utimes ./baz.0/ atime=2017-02-22T11:59:16+0100 mtime=2017-02-22T11:59:16+0100 ctime=2017-02-22T11:59:16+0100
truncate ./baz.0/file_a size=131072
chmod ./baz.0/file_a mode=644
utimes ./baz.0/file_a atime=2017-02-22T11:59:16+0100 mtime=2017-02-22T11:59:16+0100 ctime=2017-02-22T11:59:16+0100
mkfile ./baz.0/o258-11-0
rename ./baz.0/o258-11-0 dest=./baz.0/file_b
utimes ./baz.0/ atime=2017-02-22T11:59:16+0100 mtime=2017-02-22T11:59:16+0100 ctime=2017-02-22T11:59:16+0100
Signed-off-by: Benedikt Morbach <benedikt.morbach@googlemail.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Joey Sabey [Wed, 22 Feb 2017 09:08:17 +0000 (09:08 +0000)]
btrfs-progs: docs: fix typo in btrfs-quota
qgruops -> qgroups
Signed-off-by: David Sterba <dsterba@suse.com>
Joey Sabey [Wed, 22 Feb 2017 09:04:19 +0000 (09:04 +0000)]
btrfs-progs: docs: fix typo in btrfs-quota
reinstall ation -> reinstallation
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 20 Feb 2017 13:58:57 +0000 (14:58 +0100)]
btrfs-progs: tests: fix library-test rules and deps
The symbol __error was undefined and the rule did not use the
dependencies from the rule definiton, like the rest.
Signed-off-by: David Sterba <dsterba@suse.com>
Matthias Krüger [Sat, 18 Feb 2017 10:11:33 +0000 (11:11 +0100)]
btrfs-progs: readme: fix link to issue tracker on github.
Signed-off-by: Matthias Krüger <matthias.krueger@famsik.de>
Signed-off-by: David Sterba <dsterba@suse.com>
Erik Logtenberg [Fri, 17 Feb 2017 20:11:48 +0000 (21:11 +0100)]
btrfs-progs: docs: fix typo in btrfs-scrub manual page
Changed "An" to "A".
Signed-off-by: Erik Logtenberg <erik@logtenberg.eu>
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: corrupt-block: remove unused argument from corrupt_extent
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: mkfs: remove unused argument from add_file_items
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: image: remove unused argument from copy_log_trees
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: mkfs: remove unused arguments from add_inode_items
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: mkfs: remove unused argument from make_root_dir
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: check: remove unused argument from maybe_repair_root_item
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: check: remove unused argument from process_duplicates
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from print_device_chunks
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from print_device_sizes
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from get_raid56_used
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: check: remove unused argument from calc_extent_flag
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: check: remove unused argument from fix_item_offset
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: check: remove unused argument from delete_bogus_item
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: check: remove unused argument from fix_key_order
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: check: remove unused argument from free_extent_record_cache
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: check: remove unused argument from create_inode_item
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: check: remove unused arguments from delete_dir_index
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: check: remove unused argument from check_child_node
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: check: remove unused argument from process_dir_item
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from clear_extent_dirty
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from set_extent_dirty
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from btrfs_add_system_chunk
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from set_extent_bits
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from clear_extent_bits
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 17:01:31 +0000 (18:01 +0100)]
btrfs-progs: remove unused function wait_on_tree_block_writeback
This used to be a kernel stub but has been removed from kernel long time
ago.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from btrfs_lookup_inode_ref
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from free_chunk_item
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from write_and_map_eb
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from setup_inline_extent_backref
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:42:02 +0000 (17:42 +0100)]
btrfs-progs: remove unused argument from extent_data_ref_count
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:39:44 +0000 (17:39 +0100)]
btrfs-progs: remove unused argument from btrfs_csum_data
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:32:05 +0000 (17:32 +0100)]
btrfs-progs: remove unused parameter from truncate_one_csum
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:24:50 +0000 (17:24 +0100)]
btrfs-progs: opencode trivial helper btrfs_free_transaction
It also does not exist in kernel code.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 16:23:05 +0000 (17:23 +0100)]
btrfs-progs: remove unused helpers from ctree.h
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 15:54:17 +0000 (16:54 +0100)]
btrfs-progs: shared: cleanup includes in ulist.c
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 15:21:04 +0000 (16:21 +0100)]
btrfs-progs: shared: remove debug code from ulist
Sync with kernel sources, we don't define CONFIG_BTRFS_DEBUG in
userspace anyway.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 15:16:02 +0000 (16:16 +0100)]
btrfs-progs: shared: copy ulist_del from kernel
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 15:13:14 +0000 (16:13 +0100)]
btrfs-progs: move ulist.[ch] to kernel-shared
The implementation of ulist_* is same for kernel and userspace, without
dependencies, so we can keep it separately for code sync.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 9 Feb 2017 14:20:16 +0000 (15:20 +0100)]
btrfs-progs: move prefixcmp helper to utils
Signed-off-by: David Sterba <dsterba@suse.com>
Goldwyn Rodrigues [Fri, 3 Feb 2017 16:15:32 +0000 (10:15 -0600)]
btrfs-progs: Remove unused function arg in delete_extent_records
new_len is not used in delete_extent_records().
Signed-off-by: Goldwyn Rodrigues <rgoldwyn@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Austin S. Hemmelgarn [Fri, 3 Feb 2017 19:38:05 +0000 (14:38 -0500)]
btrfs-progs: better document btrfs receive security
This adds some extra documentation to the btrfs-receive manpage that
explains some of the security related aspects of btrfs-receive. The
first part covers the fact that the subvolume being received is writable
until the receive finishes, and the second covers the current lack of
sanity checking of the send stream.
Signed-off-by: Austin S. Hemmelgarn <ahferroin7@gmail.com>
Suggested-by: Graham Cobb <g.btrfs@cobb.uk.net>
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 2 Feb 2017 12:38:44 +0000 (13:38 +0100)]
btrfs-progs: drop unused argument from btrfs_del_ptr
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 2 Feb 2017 12:38:44 +0000 (13:38 +0100)]
btrfs-progs: drop unused argument from btrfs_extend_item
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Thu, 2 Feb 2017 12:38:44 +0000 (13:38 +0100)]
btrfs-progs: drop unused argument from btrfs_truncate_item
Signed-off-by: David Sterba <dsterba@suse.com>
Jonathan Boulle [Fri, 27 Jan 2017 17:08:26 +0000 (18:08 +0100)]
btrfs-progs: docs: fix typo in receive man page
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 15:20:23 +0000 (16:20 +0100)]
btrfs-progs: move message helpers implementation out of header
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 15:14:06 +0000 (16:14 +0100)]
btrfs-progs: move message helpers out of utils
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 15:09:47 +0000 (16:09 +0100)]
btrfs-progs: move utils code out of header
There are not performance critical static inlines, we can do the normal
declaration/definition split for various helpers.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 14:41:06 +0000 (15:41 +0100)]
btrfs-progs: convert: improve assert in make_convert_btrfs
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 14:06:04 +0000 (15:06 +0100)]
btrfs-progs: convert: rename members that clash with other functions
Rename 'free' and also 'used' for consistency.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 13:27:24 +0000 (14:27 +0100)]
btrfs-progs: mkfs: use const char for label
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 13:25:18 +0000 (14:25 +0100)]
btrfs-progs: mkfs: make make_cfg::blocks an internal member
The caller of make_btrfs does not need to set it, it's for internal use
and can be read after mkfs ends.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 13:17:12 +0000 (14:17 +0100)]
btrfs-progs: mkfs: describe fields of btrfs_mkfs_config
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 13:15:08 +0000 (14:15 +0100)]
btrfs-progs: mkfs: clear whole mkfs_cfg at once
Zero out the structure and set only the requested fields.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 12:37:42 +0000 (13:37 +0100)]
btrfs-progs: build: remove unused variables from docs makefile
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 12:23:04 +0000 (13:23 +0100)]
btrfs-progs: build: use MAKEOPTS where missing
$(MAKE) should also use MAKEOPTS.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 10:53:21 +0000 (11:53 +0100)]
btrfs-progs: build: drop deprecated utility from test dependencies
Standalone btrfs-debug-tree has been superseded by
'btrfs inspect-internal dump-tree'.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Wed, 1 Feb 2017 10:42:01 +0000 (11:42 +0100)]
btrfs-progs: convert: move internal bg size definition
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Tue, 31 Jan 2017 10:08:09 +0000 (11:08 +0100)]
btrfs-progs: convert: rename ext2 function to create a symlink
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Tue, 31 Jan 2017 22:13:54 +0000 (23:13 +0100)]
btrfs-progs: move mkfs helper implementation out of utils
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Tue, 31 Jan 2017 22:13:54 +0000 (23:13 +0100)]
btrfs-progs: move more mkfs declarations to the common header
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Tue, 31 Jan 2017 19:34:27 +0000 (20:34 +0100)]
btrfs-progs: kerncompat: print trace from ASSERT, if enabled
Commit
bc2d4ccc46e2807964c74ce805fb6405ca2bc842 "btrfs-progs:
kerncompat: disconnect assert and warning messages" forgot to add the
print_trace call to assert_trace.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 17:15:31 +0000 (18:15 +0100)]
btrfs-progs: build: build library by default
Add a convenience rule and build the library by default, not just at the
installation phase.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 17:00:39 +0000 (18:00 +0100)]
btrfs-progs: build: add stub makefile to convert
A shortcut to compile btrfs-convert from inside the directory.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 16:52:15 +0000 (17:52 +0100)]
btrfs-progs: convert: use bit field for convert flags
Use one flag field instead of several variables. The change cascades
down to the callchain and modifies several functions.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 16:14:03 +0000 (17:14 +0100)]
btrfs-progs: convert: use helper for special inode number check
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 15:58:57 +0000 (16:58 +0100)]
btrfs-progs: convert: better error handling in ext2_read_used_space
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 15:52:07 +0000 (16:52 +0100)]
btrfs-progs: convert: remove unused includes
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 13:20:30 +0000 (14:20 +0100)]
btrfs-progs: convert: use on-stack buffer for subvol name dir
Get rid of dynamic allocation.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 13:11:19 +0000 (14:11 +0100)]
btrfs-progs: convert: use fixed lenght array for source fs name
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 12:41:36 +0000 (13:41 +0100)]
btrfs-progs: convert: move struct initialization to the init function
The context is zeroed in convert_open_fs after and overwrites the rbtree
initialization, which accidentally is the same (NULL).
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 12:29:22 +0000 (13:29 +0100)]
btrfs-progs: build: add rule for building cscope index
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 10:04:16 +0000 (11:04 +0100)]
btrfs-progs: build: split makefile to generated and stable parts
It's not really necessary to configure and regenerate Makefiles in cases
like adding a new source file. The build environment and optional
features are not affected by that.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 09:49:55 +0000 (10:49 +0100)]
btrfs-progs: build: add rule for ctags
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 09:36:16 +0000 (10:36 +0100)]
btrfs-progs: convert: update some forward declarations
Add missing and reorder so they come next to the structures using them.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 09:33:01 +0000 (10:33 +0100)]
btrfs-progs: convert: use wider types types for inode counts for progress reports
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Mon, 30 Jan 2017 09:11:22 +0000 (10:11 +0100)]
btrfs-progs: mkfs: make list of source fs more visible
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Fri, 27 Jan 2017 18:12:08 +0000 (19:12 +0100)]
btrfs-progs: build: remove directory-specific include paths
The convert and image utilities used include, but we specify the headers
by path relative to the toplevel directory for clarity. The compiler
option is not needed.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Fri, 27 Jan 2017 18:09:05 +0000 (19:09 +0100)]
btrfs-progs: build: use target deps on commandline via automatic variable
The dependencies are duplicated in many targets, but we can use the $^
variable to simplify the command line.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Fri, 27 Jan 2017 18:00:10 +0000 (19:00 +0100)]
btrfs-progs: build: replace target names with automatic variable
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Fri, 27 Jan 2017 17:50:56 +0000 (18:50 +0100)]
btrfs-progs: build: reorder target dependencies
Reorder target dependencies:
1) target-specific objects
2) common objects
3) library objects
4) static libraries
1-3 are for faster detection of build failures, the specific objects
reflect changes to the source, but otherwise is only a cosmetic change.
The 4 is for correct order during linking, if we'd use the $^ variable.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Fri, 27 Jan 2017 17:34:51 +0000 (18:34 +0100)]
btrfs-progs: build: split LIBS
Not all the build targets use all libs listed in LIBS, separate the
common and compression ones.
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Fri, 27 Jan 2017 16:55:25 +0000 (17:55 +0100)]
btrfs-progs: build: list mkfs.btrfs build objects in a variable
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Fri, 27 Jan 2017 16:55:25 +0000 (17:55 +0100)]
btrfs-progs: build: list convert build objects in a variable
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Fri, 27 Jan 2017 14:47:17 +0000 (15:47 +0100)]
btrfs-progs: convert: move implementation for interal conversion API to own file
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Fri, 27 Jan 2017 15:56:37 +0000 (16:56 +0100)]
btrfs-progs: convert: move ext2 conversion out of main.c
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Fri, 27 Jan 2017 15:51:03 +0000 (16:51 +0100)]
btrfs-progs: convert: move ext2 definitions out of main
Signed-off-by: David Sterba <dsterba@suse.com>
David Sterba [Fri, 27 Jan 2017 14:47:17 +0000 (15:47 +0100)]
btrfs-progs: convert: move definitions for interal conversion API to own file
Signed-off-by: David Sterba <dsterba@suse.com>