Joe Thornber
93468190bd
[bitset] When reopening a bitset some bits could be lost at the far end.
...
The number of words necessary to store the bits was being miscalculated.
2014-09-01 14:17:44 +01:00
Joe Thornber
14cfcf2dfd
[bitset] Don't visit bits in the tail end of the final word if they're beyond the nr bits in the bitset.
...
Also shift 1ULL in the test.
2014-09-01 14:16:03 +01:00
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
feb8a03d5f
[btree_damage_tracker] Initialise all path_tracker objects with a null path.
...
This fixes an insidious bug that took me ages to track down. Without
it the non-existent front() of a list was sometimes being accessed.
2014-08-21 11:25:07 +01:00
Joe Thornber
74de9a1a94
[btree_damage_visitor] some tweaks to stop constructing so many btree_paths.
2014-07-30 12:21:34 +01:00
Joe Thornber
ecb6bee2b2
prefetch btree nodes when walking a tree
2014-07-25 16:32:59 +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
9470937b10
[btree] When creating a new multilayer btree the initial node should
...
have block_traits, rather than the ValueTraits.
2014-07-02 15:02:32 +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
d3687db3a8
[bloom filter] remove an unused data member
2014-06-26 15:26:39 +01:00
Joe Thornber
ae21670fd1
Merge branch 'master' of github.com:jthornber/thin-provisioning-tools
2014-06-06 15:06:33 +01:00
Joe Thornber
256cd16ab3
node_ref now checks the value_type sizes match, and the data fits within a single block.
2014-06-06 15:05:41 +01:00
Joe Thornber
82359c4835
remove a typename that rhel 6.6 objects to
2014-04-11 14:52:06 +01:00
Joe Thornber
47ec37a9fd
[thin tools] fix ambiguous reference to 'bitset'
2014-04-01 16:39:45 +01:00
Joe Thornber
9e0540e1b6
era_check, era_dump
2014-01-23 00:46:03 +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
927f611aad
remove btree_checker, and add btree_counter
2013-12-11 17:00:57 +00:00
Joe Thornber
7224639d14
Merge branch 'master' of github.com:jthornber/thin-provisioning-tools
2013-12-09 12:47:26 +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
9a65e7707c
Merge branch 'master' of github.com:jthornber/thin-provisioning-tools into era
2013-12-09 10:42:28 +00:00
Joe Thornber
7a2d43268d
[array] damage reported if the array is smaller than claimed in the ctr
2013-12-03 15:04:16 +00:00
Joe Thornber
983a5e84e6
Move endian_utils to base/
2013-11-19 10:23:35 +00:00
Joe Thornber
180f7e6187
persistent-data/data-structures/bloom_filter
2013-11-18 13:08:07 +00:00
Joe Thornber
9402f09408
[bitset] tweak an exception message
2013-11-18 13:07:21 +00:00
Joe Thornber
b32a3b9fb9
[bitset] get_nr_bits() method
2013-11-18 13:07:08 +00:00
Joe Thornber
fd061fab15
[bitset] change the name of the #include guard
2013-11-18 13:06:35 +00:00
Denys Duchier
3a4c06b772
use persistent-data::bitset to avoid ambiguity
2013-11-16 21:42:23 +01:00
Joe Thornber
0fe7dddd8a
whitespace
2013-10-15 10:51:35 +01:00
Joe Thornber
ea15a329d7
[cache_check] Now checks discard bitset
2013-10-11 10:22:02 +01:00
Joe Thornber
9b5bf559ec
[persistent-data/data-structures] add method to visit values and damage in a bitset
2013-10-10 12:55:10 +01:00
Joe Thornber
347de67e2d
[persistent-data/data-structures/bitset] Use pimpl idiom to hide implementation.
2013-10-10 12:17:34 +01:00
Joe Thornber
ce8e19fa75
remove old fixme
2013-10-02 11:08:09 +01:00
Joe Thornber
3bc798c1f8
[array] wire up the correct validator
2013-10-02 11:07:33 +01:00
Joe Thornber
326134a7aa
[array] add visit method for values and damage
2013-10-02 10:44:57 +01:00
Joe Thornber
17f7c982f2
[caching] hint support
2013-09-24 12:00:09 +01:00
Joe Thornber
c476de1756
[cache_restore] more wip
2013-09-18 13:00:26 +01:00
Joe Thornber
500e508c6d
fix up some coverity issues
2013-08-15 16:26:17 +01:00
Joe Thornber
77286e0bc7
Take out some 'typename's to support older versions of gcc (Heinz).
2013-08-15 10:35:07 +01:00
Joe Thornber
eb8d4c6f0b
Get tools building with g++ 4.8.1
2013-06-25 13:48:02 +01:00
Joe Thornber
83a09e1a2a
[btree] use a block_ref_counter for internal nodes
2013-06-20 14:29:48 +01:00
Joe Thornber
e89d81e318
[btree] fix bug in earlier patch. inc_children was always begin called.
2013-06-20 14:26:17 +01:00
Joe Thornber
16c9efc85c
[btree] Avoid an extra shadow op in split_sibling
2013-06-20 12:17:59 +01:00
Joe Thornber
c8a5d0753d
[btree] factor out inc_children
2013-06-20 12:17:16 +01:00
Joe Thornber
a2e51062e3
[btree] call inc_children when shadowning a btree node.
2013-06-19 17:20:12 +01:00
Joe Thornber
ec99e6fd93
[btree] update the root_ after an insert
...
!!!
2013-06-19 17:19:24 +01:00
Joe Thornber
480e94d4eb
Remove some more global using namespaces
2013-05-28 13:53:23 +01:00
Joe Thornber
6706493304
Remove some global 'using namespace's
2013-05-28 13:48:10 +01:00