Commit Graph

236 Commits

Author SHA1 Message Date
Joe Thornber
3fb4177656 [thin_trim] more bug fixing 2016-04-08 17:07:04 +01:00
Joe Thornber
866986b883 [thin_trim] FInally get thin_trim emitting the right discards 2016-04-05 12:27:00 +01:00
Joe Thornber
2288fc4565 Merge branch 'master' into 2016-02-03-fix-thin-trim 2016-03-31 16:39:54 +01:00
Joe Thornber
b0e2d0e6a0 [thin_repair, metadata] Try harder to get the number of data blocks
when opening the metadata.
2016-03-21 17:17:57 +00:00
Joe Thornber
2cf0c84ce3 [thin_repair] we need to read the space maps after all to get the data
volume size.
2016-03-21 15:36:49 +00:00
Seth Jennings
38f67676e4 get stats in bytes 2016-03-07 15:42:24 -06:00
Joe Thornber
8676198e76 [file_utils] rename get_nr_blocks() -> get_nr_metadata_blocks() and introduce get_nr_blocks() 2016-03-04 10:43:58 +00:00
Joe Thornber
0ec27c7835 [thin_delta] backport cherry-picked changes to c++98 2016-02-18 11:37:51 +00:00
Joe Thornber
a21cee55c7 [thin-delta] fix bug in earlier refactor 2016-02-18 11:34:19 +00:00
Joe Thornber
2461cdce43 [thin_delta] tidy up the comparison function 2016-02-18 11:34:09 +00:00
Joe Thornber
768bbd2715 [thin_delta] Fix bug when comparing the mappings 2016-02-17 11:44:44 +00:00
Joe Thornber
09ce099c2f [thin_delta] set nr_data_blocks to zero if there are no space maps.
ie. a metadata_snap is being used.
2016-02-17 10:42:42 +00:00
Joe Thornber
2815aeace9 [thin_repair] fix regression in thin_repair
When opening the corrupted metadata we don't need to touch the space
maps.  This used to be achieved by pretending we were opening a
metadata snap at block 0 (superblock location).  But got changed in
the recent rationalisation of the metadata constructors.

This patch introduces a bool to the metadata OPEN constructor that
says whether the space maps are needed or not.
2016-02-16 14:08:43 +00:00
Joe Thornber
6101398b02 Merge branch 'master' of github.com:jthornber/thin-provisioning-tools 2016-02-10 14:25:50 +00:00
Joe Thornber
c8c4442b2f [thin_dump] We can't give the number of data blocks with a metadata snap.
No space maps.
2016-02-10 13:34:07 +00:00
Joe Thornber
0fced25b3e [thin_dump, thin_restore] remove some dead code 2016-02-04 15:24:16 +00:00
Joe Thornber
c369045790 Merge branch 'master' of github.com:jthornber/thin-provisioning-tools
Conflicts:
	thin-provisioning/metadata.cc
	thin-provisioning/thin_trim.cc
2016-01-20 15:37:04 +00:00
Joe Thornber
f385198cfc [thin_ls] get it working with a metadata snap 2016-01-20 14:45:38 +00:00
Joe Thornber
7a4a5aa87e [thin_ls] fluff 2016-01-20 13:25:09 +00:00
Joe Thornber
944b9c0c57 [thin_ls] wire up -o 2016-01-20 06:59:55 +00:00
Joe Thornber
e15b11edb1 [thin_ls, base] Factor out grid_layout 2016-01-20 06:58:59 +00:00
Joe Thornber
5aaa26fe34 [thin_ls] only run pass1 if needed 2016-01-19 15:50:15 +00:00
Joe Thornber
f3e23c5417 [thin_ls] add --no-headers 2016-01-19 14:56:48 +00:00
Joe Thornber
f6f38fbc1f [thin_ls] tweak enum names 2016-01-19 14:50:04 +00:00
Joe Thornber
8030a98bd8 [thin_ls] add MAPPED_SECTORS, EXCLUSIVE_SECTORS, SHARED_SECTORS 2016-01-19 14:43:37 +00:00
Joe Thornber
3dd45e1ceb [thin_ls] tweak the field names 2016-01-19 14:30:13 +00:00
Joe Thornber
87d8d630f6 [thin_ls] more tidying 2016-01-19 14:16:02 +00:00
Joe Thornber
c5a1a814f3 [thin_ls] rationalise the field names by using a static array of names 2016-01-19 14:11:31 +00:00
Joe Thornber
d65bf29eb7 [thin_ls] change default fields 2016-01-19 13:54:15 +00:00
Joe Thornber
208fdd86e6 [thin_ls] add support for --format 2016-01-19 13:40:36 +00:00
Joe Thornber
7ce4e451ff [base, thin_ls] factor out disk_units code 2016-01-19 11:40:00 +00:00
Joe Thornber
47bd31da8d [thin_ls] more work on thin_ls 2016-01-19 11:16:25 +00:00
Joe Thornber
c3973c044c [thin_ls] First code drop.
Output still needs formatting.  More testing needed in dmtest.
2016-01-12 15:02:19 +00:00
Joe Thornber
c93e728ef4 [base] introduce a command type that gets registered with the app 2016-01-08 12:51:52 +00:00
Joe Thornber
a709b9718b [thin] Make the metadata class resposible for locating metadata snapshots 2015-12-15 10:08:07 +00:00
Joe Thornber
30a3bf67d1 [thin tools] Change the metadata contructors to take a block_manager<>::ptr
Also check any metadata snap passed in matches what's in the superblock.
2015-12-14 15:29:57 +00:00
Ming-Hung Tsai
e528fa1972 Add BLKDISCARD definition 2015-11-27 23:38:42 +08:00
Ming-Hung Tsai
856bd95d8e Fix the unit of superblock::metadata_block_size_ to be sector-based 2015-11-27 23:38:37 +08:00
Ming-Hung Tsai
03590d3c91 Fix bug in superblock UUID string copy 2015-11-27 23:38:27 +08:00
Joe Thornber
29c2a949f4 remove a bit of debug 2015-08-13 14:56:30 +01:00
Joe Thornber
5d28c05dc3 [thin_check] detail and mapping trees weren't being counted properly for the metadata snap.
This could result in block counts being unexpectedly non zero.
2015-08-04 15:14:02 +01:00
Joe Thornber
7134a58134 [thin_metadata_size] use floor rather than truncl 2015-07-30 11:45:13 +01:00
Joe Thornber
3a881e9513 [thin_delta] Allow optional arg when using -m 2015-07-28 11:29:00 +01:00
Joe Thornber
93fb540bd4 [thinp tools] move find_metadata_snap to superblock.cc 2015-07-27 14:30:09 +01:00
Joe Thornber
642ae6e7c2 Tools now open the metadata device in O_EXCL mode.
An attempt to stop people running the tools on active metadata.
2015-07-07 13:47:00 +01:00
Joe Thornber
f85b7cef3f thin_dump, thin_check: Fix bug in damage reporting 2015-07-03 13:00:13 +01:00
Joe Thornber
082491d140 thin_check: tidy up some unintuitive code 2015-06-22 11:13:19 +01:00
Joe Thornber
270c0f7041 [thin_check] factor out check_space_map_counts() 2015-04-08 14:07:38 +01:00
Joe Thornber
0fee897fda [thin_check] A space map count being too high should be a NON_FATAL error. 2015-04-08 12:32:31 +01:00
Joe Thornber
20079f3d28 Pass tm's by reference 2015-04-07 13:31:45 +01:00