Commit Graph

1780 Commits

Author SHA1 Message Date
Ming-Hung Tsai
4b08c7793d [space map] fix accounting of allocatable blocks (#98)
Preserve the input block first to avoid reusing it in subsequent
shadow operations, e.g., shadow another block when releasing
a recursive lock. (issue #97)
2018-06-07 07:45:37 +01:00
Jörg Thalheim
6a7351da0d Fix musl build (#96)
a) Fix build if limits.h provides definition for PAGE_SIZE, as musl does w/musl per XSI[1] although it's apparently optional [2].
   This value is only provided when it's known to be a constant, to avoid the need to discover the value dynamically.
b) If not using system-provided (kernel headers, or libc headers, or something) use the POSIX approach of querying the value
   dynamically using sysconf(_SC_PAGE_SIZE) instead of hardcoded value that hopefully is correct.
[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/limits.h.html
[2] http://www.openwall.com/lists/musl/2015/09/11/8

This patch originate from:

  https://raw.githubusercontent.com/voidlinux/void-packages/a0ece13ad7ab2aae760e09e41e0459bd999a3695/srcpkgs/thin-provisioning-tools/patches/musl.patch

and was also applied in NixOS:

  https://github.com/NixOS/nixpkgs/pull/40559/

cc @dtzWill
2018-05-22 14:02:49 +01:00
Joe Thornber
5d3197b8ab [build] quieten build of C files 2018-04-25 14:05:28 +01:00
Joe Thornber
6f936992b8 bump version 2018-04-23 10:41:48 +01:00
Joe Thornber
1172b2f450 [functional-tests] with-temp-file-sized now takes *either* bytes or a disk-size object 2018-04-18 15:12:28 +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
e619c6edd0 Merge branch 'master' of github.com:jthornber/thin-provisioning-tools 2018-04-17 13:33:32 +01:00
Joe Thornber
1433d11f59 [thin-provisioning/metadata] Use latest metadata version (2) 2018-04-17 13:32:49 +01:00
Joe Thornber
58048dc178 [file_utils] Use aligned memory in zero_superblock 2018-04-17 11:42:43 +01:00
Joe Thornber
abb32897e2 [thin_dump] human_readable emitter didn't print the metadata_snap. 2018-04-17 10:29:31 +01:00
Todd Gill
6046ebd4c4 Add autoconf step to Building instructions (#92)
The configure script doesn't exist until autoconf is run.

Signed-off-by: Todd Gill <tgill@redhat.com>
2018-04-17 10:09:15 +01:00
Robert Northard
0eab1d5676 Correct type readme for thin_restore command (#91) 2018-04-17 10:04:20 +01:00
Joe Thornber
5bac06d68f [man] Update manpage for thin_dump
--metadata-snap=<block nr>

Wasn't clear.
2018-01-31 14:39:24 +00:00
Joe Thornber
cf9ab80f86 [functional-tests] Fix (thin metadata)
It was using the old, spine based interface for btree-each
2018-01-25 16:11:43 +00:00
Joe Thornber
2fd6723712 [functional-tests/block-manager] wrap the C ptr
So we get some extra error checking.
2018-01-25 15:48:56 +00:00
Joe Thornber
12c760f05c [ft-lib/bcache] add a check to list_pop() 2018-01-25 15:47:12 +00:00
Joe Thornber
1122b9a423 [functional-tests] Code up an equivalent of get_opt_long() 2018-01-25 15:46:27 +00:00
Joe Thornber
54c03f10e6 Merge branch 'master' of github.com:jthornber/thin-provisioning-tools 2018-01-08 10:52:32 +00:00
Joe Thornber
2aa6c05c4b [functional-tests] simplify (thin create devices-in-reverse-order) 2017-12-20 09:01:46 +00:00
Joe Thornber
0d4fdcc687 [functional-tests] simplify (thin create devices-in-reverse-order) 2017-12-20 08:31:38 +00:00
Joe Thornber
05151c648c [functional-tests] from-to loop macro 2017-12-20 08:31:17 +00:00
Joe Thornber
fa8d691744 [functional-tests] Improve (thin create devices-in-reverse-order) 2017-12-19 17:25:10 +00:00
Joe Thornber
2fe7a884a2 [functional-tests] (thin create devices-in-reverse-order) 2017-12-19 15:44:33 +00:00
Joe Thornber
324d17981a [functional-tests] Get (thin delete recover-space) working 2017-12-18 11:43:33 +00:00
Joe Thornber
0dc237c356 [functional-tests] Move get-dev-size to C code
Saves forking blockdev
2017-12-15 15:35:24 +00:00
Joe Thornber
8d26c3729f [functional-tests] add more padding to the .....'s 2017-12-15 11:29:39 +00:00
Joe Thornber
2614078188 [functional-tests] Improve error message in create-device 2017-12-15 11:18:09 +00:00
Joe Thornber
ee40e4becf [functional-tests] switch map -> for-each in a couple of places 2017-12-15 11:17:26 +00:00
Joe Thornber
19dfed1da9 [functional-tests] Log exceptions properly 2017-12-15 10:21:59 +00:00
Joe Thornber
3c5408e51b [functional tests] (thin create bs-multiple-of-64k-good/bad) 2017-12-14 15:57:27 +00:00
Joe Thornber
4b90bd8edb [functional-tests] ditch define-thin-scenario
It obfuscates more than it saves
2017-12-14 15:12:09 +00:00
Joe Thornber
2db8ecf9e9 [functional-tests] some thin/delete tests 2017-12-14 14:58:16 +00:00
Joe Thornber
93213135ad [functional-tests] finish porting the thin/creation tests 2017-12-12 16:56:55 +00:00
Joe Thornber
d6a5ced23b Merge branch 'master' of github.com:jthornber/thin-provisioning-tools 2017-12-12 15:28:17 +00:00
Joe Thornber
bca125d97a [functional-tests] a bunch of thin tests 2017-12-12 15:27:20 +00:00
Joe Thornber
4bb99bf105 [functional-tests] Add math-utils library 2017-12-12 15:23:51 +00:00
Joe Thornber
ddea2c0de7 [functional-tests] thin-calc-ref-counts
This is the start of a tool that will analyse the block manager journal
and spot any cases where we're not crash proof.
2017-11-24 11:21:02 +00:00
Joe Thornber
4726854784 [functional-tests] add FIXME 2017-11-24 11:11:32 +00:00
Joe Thornber
29e92772a9 [functional-tests/btree] btree-walk-and-count + stop using a spine. 2017-11-24 11:10:41 +00:00
Joe Thornber
80d8a5b684 [ft-lib/bcache] Make warn and raise variadic 2017-11-24 11:06:45 +00:00
Joe Thornber
09fa32a423 [ft-lib/bcache] alloc_block wasn't checking for an empty free list 2017-11-24 11:05:51 +00:00
Joe Thornber
0569e06e80 [functional-tests] whitespace 2017-11-24 11:04:57 +00:00
csonto
39809c17b2 [*_restore] Fix leaking file descriptor (#89) 2017-11-14 15:09:11 +00:00
Joe Thornber
1253d720e9 update CHANGES 2017-11-13 14:18:07 +00:00
Joe Thornber
f48f533d75 bump version 2017-11-13 14:11:22 +00:00
Joe Thornber
e3b7d82569 [cache_restore] v2 dirty bitset root wasn't being written to superblock.
Resulting in corrupt restored data.
2017-11-13 14:02:16 +00:00
Joe Thornber
79c0159108 [dmtest] introduce the segment record. 2017-10-26 13:42:09 +01:00
Joe Thornber
d4edef51b0 [ft-lib/dm-ioctl] Remove a couple of fixmes 2017-10-26 13:13:44 +01:00
Joe Thornber
cfddb495fb [dm-tests] define-dm-scenario
Automatically opens the dm interface, and creates an allocator.
2017-10-23 11:22:33 +01:00
Joe Thornber
94a7d880bb [functional-tests] add a #include 2017-10-23 10:38:11 +01:00