David Teigland [Mon, 5 May 2025 20:44:47 +0000 (15:44 -0500)]
lvmlockctl: sscanf alternative
Add szscanf() to use in place of sscanf. It takes a buffer size for
strings, so avoids needing to use max field width, which is hard to
read when implemented with stringify macros.
Marian Csontos [Mon, 5 May 2025 15:02:06 +0000 (17:02 +0200)]
post-release
Marian Csontos [Mon, 5 May 2025 15:02:06 +0000 (17:02 +0200)]
pre-release 2.03.32
Marian Csontos [Tue, 29 Apr 2025 13:00:23 +0000 (15:00 +0200)]
WHATS_NEW: update
Zdenek Kabelac [Mon, 7 Apr 2025 12:14:58 +0000 (14:14 +0200)]
tests: check for resulting size
Add some extra validation check for size and slabsize.
Zdenek Kabelac [Tue, 1 Apr 2025 13:39:28 +0000 (15:39 +0200)]
make: generate
Zdenek Kabelac [Mon, 3 Mar 2025 14:21:34 +0000 (15:21 +0100)]
man: updates and typography
Manually enhance pages for thin, cache, raid, vdo.
Replace usage of .HP with .TP when it makes sense (but keep .HP
where so far we don't have replacement giving same visual results).
Use .CMS, .CME macros in dmsetup/dmstats so it easy to switch
But keep using .HP when the rendering looks simply better in terminal
although HTML output does not looks that well - so we may eventually
switch here to .TP.
For basic command synopsis use .NSY macro that will
use .SY for graphical rendering (postscript/pdf) but keep
using .TP for ASCII terminal output, as here many HTML renderers
are emitting unreadable pages.
For options use '\ ' (non-breakable space) between option and
its argument and option are not across line.
Reformat lines to fit in 80 columns.
Use .EX .. .EE for example output - this improves
character alignment for poststrict/pdf rendering as
it use monospace fonts (unlike .nf .. .fi).
Also with Example section never let the line being with space
and use '\' for such line.
If the Example line should being with '.' it needs to be
prefix with \&.
Add .nf/.fi macros for cases where .EX & .EE are undefined
(this happens i.e. with man2html)
Avoid use of tables (.TS .. .TE) as HTML renderers often use
images (.png) files for such tables and this does not scale well
when user changes font size in browser.
(and the large/long table were split into 2 pieces
so it does fit to 80 columns).
Use .MT .ME for emails.
Use .UR .UE. for URL.
Use .\|.\|.\& as sequence of 3 dots and add \& to not create end of
sentence and possibly wrong alignment.
On lines starting with .BR & .IR avoid using \fB \fI as this
can cause problem when i.e. html rendered may keep use
italic bold when just italic was really wanted.
When using series of .TP/.IP - set the size only with the
first tag - and let renderer align others to match the column.
Correct some small typographical rendering issues.
Rendering was evaluated for readable results with:
- mandoc -T html (-O style=mandoc.css)
- groff -Thtml -mman
- man2html
- man -Thtml
- man -Tps
- man
Unfortunatelly various g/troff troubles are with each of them,
so we need to select usage of macros in a way, that is not mangling
results for above engines.
Zdenek Kabelac [Wed, 5 Mar 2025 10:55:22 +0000 (11:55 +0100)]
man: generator update
Improve generated output for better compliance with '-T lint' checker
(mandoc -T lint and groff --mandoc).
Try to properly place .P sections and also correctly use .TP rendering
where we need to place '.na .ad' after the first rendered keyword,
otherwise it has not the desired impact.
Also use .nh .na .. .ad .hy around whole command USAGE description
so we avoid unwanted alignment,spacing,hyphenation there.
Make sure we are emitting properly order paragraphs and avoid
i.e. submit of .br after .RS/.in that has this implicit
Also more frequently emit '\n' so there are not too long lines as
rendering engine will format line breaking according to its rules.
To keep generated page better controllable emit more empty line
and use such lines for every .SH, .TP.
Use 'short_ops' loop to avoid duplicating code.
Emit .\|.\|. for 3dot sequence for proper graphical rendering
Emit \\0\\0\\0 (3 white space of width of letter '0')
for better alignment of options with graphical rendering.
There is ATM prepare '#define TABBED' - enabling this make
initial option list nicely aligned in graphical rendering
and doesn't seem to have bad side effect on text rendering.
man: generator use macros for options
Predefine all options used by the command into list of '.de O_name'
macros that are pregenerated in the front of man page.
(interestingly usage of groff strings (.ds) seems to have some
non-trivial issues across rendering engines)
This allows to use '\t' without producing warnings with
'mandoc -T lint' - as normally tabs are allowed only within
'.nf ... .fi' section, but than there is not working line-breaking.
While we could use purely 'tab' base version, for some 'html' (ascii)
redering its producing not so well indented option list.
For this reason use tabs only with graphical renderers .ie t / .el
and use only spaces for ascii rendering.
Ensure the ... (3dots continuation is properly renderer with
a single space after repeatable option/argument and not adding extra
space before i.e. closing bracket.
Using .ta for graphical rendering - allows to keep option aligned
with proportional font.
Zdenek Kabelac [Wed, 5 Mar 2025 10:54:46 +0000 (11:54 +0100)]
man: minor refactor
Minor updates to generator code.
David Teigland [Tue, 22 Apr 2025 21:18:51 +0000 (16:18 -0500)]
libdaemon: change connect error to log_debug
The message is unnecessary noise since callers print a
more user friendly message.
David Teigland [Tue, 22 Apr 2025 21:10:26 +0000 (16:10 -0500)]
lvmdevices: skip lvmlockd connection
the command doesn't use locks from lvmlockd
Zdenek Kabelac [Wed, 2 Apr 2025 08:58:16 +0000 (10:58 +0200)]
lvmcmdline: still support use of profile
Couple commands (lvcreate,lvconvert,vgcreate,lvchange,vgchange)
has the 'specific' property that within them the option --profile
behaves like --metadataprofile, while for all other commands this
option should be simply an alias for --commandprofile.
We may eventually drop this rather confusing behavior in the future
version and there will be only one use as --[command]profile
It should be noted this --commandprofile can be often used
instead of --config option for preconfiguring setting
for some group of commands - we should possibly more propagate
this usage.
Zdenek Kabelac [Wed, 2 Apr 2025 23:31:48 +0000 (01:31 +0200)]
libdm: fix missed init of regex pointer
Recent patch set for select enhancement missed to initialize
ssl struct element regex to NULL and this code might have
crashed on this code path evaluation.
Zdenek Kabelac [Tue, 1 Apr 2025 11:32:36 +0000 (13:32 +0200)]
WHATS_NEW: update
Zdenek Kabelac [Tue, 1 Apr 2025 11:24:11 +0000 (13:24 +0200)]
make: generate
Zdenek Kabelac [Sun, 30 Mar 2025 19:59:42 +0000 (21:59 +0200)]
cov: remove unused header
Zdenek Kabelac [Tue, 1 Apr 2025 11:49:10 +0000 (13:49 +0200)]
tests: check resize of snapshot with mounted origin
Zdenek Kabelac [Tue, 1 Apr 2025 11:40:49 +0000 (13:40 +0200)]
tests: resize of mounted fs missed workaround
For older kernel, we need to suspend/resume.
Zdenek Kabelac [Sun, 30 Mar 2025 19:27:25 +0000 (21:27 +0200)]
tests: preserve signess
Zdenek Kabelac [Mon, 31 Mar 2025 00:07:03 +0000 (02:07 +0200)]
tests: check unsupported vdo conversions
Validate unsupported vdo conversions are rejected.
Zdenek Kabelac [Mon, 31 Mar 2025 00:14:20 +0000 (02:14 +0200)]
tests: remove testing of old mirror with vdo
Actually mirror were never supposed to be usable with any newer
target as they are very problematic with any stacked usage.
So now it's going to be properly checked and prohibited.
Users are always supposed to use 'raid1' --type instead.
Zdenek Kabelac [Sun, 16 Mar 2025 15:09:37 +0000 (16:09 +0100)]
command: use loop for short_opts pass
Slight refactoring of the code to take less size
as the code is used rather occasionally.
Correct some minor typographical issue.
Zdenek Kabelac [Wed, 26 Mar 2025 10:28:54 +0000 (11:28 +0100)]
man-generator: print LV1 also for options
We can print list of supported LV types for
options like --cachepool,--thinpool,--vdopool when
they are specifying particular LV.
TODO: while we nicely document them, the parser engine ATM
is not capable to validate and enforce these properties,
so the code needs to match them on its own.
Zdenek Kabelac [Fri, 21 Mar 2025 23:50:01 +0000 (00:50 +0100)]
man-generator: add check for option overlap
Report --check error, when the option is required and optional
for the command.
Zdenek Kabelac [Thu, 27 Mar 2025 10:40:37 +0000 (11:40 +0100)]
lvconvert: fix _lvconvert_visible_check ret code
_lvconvert_visible_check() used to validate visibility
of converted LV for changing mirrorlog, regionsize
and merging images.
Zdenek Kabelac [Thu, 27 Mar 2025 10:37:45 +0000 (11:37 +0100)]
lvconvert: validate converted LV to vdopool
Although our command-line description file describes
supported types for conversion with some rules,
these are technically not yet fully implemented in
the code, thus we need explicit functionality to
validate passed LVs for conversion.
Zdenek Kabelac [Wed, 26 Mar 2025 20:48:39 +0000 (21:48 +0100)]
lvconvert: fix move is positional args
Properly shift args by 1 - hopefully 'argv[]' has the right size
to fit this single shift (as some option must have been there...)
Zdenek Kabelac [Wed, 26 Mar 2025 18:34:47 +0000 (19:34 +0100)]
lvconvert: simplify passing LV for conversion
Since command is defined to not taky any'free args',
we can actully avoid playing with positional args here
and just pass argv with a single arg.
Zdenek Kabelac [Tue, 25 Mar 2025 20:52:02 +0000 (21:52 +0100)]
args: update name of kernel module
Use '_' for kernel module name.
Zdenek Kabelac [Wed, 26 Mar 2025 13:47:05 +0000 (14:47 +0100)]
command-lines.in: matching vdopool conversion
Just use options in the same order as with --type vdo-pool
conversion.
Zdenek Kabelac [Wed, 26 Mar 2025 10:26:01 +0000 (11:26 +0100)]
command-lines.in update some description
Add some explicit warning for commands that are destroying content
of converted volume.
Add thinpooldata to the list of allow LVs for caching
(as the code already support this).
Zdenek Kabelac [Wed, 26 Mar 2025 08:42:28 +0000 (09:42 +0100)]
command-lines.in: add info about implicity type
Short description about how the default implied type
is selected for this lvcreate command.
Zdenek Kabelac [Fri, 21 Mar 2025 23:42:43 +0000 (00:42 +0100)]
command: update parameter from description
Parameter --profile is already 'generic' parameter,
so it's been listed twice in lvchange & vgchange.
Parameter --uuid was listed 2x in pvchange.
Zdenek Kabelac [Wed, 26 Mar 2025 10:25:30 +0000 (11:25 +0100)]
tools: add suppport to recognize thinpooldata
Zdenek Kabelac [Sun, 23 Mar 2025 10:54:49 +0000 (11:54 +0100)]
validation: add check for single vdo segments
Add check for VDO LV and VDOPOOL LV having just
a single segment in LV.
Also add couple missing '.' in error messages.
David Disseldorp [Fri, 14 Mar 2025 01:30:24 +0000 (02:30 +0100)]
device-types: support zram
See Linux source Documentation/admin-guide/blockdev/zram.rst .
zram devices offer a good performance and efficient resource utilization
through the use of compression.
Signed-off-by: David Disseldorp <ddiss@suse.de>
Bryn M. Reeves [Thu, 27 Mar 2025 18:11:05 +0000 (18:11 +0000)]
snapshot: fix lvresize when greater than max COW size
If lvresize is given a size > the maximum COW size for a given origin
the command will fail with an internal error and no error message:
# lvresize --size 1.6g fedora/snaptest-snap
Rounding size to boundary between physical extents: <1.59 GiB.
Reached maximum COW size <1.01 GiB (258 extents).
Command failed with status code 5.
With -vvv:
Found snapshot target v1.16.0.
Getting target version for snapshot-origin
dm versions [ opencount flush ] [2048] (*1)
Found snapshot-origin target v1.9.0.
Reached maximum COW size <1.01 GiB (258 extents). <<<
Unlock: Memlock counters: prioritized:0 locked:0 critical:0 daemon:0 suspended:0
Syncing device names
Unlocking /run/lock/lvm/V_fedora
_undo_flock /run/lock/lvm/V_fedora
Freeing VG fedora at 0x55781b142890.
Freeing VG fedora at 0x55781b136860.
global/notify_dbus not found in config: defaulting to 1
Destroy lvmcache content
Completed: lvresize -vvv --debug --size
1706243072b fedora/snaptest-snap
Internal error: Failed command did not use log_error
This happens because in this case _lvresize_adjust_extents() returns
early without setting lp->resize to either LV_EXTEND or LV_REDUCE after
capping lp->extents to the maximum COW size.
Fix this by just capping lp->extents and relying on the existing code in
_lvresize_adjust_extents() to fixup lp->resize in the case that
lp->extents == existing_logical_extents. This is consistent with the
no-op case where -l is given as the existing size:
root@localhost:~/src/git/lvm2# LD_LIBRARY_PATH="$PWD/tools" ./tools/lvm lvresize -L 1.6g fedora/snaptest-snap
Rounding size to boundary between physical extents: 1.60 GiB.
Reached maximum COW size <1.01 GiB (258 extents).
New size (258 extents) matches existing size (258 extents).
No size change.
Peter Rajnoha [Fri, 28 Mar 2025 09:12:11 +0000 (10:12 +0100)]
libdm: report: select: remove fixme note from _create_field_selection
Let's keep the fail-safe check in for the case some combination (e.g.
after adding a new type) is not caught earlier in the _parse_selection.
Peter Rajnoha [Tue, 25 Mar 2025 10:41:40 +0000 (11:41 +0100)]
libdm: report: select: add support for string list regex selection
The
c065b407cb77a7a14d7c7c3c94e09fcca2fcff09..
872e085030ae8039f18908f6e45bad7ba99250a7
was for device_mapper/libdm-report.c. Do the same for libdm/libdm-report.c
Peter Rajnoha [Tue, 25 Mar 2025 09:23:51 +0000 (10:23 +0100)]
WHATS_NEW: update
Peter Rajnoha [Mon, 24 Mar 2025 13:38:06 +0000 (14:38 +0100)]
tests: select-report: cover string list regex selection
Peter Rajnoha [Mon, 24 Mar 2025 09:34:12 +0000 (10:34 +0100)]
man: lvmreport: update parts about string list selection
Peter Rajnoha [Wed, 19 Mar 2025 14:19:45 +0000 (15:19 +0100)]
libdm: report: select: support string list selection based on a regex
Wire the field<-->selection comparison logic for regexes used for
string lists.
Peter Rajnoha [Tue, 18 Mar 2025 07:24:40 +0000 (08:24 +0100)]
libdm: report: select: support parsing regex for a string list
Recognize regex in string list selection criterion, including grouping
items by using {} and [] together with && (or ",") and || (or "#")
logical operators:
- [ <regex> && <regex> ... ]
- [ <regex> || <regex> ... ]
- { <regex> && <regex> ... ]
- { <regex> || <regex> ... ]
Also recognize simple "<regex>" (without any grouping operators)
as a shortcut for "{ <regex> }".
Peter Rajnoha [Thu, 20 Mar 2025 09:25:13 +0000 (10:25 +0100)]
libdm: report: select: lower initial size for selection mempool
The selection doesn't use that much memory, adjust the size accordingly.
Peter Rajnoha [Thu, 20 Mar 2025 07:57:48 +0000 (08:57 +0100)]
libdm: report: selection: use separate regex mempool
Regex remembers the mempool it was given during dm_regex_create and
then it uses it for further allocation during dm_regex_match. This
could be dangerous in case we used the same mempool for any other
allocations/frees in between dm_regex_create and dm_regex_match calls
in the outer code. This patch adds separate regex mempool for the
report/select to avoid the possible issues.
Peter Rajnoha [Mon, 24 Mar 2025 09:56:45 +0000 (10:56 +0100)]
libdm: report: select: default to subset if no grouping operator used
Previous patch made a proper difference between [...||...] and
[...&&...]. If the criterion for a string list does not use any [] or
{}, we need to make sure that proper matching function is called -
in this case not using {} or [] is the same as if {} was used
(matching subset).
Peter Rajnoha [Mon, 24 Mar 2025 12:53:23 +0000 (13:53 +0100)]
tests: select-report: adjust test for matching [...||...] in string lists
Peter Rajnoha [Wed, 19 Mar 2025 12:20:03 +0000 (13:20 +0100)]
libdm: report: select: fix string list match for [...||...] selection
Matching a string list criterion which had [... || ... ] was not
correctly implemented - it was the same as [ ... && ... ]. This patch
makes a difference between the two:
- [ ... || ... ] matches if all items from string list value are
matched by ANY item from selection string list (that is, not
all the selection string list items need to match)
- [ ... && ... ] matches if all items from string list value are
matched by an item from selection string list 1:1 (that is,
all the selection string list items need to match)
Peter Rajnoha [Tue, 18 Mar 2025 08:27:57 +0000 (09:27 +0100)]
libdm: report: select: remove superfluous struct reserved_value_wrapper param
Remove superfluous struct reserved_value_wrapper param for
_tok_value_regex function. The only thing that _tok_value did was
zeroing the reserve field within the struct. But this one is already
zero-initialied in outer _parse_selection function.
Peter Rajnoha [Wed, 19 Mar 2025 11:23:27 +0000 (12:23 +0100)]
libdm: report: select: make internal errors related to incorrect field types clearer
Peter Rajnoha [Wed, 19 Mar 2025 10:46:05 +0000 (11:46 +0100)]
libdm: report: select: also log function name for internal errors
Peter Rajnoha [Mon, 17 Mar 2025 12:30:41 +0000 (13:30 +0100)]
libdm: report: select: add/edit comments for parser
Peter Rajnoha [Mon, 17 Mar 2025 11:53:07 +0000 (12:53 +0100)]
libdm: report: select: move regex handling under common value token parsing
This is a cleanup and a preparation for adding support for regex matching
in string lists in subsequent patches.
David Teigland [Mon, 17 Mar 2025 16:49:54 +0000 (11:49 -0500)]
tests: fix metadata-old with lvmlockd_test
Zdenek Kabelac [Mon, 17 Mar 2025 12:52:03 +0000 (13:52 +0100)]
make: generate
Zdenek Kabelac [Sun, 16 Mar 2025 12:21:58 +0000 (13:21 +0100)]
WHATS_NEW: updates
Zdenek Kabelac [Mon, 3 Mar 2025 17:59:32 +0000 (18:59 +0100)]
man: indent with command
Avoid spaces showing as the 1st. character on the man page line.
Also start with actual text and move .IP sequence to the line end.
Zdenek Kabelac [Tue, 4 Mar 2025 23:14:44 +0000 (00:14 +0100)]
makefile: rebuild man when see_also changes
Missed rebuild dependency, when see_also file changes.
Zdenek Kabelac [Sun, 16 Mar 2025 10:31:57 +0000 (11:31 +0100)]
makefile: cleanup tab
Zdenek Kabelac [Sun, 16 Mar 2025 12:17:13 +0000 (13:17 +0100)]
tests: don't restart lvmdbusd
Since lvmdbusd execution of lvm2 command was fixed
stop retrying to restart lvmdbuds and abort testig
when it fails.
Zdenek Kabelac [Sat, 15 Mar 2025 21:08:02 +0000 (22:08 +0100)]
lvm: option description only for man generator
There is no need to include option description text
within command binary itself.
It's only used only for man generating.
Zdenek Kabelac [Tue, 4 Mar 2025 23:36:26 +0000 (00:36 +0100)]
man: fixes in argument description
Describe missed --segments opt for lvdisplay (matches lvs).
Describe lvm-fullreport --all option - show text for lvs,vgs,pvs.
Missed '.' for --separator.
Zdenek Kabelac [Sun, 16 Mar 2025 12:11:54 +0000 (13:11 +0100)]
lvmdbusd: ensure readout on exit
Zdenek Kabelac [Tue, 11 Mar 2025 10:20:37 +0000 (11:20 +0100)]
cache: ensure UUID ends with \0
Initialization of union is somewhat tricky as it initialize only
the first member + padding, but in our case this does not clear
the whole size of union so explicitly set \0 after 2 'struct id'
and make sure DM uuid is not using random characters from stack.
Also add explicit .id designators (c99).
David Teigland [Thu, 6 Mar 2025 16:51:52 +0000 (10:51 -0600)]
metadata: replace pv status WRONG_VG with pv bit field
Avoid any special meaning associated with the status field.
David Teigland [Thu, 6 Mar 2025 16:02:29 +0000 (10:02 -0600)]
lvmcache: unpair wrong PV devs and improve duplicate name warnings
After detecting that a VG has wrongly claimed a PV, unpair
the pv->dev setting. This will cause the usual "missing PV"
message to appear for that VG. Make this message, and some
others, clearer by using the VGID rather than the VG name
when there are multiple VGs with the same name.
David Teigland [Wed, 5 Mar 2025 22:03:42 +0000 (16:03 -0600)]
lvmcache: fix check for no pvid
David Teigland [Wed, 5 Mar 2025 18:08:38 +0000 (12:08 -0600)]
lvmcache: add WRONG_VG PV status flag
_vg_read() calls lvmcache_update_vg_from_read() which detects
that the VG metadata is incorrectly claiming the PV. Flag this
condition in the PV status as WRONG_VG. Later, vg_read() can
simply check the WRONG_VG flag rather than repeating the same
PV/VG checks that were already done in lvmcache_update_vg_from_read.
David Teigland [Tue, 4 Mar 2025 20:11:54 +0000 (14:11 -0600)]
lvmcache: ignore incorrect PV claim from old metadata
Outdated VG metadata that appears when an old device is attached
to the system can result in PVs appearing to belong to the
old/wrong VG, and commands are allowed to use (corrupt) the PVs.
- vgcreate old /dev/sda /dev/sdb /dev/sdc
- offline /dev/sda
- vgreduce --removemissing old
- vgremove old
- vgcreate new /dev/sdb /dev/sdc
- online /dev/sda
When sda is reattached, sdb and sdc will appear to be
in VG old again. An attempt to correct the problem,
e.g. with vgremove old or vgreduce old, would modify
sdb and sdc, removing them from the new VG.
To fix this, check that sdb and sdc contain metadata for
VG old before allowing VG old to claim ownership of them.
With the fix, sdb and sdc are not displayed as part of
VG old, and commands to change VG old will fail as long
as it references incorrect PVs.
To fix VG old (sda), remove the incorrect PVs from VG old
while limiting the command to see only the correct PVs:
vgreduce --removemissing --devices /dev/sda old
David Teigland [Mon, 3 Mar 2025 16:27:04 +0000 (11:27 -0500)]
integrity: round meta size up to minimum one extent
If VG extents are larger than the required integrity metadata size,
use one extent as the size.
David Teigland [Mon, 3 Mar 2025 16:05:04 +0000 (11:05 -0500)]
lvmlockd: add helpful error message for vgremove
Print a helpful error message when the lockspace is not started.
David Teigland [Thu, 27 Feb 2025 16:04:47 +0000 (10:04 -0600)]
pvresize: accept autobackup option
Marian Csontos [Thu, 27 Feb 2025 15:53:55 +0000 (16:53 +0100)]
doc: Update metadata on 2.03.31 release notes
Marian Csontos [Thu, 27 Feb 2025 15:51:29 +0000 (16:51 +0100)]
post-release
Marian Csontos [Thu, 27 Feb 2025 15:51:29 +0000 (16:51 +0100)]
pre-release 2.03.31
Marian Csontos [Thu, 27 Feb 2025 15:49:34 +0000 (16:49 +0100)]
doc: WHATS_NEW and release note update
Marian Csontos [Tue, 14 Jan 2025 20:15:42 +0000 (21:15 +0100)]
doc: Apply markdown formatting
Eric Blake [Tue, 25 Feb 2025 22:30:06 +0000 (16:30 -0600)]
misc: Typo fix s/loose/lose/
Signed-off-by: Eric Blake <eblake@redhat.com>
Eric Blake [Tue, 25 Feb 2025 22:30:06 +0000 (16:30 -0600)]
misc: Typo fix s/more then/more than/
Also a few instances of s/less then/less than/.
Signed-off-by: Eric Blake <eblake@redhat.com>
Zdenek Kabelac [Tue, 25 Feb 2025 15:35:45 +0000 (16:35 +0100)]
WHATS_NEW: update
Zdenek Kabelac [Tue, 25 Feb 2025 15:16:43 +0000 (16:16 +0100)]
make: generate
Zdenek Kabelac [Wed, 26 Feb 2025 00:16:47 +0000 (01:16 +0100)]
test: check LVM_SUPPRESS_FD_WARNINGS
Add test for suppression messages about leaked descriptors.
Zdenek Kabelac [Wed, 26 Feb 2025 00:25:25 +0000 (01:25 +0100)]
lvmlockd: drop return from void function
Zdenek Kabelac [Tue, 25 Feb 2025 13:51:20 +0000 (14:51 +0100)]
man: update generator code
Generate pages more complaint with 'mandoc -T lint'
Remove some generated space on EOL.
Replace .ad l with .na macro.
Remove some .br duplicates.
Zdenek Kabelac [Tue, 25 Feb 2025 23:20:10 +0000 (00:20 +0100)]
man: reformat args.h to fit in 80 lines
Compliance to mandoc -T lint to fit lines into 80 chars
in generated man pages.
Zdenek Kabelac [Tue, 25 Feb 2025 13:00:07 +0000 (14:00 +0100)]
man: updates
Updates for 'mandot -T lint'
Fit lines into 80 characters.
Use .na .ad instead of .ad l .ad b
Remove some misplaced .P & .br
Trim spaces for EOL.
Jack Wilsdon [Thu, 17 Oct 2024 19:38:41 +0000 (20:38 +0100)]
libdaemon: fix suppressing stray fd warnings
Restore support for LVM_SUPPRESS_FD_WARNINGS as
this was seemingly lost with refactoring to
use daemon_close_stray_fds().
David Teigland [Tue, 18 Feb 2025 23:22:52 +0000 (17:22 -0600)]
uncache and splitcache should restore inactive state
If an inactive LV is being cached in writeback mode, then
removing the cache does a temporary activation to flush
the cache back to the main LV. However, it forgot to
deactivate the LV again, so the temporary activation
was left in place.
David Teigland [Tue, 18 Feb 2025 23:04:44 +0000 (17:04 -0600)]
lvmlockd: add debug line
David Teigland [Mon, 27 Jan 2025 22:17:10 +0000 (16:17 -0600)]
lvmlockd: expand lockopt skip options
The lockopt options for skipping locks were not being used
in many places, making it impossible to override locking to
forcibly run some commands.
Zdenek Kabelac [Mon, 24 Feb 2025 23:29:19 +0000 (00:29 +0100)]
test: result is some for lvmpolld
Drop 'TEST WARNING' from this case - the code works the same
were for 'pvmove -b' polling as for lvmpolld.
Just keep there 'TODO' notice we want to eventually reduce amount
of 'worked' pvmove monitoring process - ATM there will be 1 per LV.
Salvatore Bonaccorso [Wed, 19 Feb 2025 12:04:34 +0000 (13:04 +0100)]
man: clarify --stripes number of device
The current manpage is unclear in the example of a raid10 type LV RAID
with --mirrors 1 --stripes 4. The number of devices in each raid1 mirror
is NumberStripes/(NumberMirrors+1). Thus the example should read:
e.g. mirrors 1 and stripes 4 will stripe data across two raid1
mirrors, where each mirror contains two devices.
Fixes: https://gitlab.com/lvmteam/lvm2/-/issues/26
Signed-off-by: Salvatore Bonaccorso <carnil@debian.org>
Dion Bosschieter [Thu, 13 Feb 2025 14:06:25 +0000 (15:06 +0100)]
man: fix grammar in lvmlockd.8_main
Remove redundant 'the' in 'When the another VG'.
Signed-off-by: Dion Bosschieter <dionbosschieter@gmail.com>
Tyler Clark [Tue, 14 Jan 2025 02:14:42 +0000 (21:14 -0500)]
man: removing duplicate words in man pages.
This patch removes some sequentially duplicated words in a few man pages.
Zdenek Kabelac [Mon, 24 Feb 2025 23:47:05 +0000 (00:47 +0100)]
clang: match prototype
Zdenek Kabelac [Mon, 24 Feb 2025 23:30:11 +0000 (00:30 +0100)]
cov: some missed arg_is_set changes
Zdenek Kabelac [Mon, 24 Feb 2025 23:31:03 +0000 (00:31 +0100)]
lvconvert: validate mirror image counting
Since _failed_mirrors_count() may eventually return -1,
add extra validation before using returned count.
Zdenek Kabelac [Mon, 24 Feb 2025 23:28:33 +0000 (00:28 +0100)]
thin: fix checking monitor mode
Previous commit
874a8ab4d02a59c5 missed 'IGNORE' mode.
Fix it by adding rather 'explicit' test for this value,
so the code is better readable.
Also unlock memory earlier and drop unneeded <backtrace>
from return since we already logged error in this function.
David Teigland [Mon, 24 Feb 2025 22:36:01 +0000 (16:36 -0600)]
lvmlockd: fix missing lvremove free_lv
Fix missing lockd_free_lv in commit
e3f0af8f1fd7 lvmlockd: fixes for lvremove
This page took 0.10502 seconds and 5 git commands to generate.