]>
sourceware.org Git - lvm2.git/log
Zdenek Kabelac [Fri, 11 Sep 2020 12:44:05 +0000 (14:44 +0200)]
tests: reduce disk space usage by pvck-dump
Lower disk usage for 'dd'.
Zdenek Kabelac [Fri, 11 Sep 2020 11:35:30 +0000 (13:35 +0200)]
tests: lower at_least to version 1.19
With this version already can be seen different metadata usage on
kernel side, so lower the target version.
Zdenek Kabelac [Fri, 11 Sep 2020 09:59:55 +0000 (11:59 +0200)]
tests: have_cache function checks for cache-pool
Check for cache-pool segment as plain cache can match writecache.
Zdenek Kabelac [Fri, 11 Sep 2020 18:57:20 +0000 (20:57 +0200)]
alloc: improve estimation of sufficient_pes_free
Metadata size was calculated correctly only for raids.
Fixes problem for crash during lvcreate when thin-pool was created
on a VG where remaining free space had the size to only fit a single
metadata LV and not also its _pmspare.
Lvcreate crashed with this assert message:
lvcreate: metadata/pv_map.c:198: consume_pv_area: Assertion `to_go <= pva->count' failed.
Aborted (core dumped)
TODO: there is probably to large overload of several alloc_handle
variables.
Reported-by: Wu Guanghao<wuguanghao3@huawei.com>
Reported-by: Zhiqiang Liu <liuzhiqiang26@huawei.com>
Wu Guanghao [Fri, 11 Sep 2020 09:42:16 +0000 (17:42 +0800)]
lvconvert: check if LV has snapshot type
Cow may not be a snapshot type, the return value of origin_from_cow(cow) may be NULL
Signed-off-by: Wu Guanghao <wuguanghao3@huawei.com>
Signed-off-by: Zhiqiang Liu <liuzhiqiang26@huawei.com>
Wu Guanghao [Fri, 11 Sep 2020 09:41:01 +0000 (17:41 +0800)]
lvconvert_poll: ensure LV has snapshot type
LV may not be a snapshot type, the return value of find_snapshot(lv) may be NULL.
Here, we will call stack if LV is not a snapshot type.
Signed-off-by: Wu Guanghao <wuguanghao3@huawei.com>
Signed-off-by: Zhiqiang Liu <liuzhiqiang26@huawei.com>
Wu Guanghao [Fri, 11 Sep 2020 09:40:09 +0000 (17:40 +0800)]
pvmove: check return value of top_level_lv_name()
The return value of top_level_lv_name() may be NULL, so we should
check return value of top_level_lv_name before calling
strcmp(lv->name, top_level_lv_name(vg, lv_name)).
Signed-off-by: Wu Guanghao <wuguanghao3@huawei.com>
Signed-off-by: Zhiqiang Liu <liuzhiqiang26@huawei.com>
Zhao Heming [Thu, 10 Sep 2020 15:38:07 +0000 (23:38 +0800)]
gitignore: ignore all cscope generated files
When using cscope to read code, it will generate below 3 files for speedup
cross-refer: cscope.files, cscope.in.out, cscope.po.out
The .gitignore only contains "/cscope.out". It a little bit messy when
executing 'git status', and other git commands.
This patch add all cscope generated files in .gitignore.
Signed-off-by: Zhao Heming <heming.zhao@suse.com>
Zdenek Kabelac [Fri, 11 Sep 2020 11:31:55 +0000 (13:31 +0200)]
thin: compensate metadata size by extra percent
When using --use-policy for automatic extension of thin-pool,
the extension of thin-pool's metadata itself can actually take
some extra space.
Since I'm not aware of exact compensation formula, add just
1% extra to calculated amount and hope it fits.
Wanted target is to always have usable thin-pool that fits
bellow pool_metadata_min_threshold().
Zdenek Kabelac [Fri, 11 Sep 2020 11:31:29 +0000 (13:31 +0200)]
lv_manip: even better rounding
Zdenek Kabelac [Thu, 10 Sep 2020 15:05:02 +0000 (17:05 +0200)]
tests: aux collects stack trace when stuck is assumed
Automatically collect traces in this case.
Zdenek Kabelac [Thu, 10 Sep 2020 14:47:52 +0000 (16:47 +0200)]
tests: adding "" around DM_DEV_DIR
Zdenek Kabelac [Thu, 10 Sep 2020 14:39:07 +0000 (16:39 +0200)]
tests: disable dbustest with valgrind testing
Zdenek Kabelac [Thu, 10 Sep 2020 20:38:13 +0000 (22:38 +0200)]
cleanup: comment typo
Zdenek Kabelac [Thu, 10 Sep 2020 21:33:46 +0000 (23:33 +0200)]
debug: drop debug trace from regular path
Since we query on regular code these:
lv_raid_has_integrity()
lv_has_integrity_recalculate_metadata()
without prior checking for lv_is_raid() - these 'return 0' should
not use <stacktrace> as they are expected.
Zdenek Kabelac [Thu, 10 Sep 2020 15:39:43 +0000 (17:39 +0200)]
lv_manip: relocate check to proper function
Zdenek Kabelac [Thu, 10 Sep 2020 20:38:34 +0000 (22:38 +0200)]
lvextend: improve percentage estimation
Correcting rounding rules for percentage evaluation.
Validate supported range of percentage.
(although ranges are already validated earlier on code path)
Zdenek Kabelac [Wed, 9 Sep 2020 13:56:06 +0000 (15:56 +0200)]
configure: compile with vdo and writecache by default
Enable compilation of vdo and writecache support as internaly
supported segment types by default.
For disabling use:
--with-vdo=none
--with-writcache=none
David Teigland [Wed, 9 Sep 2020 15:22:07 +0000 (10:22 -0500)]
integrity: fix segfault reporting integrity for other lvs
Zdenek Kabelac [Wed, 9 Sep 2020 13:14:22 +0000 (15:14 +0200)]
man: correcting vdo issues
Fixing reported bugs within provided examples - so examples
can be used via cut&paste.
Zdenek Kabelac [Wed, 9 Sep 2020 11:22:37 +0000 (13:22 +0200)]
man: correctly use configured directories
Zdenek Kabelac [Tue, 8 Sep 2020 22:58:52 +0000 (00:58 +0200)]
Revert "raid: add _rimage and _rmeta as origin_only"
This reverts commit
3388e194892e9ab7a36b72e512796c2d218dae6e .
More thinking needed.
Zdenek Kabelac [Tue, 8 Sep 2020 22:58:32 +0000 (00:58 +0200)]
Revert "raid: do not enforce flushing of raids when it is not required"
This reverts commit
ce5ea07411d57a2bd276d8d29e46ce30b957f657 .
More thinking needed.
Zdenek Kabelac [Mon, 7 Sep 2020 22:22:16 +0000 (00:22 +0200)]
tests: tune extend test
For proper checking of extension progress require version 1.15
It looks with older versoin extension happens during very slow
resume within lvm command - although speed is still somewhat slow
with latest version.
Zdenek Kabelac [Fri, 4 Sep 2020 19:08:32 +0000 (21:08 +0200)]
tests: check for writecache being compiled in
Zdenek Kabelac [Fri, 4 Sep 2020 18:35:55 +0000 (20:35 +0200)]
tests: check for cache_version that supports v2
Zdenek Kabelac [Tue, 8 Sep 2020 19:09:06 +0000 (21:09 +0200)]
raid: do not enforce flushing of raids when it is not required
This is probably somewhat experimantal patch - but when i.e. raid device
is just extend, there should not be a technical need for flush,
unless the target would stricly need it. It should allow faster
processing of lvm command not being blocked by possibly longer flush.
Zdenek Kabelac [Tue, 8 Sep 2020 19:06:23 +0000 (21:06 +0200)]
raid: add _rimage and _rmeta as origin_only
Since we do not support rimage & rmeta for snapshots - we can
avoid quering for -cow devices and add them as origin_only -
since their snapshots (-cow) could have never existed.
This redumes several ioctl operation during table preloading.
Zdenek Kabelac [Tue, 8 Sep 2020 13:20:50 +0000 (15:20 +0200)]
lv_manip: add synchronization points
Zdenek Kabelac [Fri, 4 Sep 2020 18:55:02 +0000 (20:55 +0200)]
lvconvert: flip return value of _raid_split_image_conversion
Use '0' for error and '1' as success.
Also drop INTERNAL_ERROR from path - as this error
is ATM used for invalid devices.
(i.e. test lvconvert-raid1-split-trackchanges.sh)
David Teigland [Fri, 4 Sep 2020 16:22:42 +0000 (11:22 -0500)]
tests: fix pvck repair in hints.sh
Zdenek Kabelac [Fri, 4 Sep 2020 16:05:01 +0000 (18:05 +0200)]
tests: use delayzero_dev
Speed-up a bit the first synchronization with just 50ms write delay,
but later set also delay on read to slowdown lvextend.
FIXME: there are still things to look at:
0 229376 raid raid1 2 AA 229376/229376 idle 0 0
0 229376 raid raid1 2 AA 0/229376 frozen 0 0 -
0 262144 raid raid1 2 AA 229376/262144 repair 0 0 -
0 262144 raid raid1 2 AA 229376/262144 repair 0 0 -
0 262144 raid raid1 2 AA 245888/262144 repair 0 0 -
Zdenek Kabelac [Fri, 4 Sep 2020 11:50:05 +0000 (13:50 +0200)]
tests: add aux delayzero_dev support
Just like we have 'writeerror_dev' supporting creation of device
which 'readable' segment and segments where write will fail we
have now support for delay zero mappings.
This is useful if we want to 'fake' large writing areas where we do
not really care about the actual 'disk' content - since we test
operation logic and it doesn't matter we read and write zeroes.
With combination with 'delay' target we can create specific mappings
and avoid using large memory areas of ramdisk.
David Teigland [Wed, 2 Sep 2020 19:45:52 +0000 (14:45 -0500)]
writecache: allow pvmove on origin
The removed check didn't actually prevent pvmoving the origin,
which was possible by naming the wcorig lv, or naming no lv.
David Teigland [Wed, 2 Sep 2020 19:21:17 +0000 (14:21 -0500)]
pvck: repair should clear hints
repairing a pv can cause the hint file to become incorrect
David Teigland [Wed, 2 Sep 2020 19:06:46 +0000 (14:06 -0500)]
hints: remove warning when clearing hint file
When the hint file cannot be accessed, silently
ignore hints, like other instances do.
David Teigland [Wed, 2 Sep 2020 17:40:45 +0000 (12:40 -0500)]
integrity: improve lv type checks
David Teigland [Wed, 2 Sep 2020 14:15:58 +0000 (09:15 -0500)]
integrity: fix segfault for lv with no seg
in lv_raid_has_integrity
David Teigland [Tue, 1 Sep 2020 22:07:36 +0000 (17:07 -0500)]
tests: add new integrity reporting fields
David Teigland [Tue, 1 Sep 2020 21:15:31 +0000 (16:15 -0500)]
integrity: report mismatches
with lvs -o integritymismatches
reported for integrity images, which may report
different values
David Teigland [Tue, 1 Sep 2020 19:39:34 +0000 (14:39 -0500)]
integrity: report raidintegritymode randintegrityblocksize
reported for the raid lv and the integrity images
David Teigland [Tue, 1 Sep 2020 17:53:00 +0000 (12:53 -0500)]
integrity: always default to journal mode
lvconvert was defaulting to bitmap mode,
and lvcreate was defaulting to journal mode.
Zdenek Kabelac [Tue, 1 Sep 2020 21:14:47 +0000 (23:14 +0200)]
tests: skip this test for current 5.8 5.9 kernels
Kernel is hitting not yet fixed kernel bug.
Skip the test to avoid killing testing machine.
Zdenek Kabelac [Tue, 1 Sep 2020 21:05:11 +0000 (23:05 +0200)]
tests: slightly faster
Use lvm shell to agregrate lots of lvm commands
Reduce initial zeroing.
Zdenek Kabelac [Tue, 1 Sep 2020 20:45:17 +0000 (22:45 +0200)]
tests: set skipping autoactivation
On test system with 'default' filter (aka accept all) test
after enabling device can suffer from automatic system
activation - so for created LVs setup skipping this automatic
activation. This should prevent getting LVs into table
with pvscan service.
Zdenek Kabelac [Tue, 1 Sep 2020 19:39:47 +0000 (21:39 +0200)]
tests: skip test when gcore cannot catch securetest
Zdenek Kabelac [Tue, 1 Sep 2020 19:17:14 +0000 (21:17 +0200)]
gcc: avoid shadowing of dev_name and pvs
Since we declare dev_name in lib/device/device.h
and pvs in commands.h
rename local dev_name to device_name
and pvs to pvs_list to prevent shadowing warning.
m
Zdenek Kabelac [Tue, 1 Sep 2020 18:46:18 +0000 (20:46 +0200)]
gcc: hide warn about possible uninitialized use of dev_ret
Older gcc reports this fp problem.
Zdenek Kabelac [Tue, 1 Sep 2020 19:14:39 +0000 (21:14 +0200)]
pvck: add simple check for fwrite
Add at least very light check for result code of fwrite().
Zdenek Kabelac [Tue, 1 Sep 2020 19:08:12 +0000 (21:08 +0200)]
pvck: use array of bytes
Fix typo in use array of pointers instead of array of bytes.
This fixes 'break strict-aliasing rules' warning printed with older gcc.
Zdenek Kabelac [Sat, 29 Aug 2020 20:37:17 +0000 (22:37 +0200)]
cleanup: better expressing passing key arg to _hash
Zdenek Kabelac [Sat, 29 Aug 2020 19:53:31 +0000 (21:53 +0200)]
cleanup: add spaces between literals
Zdenek Kabelac [Sat, 29 Aug 2020 19:53:05 +0000 (21:53 +0200)]
cleanup: user force_t enums instead of ints
Zdenek Kabelac [Sat, 29 Aug 2020 19:37:39 +0000 (21:37 +0200)]
cleanup: matching declaration order
Cosmetic
Zdenek Kabelac [Sat, 29 Aug 2020 18:40:20 +0000 (20:40 +0200)]
cov: avoid duplicated assign
Zdenek Kabelac [Sat, 29 Aug 2020 18:27:32 +0000 (20:27 +0200)]
cov: always initialized values
Make sure values are initialized for all possible paths.
Zdenek Kabelac [Tue, 1 Sep 2020 15:53:36 +0000 (17:53 +0200)]
cov: explicitely ignore function result
Zdenek Kabelac [Sat, 29 Aug 2020 17:56:37 +0000 (19:56 +0200)]
cov: always sure we end with '0'
Use easier dm_strncpy().
Zdenek Kabelac [Sat, 29 Aug 2020 20:24:34 +0000 (22:24 +0200)]
gcc: keep using unsigned type
Zdenek Kabelac [Sat, 29 Aug 2020 20:02:41 +0000 (22:02 +0200)]
gcc: preserve constness of buffer
Zdenek Kabelac [Fri, 28 Aug 2020 17:15:01 +0000 (19:15 +0200)]
gcc: zero-sized array to fexlible array C99
Switch remaining zero sized struct to flexible arrays to be C99
complient.
These simple rules should apply:
- The incomplete array type must be the last element within the structure.
- There cannot be an array of structures that contain a flexible array member.
- Structures that contain a flexible array member cannot be used as a member of another structure.
- The structure must contain at least one named member in addition to the flexible array member.
Although some of the code pieces should be still improved.
Zhao Heming [Thu, 20 Aug 2020 16:05:04 +0000 (00:05 +0800)]
gcc: change zero-sized array to fexlible array
this patch makes gcc happy with compiling option: [-Wstringop-overflow=]
Signed-off-by: Zhao Heming <heming.zhao@suse.com>
Zdenek Kabelac [Sat, 29 Aug 2020 18:35:49 +0000 (20:35 +0200)]
dmsetup: initilize winsize struct
Ensure winsize struct is always defined.
Zdenek Kabelac [Sat, 29 Aug 2020 13:33:57 +0000 (15:33 +0200)]
tests: filefrag needs to support -e
Skip on systems with 'too old' filefrag without -e support
Zdenek Kabelac [Sat, 29 Aug 2020 18:08:49 +0000 (20:08 +0200)]
cachevol: correcting 64b math
Widen to 64bit for correct 64b multiplication math.
Zdenek Kabelac [Fri, 28 Aug 2020 19:42:12 +0000 (21:42 +0200)]
WHATS_NEW: update
Zdenek Kabelac [Fri, 28 Aug 2020 19:14:06 +0000 (21:14 +0200)]
gcc: drop bogus ;
Zdenek Kabelac [Fri, 28 Aug 2020 17:33:49 +0000 (19:33 +0200)]
gcc: do not use return with void function
Follow C norm and do not use 'return' in void function to call other
functions.
Zdenek Kabelac [Fri, 28 Aug 2020 17:35:25 +0000 (19:35 +0200)]
gcc: use apropriate type for reading and printing values
Zdenek Kabelac [Fri, 28 Aug 2020 17:15:42 +0000 (19:15 +0200)]
tools: move struct element before variable lenght list
Move prio field before 'variable' struct array field.
Interesting why this has not been catched yet.
TODO: think about test case
Zdenek Kabelac [Fri, 28 Aug 2020 16:58:55 +0000 (18:58 +0200)]
gcc: calc size in compile time
Zdenek Kabelac [Fri, 28 Aug 2020 16:46:06 +0000 (18:46 +0200)]
gcc: avoid stack alloc arithmetic
Zdenek Kabelac [Fri, 28 Aug 2020 17:55:01 +0000 (19:55 +0200)]
gcc: keep unsigned arithmetic
Avoid conversion to int.
Zdenek Kabelac [Fri, 28 Aug 2020 18:07:34 +0000 (20:07 +0200)]
lv_manip: get_default_region_size return uint32_t
Zdenek Kabelac [Fri, 28 Aug 2020 17:48:40 +0000 (19:48 +0200)]
lvmcache: use uint32_t for seqno caching
Zdenek Kabelac [Fri, 28 Aug 2020 16:26:40 +0000 (18:26 +0200)]
writecache: correct usage of const struct
Zdenek Kabelac [Fri, 28 Aug 2020 16:26:07 +0000 (18:26 +0200)]
container_of: drop needless const converion
Zdenek Kabelac [Thu, 27 Aug 2020 10:55:22 +0000 (12:55 +0200)]
tests: check we detect lvm.conf read failure
No coredumps with unreadable lvm.conf.
Zdenek Kabelac [Thu, 27 Aug 2020 10:49:03 +0000 (12:49 +0200)]
config: drop reading file with mmap
While normally the 'mmap' file reading is better utilizing resources,
it has also its odd side with handling errors - so while we normally
use the mmap only for reading regular files from root filesystem
(i.e. lvm.conf) we can't prevent error to happen during the read
of these file - and such error unfortunately ends with SIGBUS error.
Maintaing signal handler would be compilated - so switch to slightly
less effiecient but more error resistant read() functinality.
David Teigland [Fri, 28 Aug 2020 18:26:50 +0000 (13:26 -0500)]
Revert "lvdisplay: dispaly correct status when underlying devs missing"
This reverts commit
1d0dc74f9147e3c1f3681efa4166cbe2edcb6571 .
We should avoid adding anything new to lvdisplay and report
new information via lvs reporting fields.
Zhao Heming [Mon, 24 Aug 2020 14:47:04 +0000 (09:47 -0500)]
lvdisplay: dispaly correct status when underlying devs missing
reproducible steps:
1. vgcreate vg1 /dev/sda /dev/sdb
2. lvcreate --type raid0 -l 100%FREE -n raid0lv vg1
3. do remove the /dev/sdb action
4. lvdisplay show wrong 'LV Status'
After removing raid0 type LV underlying dev, lvdisplay still display
'available'. This is wrong status for raid0.
This patch add a new function raid_is_available(), which will handle
all raid case.
With this patch, lvdisplay will show
from:
LV Status available
to:
LV Status NOT available (partial)
Reviewed-by: Enzo Matsumiya <ematsumiya@suse.com>
Signed-off-by: Zhao Heming <heming.zhao@suse.com>
Zdenek Kabelac [Wed, 19 Aug 2020 12:40:08 +0000 (14:40 +0200)]
wipe_lv: close devices on error path
Device was kept open preventing its deactivated and removed
on error path.
Zdenek Kabelac [Tue, 21 Jul 2020 22:41:35 +0000 (00:41 +0200)]
man: vdo improvals
Add some more notes about discard.
Correct enumeration.
Zdenek Kabelac [Thu, 9 Jul 2020 21:22:52 +0000 (23:22 +0200)]
config: move some config setting into commented part
It's better to set most of option as 'commented' with some
documented defaults instead of providing strict values.
This has the advantage we can eventually 'change' defualts
and get them working in future. Otherwise once the setting
is stored in lvm.conf in /etc, such setting has strictly
defined value and that can be only change with file update.
Marian Csontos [Wed, 12 Aug 2020 10:05:36 +0000 (12:05 +0200)]
Update README
Marian Csontos [Sun, 9 Aug 2020 14:16:39 +0000 (16:16 +0200)]
post-release
Marian Csontos [Sun, 9 Aug 2020 14:15:31 +0000 (16:15 +0200)]
pre-release
Marian Csontos [Sun, 9 Aug 2020 14:15:13 +0000 (16:15 +0200)]
WHATS_NEW
Marian Csontos [Sun, 9 Aug 2020 13:20:22 +0000 (15:20 +0200)]
build: make generate
Tony Asleson [Thu, 6 Aug 2020 20:42:49 +0000 (15:42 -0500)]
WHATS_NEW: Add writecache lvmdbusd
Vojtech Trefny [Wed, 1 Jul 2020 11:27:47 +0000 (13:27 +0200)]
lvmdbusd: Bump LVM DBus API version
So users can check for writecache support.
Vojtech Trefny [Wed, 1 Jul 2020 11:27:46 +0000 (13:27 +0200)]
lvmdbusd: Add support for LVM writecache
Marian Csontos [Tue, 28 Jul 2020 15:36:57 +0000 (17:36 +0200)]
tests: Adapt RAID test to changes
Change
3c9177fdc0b8 causes a conversion of raid1 volume to a raid1 with
the same number of legs succeed with a warning.
David Teigland [Thu, 23 Jul 2020 20:10:35 +0000 (15:10 -0500)]
cachevol: add LV type restrictions to command defs
LV type restrictions were missed on the command definitions.
David Teigland [Thu, 23 Jul 2020 18:07:32 +0000 (13:07 -0500)]
cachevol: generate a unique name when creating
When a cachevol is automatically created, if the default name
conflicts with an existing name, generate a new unique name.
Heinz Mauelshagen [Mon, 20 Jul 2020 13:36:25 +0000 (15:36 +0200)]
lvconvert: display warning if raid1 LV image count does not change
Fix "lvconvert -mN $RaidLV" to display a warning in
case the same number of images is being requested.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=
1774696
David Teigland [Wed, 15 Jul 2020 15:57:05 +0000 (10:57 -0500)]
integrity: allow type option to be set when changing mirrors
Allow the optional '--type raid1' to be included in the lvconvert
command when adding or removing raid images with integrity.
It does not change the meaning of the command (specifying a type
that matches the current type is redundant but generally allowed.)
David Teigland [Wed, 15 Jul 2020 15:07:28 +0000 (10:07 -0500)]
lvmdbusd: recognize lv attr letter g for integrity
Heinz Mauelshagen [Thu, 9 Jul 2020 16:51:33 +0000 (18:51 +0200)]
lvconvert: preset raid1 in case of striped conversions
Fixed invoking "lvconvert -m+1 $StripedLV" to cause errors
(preset raid conversion implied by '-m').
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=
1781406
David Teigland [Thu, 19 Sep 2019 17:17:36 +0000 (12:17 -0500)]
devices: simplify md superblock checking code
This page took 0.068432 seconds and 5 git commands to generate.