Commit Graph

954 Commits

Author SHA1 Message Date
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
a99d6896a8 Fix a bug in the block cache read path. 2014-07-29 13:41:45 +01:00
Joe Thornber
f06a2673c5 wip 2014-07-29 11:34:26 +01:00
Joe Thornber
d482a76bda Use placement new to initialise the blocks 2014-07-28 14:32:33 +01:00
Joe Thornber
5c82d50204 remove some debug 2014-07-28 14:32:20 +01:00
Joe Thornber
840be1b6c9 wip 2014-07-28 14:13:28 +01:00
Joe Thornber
ab6d31f136 fluff 2014-07-25 17:53:37 +01:00
Joe Thornber
ecb6bee2b2 prefetch btree nodes when walking a tree 2014-07-25 16:32:59 +01:00
Joe Thornber
11469a2fda Beginning to work 2014-07-25 16:14:24 +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
d9040949fc forgot block_cache itself 2014-07-22 16:43:44 +01:00
Joe Thornber
d517684c95 Initial code drop for merging block_cache 2014-07-22 16:41:39 +01:00
Joe Thornber
fbce4d96f4 [cache_metadata_size] tweak an error message 2014-07-21 11:58:48 +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
9d63576ed3 Merge branch 'master' of github.com:jthornber/thin-provisioning-tools 2014-06-26 15:36:41 +01:00
Joe Thornber
5e3f4cf532 [era] Provide a default ctr for era_detail to quieten coverity 2014-06-26 15:35:48 +01:00
Joe Thornber
37f4c38ec3 [era/writeset_tree] Initialise era_ in the ctr to quieten coverity 2014-06-26 15:29:33 +01:00
Joe Thornber
d3687db3a8 [bloom filter] remove an unused data member 2014-06-26 15:26:39 +01:00
Philipp Marek
c6decff50c [doc] Fix a typo and a docu bug. 2014-06-18 13:37:48 +01:00
Joe Thornber
e4d82d04bd [thin_delta] Fix bug when detecting right_only mappings 2014-06-17 16:20:38 +01:00
Joe Thornber
c8f408ac3c [thin_delta] Update the usage 2014-06-17 15:00:38 +01:00
Joe Thornber
bb57104542 [thin_delta] By default output a simpler format that ignores the data locations.
Most people will access the data via the thin device itself, so
there's really no need to output the locations of the data on pool
device.  Doing this allows us to run together adjacent thin blocks
(even if they are not adjacent on the pool dev).

Simple format:

  <same begin="0" length="1"/>
  <different begin="1" length="4"/>
  <same begin="5" length="1"/>
  <different begin="6" length="6"/>
  <same begin="12" length="1"/>
  <different begin="13" length="9"/>
  <same begin="22" length="1"/>
  <different begin="23" length="4"/>
  <same begin="27" length="1"/>
  <different begin="28" length="3"/>
  <same begin="31" length="1"/>
  <different begin="32" length="1"/>

The old format is available using the --verbose switch:

  <same>
    <range begin="0" data_begin="0" length="1"/>
  </same>

  <different>
    <range begin="1" left_data_begin="24576" right_data_begin="16384" length="1"/>
    <range begin="2" left_data_begin="24577" right_data_begin="2" length="1"/>
    <range begin="3" left_data_begin="24578" right_data_begin="16385" length="1"/>
    <range begin="4" left_data_begin="24579" right_data_begin="4" length="1"/>
  </different>

  <same>
    <range begin="5" data_begin="5" length="1"/>
  </same>

  <different>
    <range begin="6" left_data_begin="24580" right_data_begin="16386" length="1"/>
    <range begin="7" left_data_begin="7" right_data_begin="16387" length="1"/>
    <range begin="8" left_data_begin="24581" right_data_begin="8" length="1"/>
    <range begin="9" left_data_begin="24582" right_data_begin="16388" length="1"/>
    <range begin="10" left_data_begin="10" right_data_begin="16389" length="1"/>
    <range begin="11" left_data_begin="24583" right_data_begin="11" length="1"/>
  </different>

  <same>
    <range begin="12" data_begin="12" length="1"/>
  </same>

  <different>
    <range begin="13" left_data_begin="24584" right_data_begin="13" length="1"/>
    <range begin="14" left_data_begin="24585" right_data_begin="16390" length="1"/>
    <range begin="15" left_data_begin="24586" right_data_begin="15" length="1"/>
    <range begin="16" left_data_begin="16" right_data_begin="16391" length="1"/>
    <range begin="17" left_data_begin="24587" right_data_begin="16392" length="1"/>
    <range begin="18" left_data_begin="18" right_data_begin="16393" length="3"/>
    <range begin="21" left_data_begin="24588" right_data_begin="21" length="1"/>
  </different>

  <same>
    <range begin="22" data_begin="22" length="1"/>
  </same>

  <different>
    <range begin="23" left_data_begin="24589" right_data_begin="23" length="1"/>
    <range begin="24" left_data_begin="24590" right_data_begin="16396" length="1"/>
    <range begin="25" left_data_begin="24591" right_data_begin="25" length="1"/>
    <range begin="26" left_data_begin="26" right_data_begin="16397" length="1"/>
  </different>

  <same>
    <range begin="27" data_begin="27" length="1"/>
  </same>

  <different>
    <range begin="28" left_data_begin="24592" right_data_begin="28" length="2"/>
    <range begin="30" left_data_begin="30" right_data_begin="16398" length="1"/>
  </different>

  <same>
    <range begin="31" data_begin="31" length="1"/>
  </same>

  <different>
    <range begin="32" left_data_begin="24594" right_data_begin="32" length="1"/>
  </different>
