Commit Graph

258 Commits

Author SHA1 Message Date
Joe Thornber
0938d24ea1 Take held root support out of thin_dump.
Temporary, just to get things building.
2013-06-19 12:11:34 +01:00
Joe Thornber
055b237126 tweaks to metadata constructor, and some updated features. 2013-06-19 11:34:01 +01:00
Joe Thornber
acd197ed6f [thin_restore] restore_emitter now checks the mappings against the data device length. 2013-06-18 14:18:39 +01:00
Joe Thornber
8781685a10 whitespace 2013-06-14 14:32:50 +01:00
Joe Thornber
6706493304 Remove some global 'using namespace's 2013-05-28 13:48:10 +01:00
Joe Thornber
e64dda95f6 rename range<> -> run<> 2013-05-28 12:20:05 +01:00
Joe Thornber
83d6b609eb [range.h] rename to run.h 2013-05-28 11:51:44 +01:00
Joe Thornber
82324d1d27 [thin_rmap] rmap_visitor now sorts the rmap into ascending data_block order. 2013-05-24 14:01:03 +01:00
Joe Thornber
8fab2e37af [thin_rmap] now produces ranged output. 2013-05-24 13:43:55 +01:00
Joe Thornber
41204dceaa [thin_rmap] rmap_visitor 2013-05-24 13:30:17 +01:00
Joe Thornber
4d17d3f7ec [thin_rmap] finish implementing 2013-05-23 15:06:57 +01:00
Joe Thornber
25a090279f [thin_rmap] region parsing 2013-05-23 13:57:57 +01:00
Joe Thornber
5498e0bc46 [thin_check] fluff 2013-05-23 13:57:15 +01:00
Joe Thornber
bc67fc17b1 [thin_rmap] Stub 2013-05-23 13:15:00 +01:00
Joe Thornber
063769cd12 [thin_check] we don't need to import the persistent_data namespace any more. 2013-05-23 12:00:36 +01:00
Joe Thornber
e7303a11c6 [thin_check] --ignore-non-fatal-errors 2013-05-23 11:57:02 +01:00
Joe Thornber
84858ab86e whitespace 2013-05-23 11:46:06 +01:00
Joe Thornber
f8efc4f58c [thin_check] Add cucumber test for --skip-mappings 2013-05-23 11:45:08 +01:00
Joe Thornber
8ccfff6c34 [thin-check] wire up superblock-only and skip-mappings 2013-05-23 11:25:54 +01:00
Joe Thornber
6fe92d4a63 [thin_check] wire up mapping tree checker 2013-05-22 14:55:28 +01:00
Joe Thornber
b456f16aa0 [thin_check] Wire up check_device_tree. 2013-05-21 15:49:20 +01:00
Joe Thornber
f91b8f2fba [thin_check] nested_output 2013-05-21 15:05:25 +01:00
Joe Thornber
4d83b7775b [thin_check] start wiring up the new damage visitor infrastructure, starting with superblock corruption. 2013-05-21 14:38:33 +01:00
Joe Thornber
6fcda37dbc superblock damage visitor 2013-05-21 14:01:17 +01:00
Joe Thornber
24ddc4f5c4 Move superblock_validator into superblock.{h,cc} 2013-05-21 13:20:03 +01:00
Joe Thornber
553f73b826 superblock_checker.* -> superblock.*, remove metadata_disk_structures.* and rearrange namespaces a bit. 2013-05-21 12:46:07 +01:00
Joe Thornber
4e61578508 mapping_tree.{h,cc} 2013-05-21 11:46:37 +01:00
Joe Thornber
8f2ab2d676 Introduce mapping_tree.h 2013-05-20 17:37:46 +01:00
Joe Thornber
35880f3038 Move device_details_traits into the device_tree_detail namespace. 2013-05-20 16:35:26 +01:00
Joe Thornber
fcb617f858 device_tree 2013-05-20 16:09:13 +01:00
Joe Thornber
b0d1fa0851 Sanitise btree_detail::node_location 2013-05-15 13:37:30 +01:00
Joe Thornber
a7adefbae8 Move range.h to persistent-data 2013-05-08 16:38:04 +01:00
Joe Thornber
d113ff6e5a thin restorer is now careful to share the mapping tree for empty devices.
This saves a lot of metadata space if you're creating lots of empty
devs (4k per dev).  Also makes things faster since we don't have to
allocate.
2013-05-07 14:24:59 +01:00
Joe Thornber
edf16f59c7 [restorer] Mappings only get inserted when the device is completed.
This saves looking up the device mapping tree for every insert.
2013-05-02 12:59:42 +01:00
Joe Thornber
a828cde96d [btree] visitor now passed as a reference rather than shared_ptr 2013-05-02 12:31:33 +01:00
Joe Thornber
21603c5a5d ostream operator << for range template. 2013-05-01 16:30:59 +01:00
Joe Thornber
5d0b23beea Some btree visitor tidying.
Introduce node_location to replace the long list of parameters.  Also
add a depth field to keep track of the depth from root.
2013-05-01 16:16:23 +01:00
Joe Thornber
fa96ec6301 Add operator == for the range template 2013-04-29 16:12:34 +01:00
Joe Thornber
5e26d51372 add equality operators for the metadata_damage classes. 2013-04-29 16:12:05 +01:00
Joe Thornber
969a5f62c6 Working on device_checker 2013-04-29 15:37:53 +01:00
Joe Thornber
524f9474cf Add a range class 2013-04-29 15:10:01 +01:00
Joe Thornber
6422b22610 Move block_manager member down into checker base class. 2013-04-29 13:31:33 +01:00
Joe Thornber
1a8b1b29e8 Start device_checker 2013-04-29 13:24:19 +01:00
Joe Thornber
c0b14ce280 fluff 2013-04-29 12:49:32 +01:00
Joe Thornber
034abaff1e Stop metadata:commit printing the superblock out to stderr. 2013-04-29 12:48:58 +01:00
Joe Thornber
2b8b74065b add fixme 2013-04-29 12:40:56 +01:00
Joe Thornber
441cba7185 Small work on metadata_checker tests. 2013-04-26 15:55:45 +01:00
Joe Thornber
a55f6fcf78 A stack of thin_check refactorings 2013-04-25 16:27:07 +01:00
Joe Thornber
20ff78c818 [thin_check] Start refactoring metadata_checker. 2013-04-23 15:21:44 +01:00
Joe Thornber
dde775ef52 thin_metadata_t now reproduces the recursive new_block() error. 2013-04-11 13:41:43 +01:00
Joe Thornber
3629e1e2b5 cucumber test for thin_check --super-block-only 2013-04-11 13:40:47 +01:00
Joe Thornber
be7801f111 some __le -> le issues 2013-03-22 15:48:43 +00:00
Joe Thornber
907dc34499 rename some parameters 2013-03-15 14:59:32 +00:00
Joe Thornber
7d18b08b91 rename NoOpRefCounter -> no_op_ref_counter 2013-02-01 14:49:26 +00:00
Joe Thornber
779f8e1fd4 Introduce a mode enum to block_io<> 2013-01-11 20:16:40 +00:00
Joe Thornber
aacca8d963 Introduce persistent-data/data-structures/ 2013-01-11 19:26:51 +00:00
Joe Thornber
326fd3408b move space maps to their own sub directory 2013-01-10 21:36:38 +00:00
Joe Thornber
282e98a6b1 Move source into separate sub directories. 2013-01-02 12:55:41 +00:00