Commit Graph

87 Commits

Author SHA1 Message Date
Joe Thornber
a7c96c0e1e [everything] Fix circular shared pointer references.
We had a cycle from transaction_manager <-> space_map, and also from
the ref_counters back up to the tm.

This prevented objects being destroyed when various programs exited.

From now on we'll try and only use a shared ptr if ownership is
implied.  Otherwise a reference will be used (eg, for up pointers).
2014-08-26 11:14:49 +01:00
Joe Thornber
1d12d0ff8e remove empty destructor 2014-08-07 15:42:10 +01:00
Joe Thornber
3e5c02459c whitespace 2014-08-06 16:30:26 +01:00
Joe Thornber
1d38b390b5 Factor common code out of the xml_format files. 2014-08-06 15:29:02 +01:00
Joe Thornber
f06a2673c5 wip 2014-07-29 11:34:26 +01:00
Joe Thornber
7e870ea5a6 start removing block_manager<>::block 2014-07-25 14:46:51 +01:00
Joe Thornber
b32908d5c2 work in progress 2014-07-25 10:35:04 +01:00
Joe Thornber
d517684c95 Initial code drop for merging block_cache 2014-07-22 16:41:39 +01:00
Joe Thornber
e77e8715b0 Remove ambiguity between boost::uint64_t and ::uint64_t.
This has been causing people problems on uclibc builds.
2014-07-02 08:19:20 +00:00
Joe Thornber
c5c699e563 whitespace 2014-06-16 13:44:43 +01:00
root
ebb49db5d3 cache_calc_blocks; tidy up the calculation of nr blocks 2014-06-16 13:42:13 +01:00
Joe Thornber
5fe5d213b7 Merge branch 'master' of github.com:jthornber/thin-provisioning-tools into era
Conflicts:
	Makefile.in
2014-01-31 22:35:04 +00:00
Joe Thornber
344f4b1e08 Factor out base/indented_stream.h 2014-01-31 13:43:39 +00:00
Joe Thornber
9e0540e1b6 era_check, era_dump 2014-01-23 00:46:03 +00:00
Joe Thornber
2f1789744f [caching] add missing break in cache_metadata_size 2014-01-15 16:48:46 +00:00
Joe Thornber
ef6066e2cd Merge branch 'master' of github.com:jthornber/thin-provisioning-tools 2014-01-15 15:52:33 +00:00
Joe Thornber
cbbdfc37da [cache] cache_metadata_size 2014-01-15 15:52:05 +00:00
Joe Thornber
81fa131748 [cache_check] --super-block-only rather than --superblock-only
Be consistent with help and thin_check
2014-01-08 20:05:55 +00:00
Joe Thornber
be5fa59f90 Merge branch 'era' of github.com:jthornber/thin-provisioning-tools into era 2014-01-08 10:50:26 +00:00
Joe Thornber
1b1df2fe65 Merge branch 'master' of github.com:jthornber/thin-provisioning-tools 2014-01-08 10:43:20 +00:00
Joe Thornber
8049d369a9 stuff 2013-12-11 17:28:14 +00:00
Joe Thornber
7a2c41022f Remove some 'typename's since older versions of g++ don't like. 2013-12-09 12:46:46 +00:00
Joe Thornber
ecf6692d0f [cache_dump] Only dump the hints array if it exists.
Fixes a null shared ptr bug.
2013-12-09 11:10:49 +00:00
Joe Thornber
9a65e7707c Merge branch 'master' of github.com:jthornber/thin-provisioning-tools into era 2013-12-09 10:42:28 +00:00
Joe Thornber
c00c832378 Merge branch 'master' of github.com:jthornber/thin-provisioning-tools 2013-12-02 12:07:33 +00:00
Joe Thornber
983a5e84e6 Move endian_utils to base/ 2013-11-19 10:23:35 +00:00
Denys Duchier
3a4c06b772 use persistent-data::bitset to avoid ambiguity 2013-11-16 21:42:23 +01:00
Joe Thornber
31ce9a03fa cache_restore --omit-clean-shutdown 2013-10-29 12:46:23 +00:00
Joe Thornber
dcf4b0a99c [cache_restore] Set the clean shutdown flag before the final commit 2013-10-29 11:35:32 +00:00
Joe Thornber
471abe52b9 [caching] superblock_flags.clear_flag() 2013-10-29 11:35:05 +00:00
Joe Thornber
20bf22e662 [caching] handle VARIABLE_HINT_SIZE incompat flag 2013-10-17 11:45:20 +01:00
Joe Thornber
d3187d25f5 [caching] superblock field wasn't getting initialised in default ctr 2013-10-17 10:08:43 +01:00
Joe Thornber
f8633da296 [cache_restore] --debug-override-metadata-version
A flag that deliberately causes the wrong metadata version to be
written.  Useful for testing the kernel module.
2013-10-15 10:24:12 +01:00
Joe Thornber
3b11749dcf [caching tools] handle version 1 metadata where policy_hint_width is zero 2013-10-14 12:40:13 +01:00
Joe Thornber
b177275816 Merge branch 'master' of github.com:jthornber/thin-provisioning-tools 2013-10-11 13:35:21 +01:00
Joe Thornber
9a24867281 [caching/superblock] policy_version[] was in the wrong place in structure. 2013-10-11 13:35:01 +01:00
Joe Thornber
d2e81a0a19 [caching] introduce superblock_flags class 2013-10-11 13:32:57 +01:00
Joe Thornber
764ee0b0c5 [cache_check] tweak exception handling; there was a window where they weren't caught 2013-10-11 11:04:06 +01:00
Joe Thornber
ead63cd251 [caching/superblock] remove some old debug 2013-10-11 11:02:54 +01:00
Joe Thornber
6aae6aabb4 [caching/metadata] superblock was being zeroed on creation, rather than letting the constructor do it's stuff. 2013-10-11 11:02:04 +01:00
Joe Thornber
d54bc41026 [cache_check] fixup version number 2013-10-11 10:33:32 +01:00
Joe Thornber
ea15a329d7 [cache_check] Now checks discard bitset 2013-10-11 10:22:02 +01:00
Joe Thornber
6b6f2290a7 [cache_dump/restore] add discards to the xml format 2013-10-11 10:03:51 +01:00
Joe Thornber
5dbaf8371c [caching] start wiring up the discard bitset 2013-10-10 13:08:04 +01:00
Joe Thornber
e9e46e871f [caching/xml_format] '/' was ommitted from hint tags 2013-10-10 11:38:28 +01:00
Joe Thornber
b443000a29 [caching/metadata_dump] valid_blocks should have been passed by reference 2013-10-10 11:27:34 +01:00
Joe Thornber
8af2f0cb1f [caching/metadata] setup the hint array when reopening metadata 2013-10-10 11:26:55 +01:00
Joe Thornber
8cfffe309c [caching/hint_array] resize the destination before unpacking a hint 2013-10-10 11:26:13 +01:00
Joe Thornber
3d8eab2974 [caching/xml_format] hints weren't being indented 2013-10-10 11:25:29 +01:00
Joe Thornber
d5a93691e1 [cache_dump/restore] Use base64 encoding for the hints 2013-10-10 10:34:37 +01:00