2014-06-17 14:20:33 +01:00
Joe Thornber
0e62a1c4de [thin_delta] provide a more complete diff output. 2014-06-17 12:39:13 +01:00
Joe Thornber
f80c2dc77f [thin_delta] Don't use endl which also flushes 2014-06-16 13:58:25 +01: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
root
cb6edde141 add comment 2014-06-16 13:41:45 +01:00
root
72e20c2d40 remove some dead code 2014-06-16 13:41:07 +01:00
Joe Thornber
d7d293ee4f thin_delta now works 2014-06-10 16:38:20 +01:00
Joe Thornber
d1989f4a14 whitespace 2014-06-10 16:38:10 +01:00
Joe Thornber
e851b35954 [thin_delta] read in the snaps and dev 2014-06-09 13:26:55 +01:00
Joe Thornber
b03fa373a1 [thin_delta] Print usage on unrecognised switch 2014-06-09 10:51:10 +01:00
Joe Thornber
83f2cce597 [thin_delta] -h/--help 2014-06-09 10:48:29 +01:00
Joe Thornber
87fa6dc079 [thin_delta] --version/-V 2014-06-09 10:37:46 +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
Benjamin Gilbert
2679e7f088 thin_metadata_size: Fix long names of units
Both implementations of thin_metadata_size believe units are defined
like this:

    1024 == kilobyte == k
    1000 == kibibyte == K

and so on.  Fix the 1000/1024 confusion, while continuing to follow the
LVM convention of using lowercase letters for binary units, so that we
have:

    1024 == kibibyte == k
    1000 == kilobyte == K
2014-05-17 03:51:06 -04:00
Benjamin Gilbert
e7e3e93ec6 thin_metadata_size: Drop executable bit on source file 2014-05-17 03:51:03 -04:00
Joe Thornber
82359c4835 remove a typename that rhel 6.6 objects to 2014-04-11 14:52:06 +01:00
Joe Thornber
cf5d2e3225 bump version 2014-04-11 14:11:59 +01:00
Joe Thornber
05b18a5b99 [thin_check] Fix bug in clear needs check logic.
Mixed up bools and int returns.
2014-04-02 13:43:16 +01:00
Joe Thornber
7eabc78d6d [era] qualify btiset 2014-04-01 17:43:15 +01:00
Joe Thornber
c802bf81d5 bump version 2014-04-01 16:40:14 +01:00
Joe Thornber
47ec37a9fd [thin tools] fix ambiguous reference to 'bitset' 2014-04-01 16:39:45 +01:00
Joe Thornber
df8447de3d bump version 2014-03-27 12:24:31 +00:00
Joe Thornber
8c24419238 Knock out the era_superblock_t for now.
It's still got some bloom stuff in it.  Will tidy up after release.
2014-03-27 12:23:00 +00:00
Joe Thornber
c3249ff757 [thin_check] --clear-needs-check-flag 2014-03-27 12:00:17 +00:00
Joe Thornber
fe019f6946 install era tools 2014-03-06 16:30:33 +00:00