Dennis Schridde
1311447a94
[build] Include boost/optional/optional_io.hpp in thin-provisioning/emitter.h ( #102 )
...
This fixes following build failure with Boost 1.67.0:
```
In file included from /usr/include/boost/optional/optional.hpp:33,
from /usr/include/boost/optional.hpp:15,
from ./thin-provisioning/emitter.h:23,
from contrib/thin_sexp_emitter.cc:2:
/usr/include/boost/optional/optional.hpp: In instantiation of ‘std::basic_ostream<_CharT, _Traits>& boost::operator<<(std::basic_ostream<_CharT, _Traits>&, const boost::optional_detail::optional_tag&) [with CharType = char; CharTrait = std::char_traits<char>]’:
./base/indented_stream.h:31:9: required from ‘{anonymous}::indented_stream& {anonymous}::indented_stream::operator<<(const T&) [with T = boost::optional<unsigned int>]’
contrib/thin_sexp_emitter.cc:105:29: required from ‘void {anonymous}::sexp_emitter::kv(const char*, const T&) [with T = boost::optional<unsigned int>]’
contrib/thin_sexp_emitter.cc:29:21: required from here
/usr/include/boost/optional/optional.hpp:1481:3: error: static assertion failed: If you want to output boost::optional, include header <boost/optional/optional_io.hpp>
BOOST_STATIC_ASSERT_MSG(sizeof(CharType) == 0, "If you want to output boost::optional, include header <boost/optional/optional_io.hpp>");
^~~~~~~~~~~~~~~~~~~~~~~
make: *** [contrib/Makefile:15: contrib/thin_sexp_emitter.o] Error 1
```
boost/optional/optional_io.hpp exists since at least Boost 1.34.0, so it is
safe to include in older versions, too.
2018-06-13 08:42:30 +01:00
Ming-Hung Tsai
582e424560
[space-map-disk] fix the number of free blocks ( #93 )
2018-04-17 14:00:44 +01:00
Joe Thornber
1433d11f59
[thin-provisioning/metadata] Use latest metadata version (2)
2018-04-17 13:32:49 +01:00
Joe Thornber
abb32897e2
[thin_dump] human_readable emitter didn't print the metadata_snap.
2018-04-17 10:29:31 +01:00
csonto
5b5aa971a0
Detect XML in *_check tools ( #86 )
...
* [*_check] Detect XML in cache_check and era_check
This is based on previous commit b10d8d4440
.
* [*_check] Fix typo in check_superblock
2017-10-05 13:47:10 +01:00
Joe Thornber
3c761e6822
[all tools] Factor out open_bm() and open_tm.
...
Many duplicates of this code.
2017-10-05 11:53:40 +01:00
Joe Thornber
99e8459be3
[thin_rmap] tweak an error message.
2017-10-05 08:22:58 +01:00
Joe Thornber
24931b3bda
[thin_check] --override-mapping-root
2017-10-04 11:43:13 +01:00
Joe Thornber
5b92f410ec
[*_restore] if things go wrong wipe the superblock.
...
So we don't leave the metadata device with partially restored metadata.
2017-09-28 14:39:24 +01:00
Joe Thornber
48e7ab89a5
[*_dump] Fix segfault when given a tiny metadata file
2017-09-21 10:22:38 +01:00
Joe Thornber
313716028e
[thin-metadata-size] -V was exiting with 1
2017-09-19 11:29:35 +01:00
Joe Thornber
3790f2e79c
[thin_rmap] Fail if no regions are supplied.
2017-09-19 11:05:00 +01:00
Joe Thornber
f7d79339e8
[man pages] Various updates.
2017-09-18 16:10:56 +01:00
Joe Thornber
b10d8d4440
[thin_check] Spot XML and be helpful.
2017-09-15 15:22:04 +01:00
Joe Thornber
a424417475
[thin_delta] long opts weren't being terminated properly.
...
This caused a seg fault with an unknown switch
2017-09-15 12:28:19 +01:00
Ming-Hung Tsai
b7d418131d
Spin-off syscall-related file operations ( #78 )
...
* [file_utils] spin-off syscall-related file operations
1. Eliminate the potential circular dependency between
persistent-data/block.h and persistent-data/file_utils.h,
if the former one wants to include the latter.
2. Avoid namespace pollution by removing the "using namespace std"
declaration in block.tcc.
3. Correct the header hierarchy: base/xml_utils.h now no longer
depends on the higher-level persistent-data/file_utils.h
* [file_utils] support block files in get_file_length()
2017-04-29 18:51:52 +01:00
Joe Thornber
4c311cf6d4
Switch an auto_ptr to a unique_ptr
2017-03-13 13:20:52 +00:00
Thanos Makatos
73e583e662
remove debug print
2017-02-06 13:11:10 +03:00
Thanos Makatos
0c78d8d0c5
fix compilation for gcc 5.4.0
2016-09-07 13:49:36 +00:00
Ming-Hung Tsai
45dbc2593a
[thin_ll_restore] check preallocation of output file
2016-08-10 23:41:25 +08:00
Ming-Hung Tsai
6863db6f86
[thin] fix duplicated counting of mapped blocks in restore emitter
2016-08-10 23:40:48 +08:00
Joe Thornber
e6562c6110
thin_generate_metadata
2016-07-15 11:23:07 +01:00
Joe Thornber
52de2dd38e
Merge branch 'v0.7-devel' of github.com:jthornber/thin-provisioning-tools into v0.7-devel
2016-07-11 15:51:58 +01:00
Joe Thornber
c2fdbad322
Merge branch '2016-07-07-improve-thin-repair-error-message' into v0.7-devel
...
Conflicts:
Makefile.in
VERSION
configure.ac
persistent-data/file_utils.cc
2016-07-11 15:51:30 +01:00
Joe Thornber
4779fb9b80
[various] Improve documentation
...
Output file must be preallocated.
2016-07-11 14:53:03 +01:00
Ming-Hung Tsai
7eac48793c
[space map disk] tidy up: add const qualifier
2016-06-20 00:40:10 +08:00
Ming-Hung Tsai
3439dbfdfc
[metadata_counter] hide count_trees() and count_space_maps()
2016-06-20 00:30:26 +08:00
Ming-Hung Tsai
9e7af6b677
[metadata_counter] remove explicit try/catch when counting data space map
...
Unlike metadata_index_store, the constructor of btree_index_store
doesn't throw exceptions.
2016-06-20 00:30:26 +08:00
Ming-Hung Tsai
e8f1bda1a5
[thin] store the device id in single_mapping_tree_damage_visitor for error reporting
...
1. fix the damage type for single_mapping_tree_damage_visitor
2. walk_mapping_tree() now requires the device id
3. update metadata_dumper and thin_ls for the new walk_mapping_tree()
2016-06-20 00:30:25 +08:00
Joe Thornber
a3eac8d5d8
Merge branch 'v0.7-devel' of github.com:jthornber/thin-provisioning-tools into v0.7-devel
2016-06-14 16:33:00 +01:00
Joe Thornber
642740e1b6
Merge branch '2016-03-08-cache-writeback' into v0.7-devel
2016-06-14 16:30:16 +01:00
Ming-Hung Tsai
e985b8b3be
[thin_scan][thin_ll_*] fix the data type for getopt_long return value to int
...
For toolchains represent char as unsigned type
2016-05-20 00:54:31 +08:00
Ming-Hung Tsai
55ecf87439
[thin_ll_restore] fix the data type of blocknr to uint64_t
2016-05-20 00:53:51 +08:00
Joe Thornber
3fb4177656
[thin_trim] more bug fixing
2016-04-08 17:07:04 +01:00
Joe Thornber
3c02151a4f
Merge branch 'master' into v0.7-devel
...
Conflicts:
persistent-data/file_utils.cc
persistent-data/file_utils.h
2016-04-05 13:13:10 +01:00
Thanos Makatos
431f2ab50a
allow tmakatos (a binary) emitter to be statically compiled
...
It is trivial to implement static compilation of the rest of the 3rd party
emitters.
2016-04-06 15:56:09 +03:00
Joe Thornber
866986b883
[thin_trim] FInally get thin_trim emitting the right discards
2016-04-05 12:27:00 +01:00
Ming-Hung Tsai
f20e2a0f40
[thin_check] cleanup: use metadata_counter
2016-04-05 16:09:58 +08:00
Ming-Hung Tsai
c8aabf2948
[metadata_counter] fix repeated counting of trees
2016-04-05 16:09:58 +08:00
Ming-Hung Tsai
c6c5086068
[thin_ll_dump] cleanup: use btree_node_checker
2016-04-05 16:09:58 +08:00
Joe Thornber
2288fc4565
Merge branch 'master' into 2016-02-03-fix-thin-trim
2016-03-31 16:39:54 +01:00
Joe Thornber
c7813e07e4
[thin_dump] --format custom=<shared lib>
...
Allow people to use their own emitters held in a shared library.
Put a trivial emitter in contrib/ as an example.
2016-03-24 13:59:08 +00:00
Joe Thornber
872a933072
[thin_dump] start refactoring format code
2016-03-23 10:52:04 +00:00
Joe Thornber
4370f048c0
[thin_dump] --skip-mappings
2016-03-22 15:01:37 +00:00
Joe Thornber
ad4fd30a27
Merge branch 'v0.7-devel' of github.com:jthornber/thin-provisioning-tools into v0.7-devel
2016-03-22 14:47:11 +00:00
Joe Thornber
a3f4940f1e
[thin_dump] --dev-id
2016-03-22 14:46:33 +00:00
Joe Thornber
8b2ec7a3aa
Merge branch 'master' into v0.7-devel
...
Conflicts:
VERSION
persistent-data/space-maps/disk.cc
persistent-data/space-maps/disk.h
2016-03-22 12:04:51 +00: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
Joe Thornber
e5363621ba
Merge pull request #51 from mingnus/v0.6.2-repairtool
...
[thin_ll_dump] Fix option -m to accept optional argument
2016-03-20 14:36:10 +00:00