import UBI lvm2-2.03.14-14.el8
This commit is contained in:
parent
d25b3eb897
commit
a1b8217005
25
SOURCES/0118-man-Fix-typo.patch
Normal file
25
SOURCES/0118-man-Fix-typo.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From cf7e7e0041b1f92ad3e9e8f1d7fb24c4ba5949e9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Marian Csontos <mcsontos@redhat.com>
|
||||||
|
Date: Wed, 31 Jan 2024 18:48:24 +0100
|
||||||
|
Subject: [PATCH 01/12] man: Fix typo
|
||||||
|
|
||||||
|
---
|
||||||
|
man/lvmcache.7_main | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/man/lvmcache.7_main b/man/lvmcache.7_main
|
||||||
|
index 519e352cb..824f24e91 100644
|
||||||
|
--- a/man/lvmcache.7_main
|
||||||
|
+++ b/man/lvmcache.7_main
|
||||||
|
@@ -252,7 +252,7 @@ when selecting the writecache cachevol size and the writecache block size.
|
||||||
|
.P
|
||||||
|
.IP \[bu] 2
|
||||||
|
writecache block size 4096: each 100 GiB of writecache cachevol uses
|
||||||
|
-slighly over 2 GiB of system memory.
|
||||||
|
+slightly over 2 GiB of system memory.
|
||||||
|
.IP \[bu] 2
|
||||||
|
writecache block size 512: each 100 GiB of writecache cachevol uses
|
||||||
|
a little over 16 GiB of system memory.
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
649
SOURCES/0119-doc-fix-typos-in-documentation.patch
Normal file
649
SOURCES/0119-doc-fix-typos-in-documentation.patch
Normal file
@ -0,0 +1,649 @@
|
|||||||
|
From 3d6f6b58f6426dfcbfa59de90b47f0bbd46759e7 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Samanta Navarro <ferivoz@riseup.net>
|
||||||
|
Date: Fri, 30 Dec 2022 11:52:49 +0000
|
||||||
|
Subject: [PATCH 02/12] doc: fix typos in documentation
|
||||||
|
|
||||||
|
Typos found with codespell.
|
||||||
|
|
||||||
|
(cherry picked from commit aec5e573afe610070eb2c6bed675d2a7c0efc7e8)
|
||||||
|
---
|
||||||
|
TESTING | 2 +-
|
||||||
|
conf/example.conf.in | 12 ++++++------
|
||||||
|
doc/kernel/cache-policies.txt | 2 +-
|
||||||
|
doc/kernel/crypt.txt | 4 ++--
|
||||||
|
doc/kernel/integrity.txt | 2 +-
|
||||||
|
doc/kernel/verity.txt | 2 +-
|
||||||
|
doc/lvm2-raid.txt | 10 +++++-----
|
||||||
|
doc/lvm_fault_handling.txt | 10 +++++-----
|
||||||
|
doc/lvmpolld_overview.txt | 2 +-
|
||||||
|
doc/tagging.txt | 2 +-
|
||||||
|
doc/udev_assembly.txt | 2 +-
|
||||||
|
libdm/make.tmpl.in | 2 +-
|
||||||
|
make.tmpl.in | 2 +-
|
||||||
|
man/dmeventd.8_main | 6 +++---
|
||||||
|
man/dmsetup.8_main | 2 +-
|
||||||
|
man/dmstats.8_main | 24 ++++++++++++------------
|
||||||
|
man/lvchange.8_pregen | 2 +-
|
||||||
|
man/lvconvert.8_des | 2 +-
|
||||||
|
man/lvconvert.8_pregen | 2 +-
|
||||||
|
man/lvcreate.8_pregen | 2 +-
|
||||||
|
man/lvmcache.7_main | 8 ++++----
|
||||||
|
man/lvmdevices.8_des | 2 +-
|
||||||
|
man/lvmdevices.8_pregen | 2 +-
|
||||||
|
man/lvmreport.7_main | 6 +++---
|
||||||
|
man/vgcfgrestore.8_des | 2 +-
|
||||||
|
man/vgcfgrestore.8_pregen | 2 +-
|
||||||
|
man/vgchange.8_pregen | 2 +-
|
||||||
|
udev/69-dm-lvm-metad.rules.in | 2 +-
|
||||||
|
28 files changed, 60 insertions(+), 60 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/TESTING b/TESTING
|
||||||
|
index 57932f56a..3c1e3afc6 100644
|
||||||
|
--- a/TESTING
|
||||||
|
+++ b/TESTING
|
||||||
|
@@ -24,7 +24,7 @@ You MUST disable (or mask) any LVM daemons:
|
||||||
|
For running cluster tests, we are using singlenode locking. Pass
|
||||||
|
`--with-clvmd=singlenode` to configure.
|
||||||
|
|
||||||
|
-NOTE: This is useful only for testing, and should not be used in produciton
|
||||||
|
+NOTE: This is useful only for testing, and should not be used in production
|
||||||
|
code.
|
||||||
|
|
||||||
|
To run D-Bus daemon tests, existing D-Bus session is required.
|
||||||
|
diff --git a/conf/example.conf.in b/conf/example.conf.in
|
||||||
|
index d5af25061..bb2e60ace 100644
|
||||||
|
--- a/conf/example.conf.in
|
||||||
|
+++ b/conf/example.conf.in
|
||||||
|
@@ -752,7 +752,7 @@ allocation {
|
||||||
|
# vdo_max_discard = 1
|
||||||
|
|
||||||
|
# Configuration option allocation/vdo_pool_header_size.
|
||||||
|
- # Specified the emptry header size in KiB at the front and end of vdo pool device.
|
||||||
|
+ # Specified the empty header size in KiB at the front and end of vdo pool device.
|
||||||
|
# This configuration option has an automatic default value.
|
||||||
|
# vdo_pool_header_size = 512
|
||||||
|
}
|
||||||
|
@@ -931,7 +931,7 @@ backup {
|
||||||
|
# archive = 1
|
||||||
|
|
||||||
|
# Configuration option backup/archive_dir.
|
||||||
|
- # Location of the metdata archive files.
|
||||||
|
+ # Location of the metadata archive files.
|
||||||
|
# Remember to back up this directory regularly!
|
||||||
|
# This configuration option has an automatic default value.
|
||||||
|
# archive_dir = "@DEFAULT_SYS_DIR@/@DEFAULT_ARCHIVE_SUBDIR@"
|
||||||
|
@@ -1463,13 +1463,13 @@ activation {
|
||||||
|
|
||||||
|
# Configuration option activation/reserved_stack.
|
||||||
|
# Stack size in KiB to reserve for use while devices are suspended.
|
||||||
|
- # Insufficent reserve risks I/O deadlock during device suspension.
|
||||||
|
+ # Insufficient reserve risks I/O deadlock during device suspension.
|
||||||
|
# This configuration option has an automatic default value.
|
||||||
|
# reserved_stack = 64
|
||||||
|
|
||||||
|
# Configuration option activation/reserved_memory.
|
||||||
|
# Memory size in KiB to reserve for use while devices are suspended.
|
||||||
|
- # Insufficent reserve risks I/O deadlock during device suspension.
|
||||||
|
+ # Insufficient reserve risks I/O deadlock during device suspension.
|
||||||
|
# This configuration option has an automatic default value.
|
||||||
|
# reserved_memory = 8192
|
||||||
|
|
||||||
|
@@ -1604,7 +1604,7 @@ activation {
|
||||||
|
# This includes LVs that have the following segment types:
|
||||||
|
# raid1, raid4, raid5*, and raid6*.
|
||||||
|
# If a device in the LV fails, the policy determines the steps
|
||||||
|
- # performed by dmeventd automatically, and the steps perfomed by the
|
||||||
|
+ # performed by dmeventd automatically, and the steps performed by the
|
||||||
|
# manual command lvconvert --repair --use-policies.
|
||||||
|
# Automatic handling requires dmeventd to be monitoring the LV.
|
||||||
|
#
|
||||||
|
@@ -1628,7 +1628,7 @@ activation {
|
||||||
|
# (copies) and a mirror log. A disk log ensures that a mirror LV does
|
||||||
|
# not need to be re-synced (all copies made the same) every time a
|
||||||
|
# machine reboots or crashes. If a device in the LV fails, this policy
|
||||||
|
- # determines the steps perfomed by dmeventd automatically, and the steps
|
||||||
|
+ # determines the steps performed by dmeventd automatically, and the steps
|
||||||
|
# performed by the manual command lvconvert --repair --use-policies.
|
||||||
|
# Automatic handling requires dmeventd to be monitoring the LV.
|
||||||
|
#
|
||||||
|
diff --git a/doc/kernel/cache-policies.txt b/doc/kernel/cache-policies.txt
|
||||||
|
index d3ca8af21..1436dbc6e 100644
|
||||||
|
--- a/doc/kernel/cache-policies.txt
|
||||||
|
+++ b/doc/kernel/cache-policies.txt
|
||||||
|
@@ -67,7 +67,7 @@ the entries (each hotspot block covers a larger area than a single
|
||||||
|
cache block).
|
||||||
|
|
||||||
|
All this means smq uses ~25bytes per cache block. Still a lot of
|
||||||
|
-memory, but a substantial improvement nontheless.
|
||||||
|
+memory, but a substantial improvement nonetheless.
|
||||||
|
|
||||||
|
Level balancing:
|
||||||
|
mq placed entries in different levels of the multiqueue structures
|
||||||
|
diff --git a/doc/kernel/crypt.txt b/doc/kernel/crypt.txt
|
||||||
|
index 3b3e1de21..df18572f9 100644
|
||||||
|
--- a/doc/kernel/crypt.txt
|
||||||
|
+++ b/doc/kernel/crypt.txt
|
||||||
|
@@ -35,7 +35,7 @@ Parameters: <cipher> <key> <iv_offset> <device path> \
|
||||||
|
capi:authenc(hmac(sha256),xts(aes))-random
|
||||||
|
capi:rfc7539(chacha20,poly1305)-random
|
||||||
|
|
||||||
|
- The /proc/crypto contains a list of curently loaded crypto modes.
|
||||||
|
+ The /proc/crypto contains a list of currently loaded crypto modes.
|
||||||
|
|
||||||
|
<key>
|
||||||
|
Key used for encryption. It is encoded either as a hexadecimal number
|
||||||
|
@@ -81,7 +81,7 @@ Parameters: <cipher> <key> <iv_offset> <device path> \
|
||||||
|
|
||||||
|
<#opt_params>
|
||||||
|
Number of optional parameters. If there are no optional parameters,
|
||||||
|
- the optional paramaters section can be skipped or #opt_params can be zero.
|
||||||
|
+ the optional parameters section can be skipped or #opt_params can be zero.
|
||||||
|
Otherwise #opt_params is the number of following arguments.
|
||||||
|
|
||||||
|
Example of optional parameters section:
|
||||||
|
diff --git a/doc/kernel/integrity.txt b/doc/kernel/integrity.txt
|
||||||
|
index 03a3b956a..0822de802 100644
|
||||||
|
--- a/doc/kernel/integrity.txt
|
||||||
|
+++ b/doc/kernel/integrity.txt
|
||||||
|
@@ -120,7 +120,7 @@ journal_crypt:algorithm(:key) (the key is optional)
|
||||||
|
"salsa20", "ctr(aes)" or "ecb(arc4)").
|
||||||
|
|
||||||
|
The journal contains history of last writes to the block device,
|
||||||
|
- an attacker reading the journal could see the last sector nubmers
|
||||||
|
+ an attacker reading the journal could see the last sector numbers
|
||||||
|
that were written. From the sector numbers, the attacker can infer
|
||||||
|
the size of files that were written. To protect against this
|
||||||
|
situation, you can encrypt the journal.
|
||||||
|
diff --git a/doc/kernel/verity.txt b/doc/kernel/verity.txt
|
||||||
|
index 89fd8f9a2..9822f1d61 100644
|
||||||
|
--- a/doc/kernel/verity.txt
|
||||||
|
+++ b/doc/kernel/verity.txt
|
||||||
|
@@ -65,7 +65,7 @@ Construction Parameters
|
||||||
|
|
||||||
|
<#opt_params>
|
||||||
|
Number of optional parameters. If there are no optional parameters,
|
||||||
|
- the optional paramaters section can be skipped or #opt_params can be zero.
|
||||||
|
+ the optional parameters section can be skipped or #opt_params can be zero.
|
||||||
|
Otherwise #opt_params is the number of following arguments.
|
||||||
|
|
||||||
|
Example of optional parameters section:
|
||||||
|
diff --git a/doc/lvm2-raid.txt b/doc/lvm2-raid.txt
|
||||||
|
index a6f091543..a3226f230 100644
|
||||||
|
--- a/doc/lvm2-raid.txt
|
||||||
|
+++ b/doc/lvm2-raid.txt
|
||||||
|
@@ -37,7 +37,7 @@ segment type. The available RAID types are:
|
||||||
|
"raid6_nr" - RAID6 Rotating parity N with data restart
|
||||||
|
"raid6_nc" - RAID6 Rotating parity N with data continuation
|
||||||
|
The exception to 'no shorthand options' will be where the RAID implementations
|
||||||
|
-can displace traditional tagets. This is the case with 'mirror' and 'raid1'.
|
||||||
|
+can displace traditional targets. This is the case with 'mirror' and 'raid1'.
|
||||||
|
In this case, "mirror_segtype_default" - found under the "global" section in
|
||||||
|
lvm.conf - can be set to "mirror" or "raid1". The segment type inferred when
|
||||||
|
the '-m' option is used will be taken from this setting. The default segment
|
||||||
|
@@ -104,7 +104,7 @@ and 4 devices for RAID 6/10.
|
||||||
|
|
||||||
|
lvconvert should work exactly as it does now when dealing with mirrors -
|
||||||
|
even if(when) we switch to MD RAID1. Of course, there are no plans to
|
||||||
|
-allow the presense of the metadata area to be configurable (e.g. --corelog).
|
||||||
|
+allow the presence of the metadata area to be configurable (e.g. --corelog).
|
||||||
|
It will be simple enough to detect if the LV being up/down-converted is
|
||||||
|
new or old-style mirroring.
|
||||||
|
|
||||||
|
@@ -120,7 +120,7 @@ RAID4 to RAID5 or RAID5 to RAID6.
|
||||||
|
Line 02/03/04:
|
||||||
|
These are familiar options - all of which would now be available as options
|
||||||
|
for change. (However, it'd be nice if we didn't have regionsize in there.
|
||||||
|
-It's simple on the kernel side, but is just an extra - often unecessary -
|
||||||
|
+It's simple on the kernel side, but is just an extra - often unnecessary -
|
||||||
|
parameter to many functions in the LVM codebase.)
|
||||||
|
|
||||||
|
Line 05:
|
||||||
|
@@ -375,8 +375,8 @@ the slot. Even the names of the images will be renamed to properly reflect
|
||||||
|
their index in the array. Unlike the "mirror" segment type, you will never have
|
||||||
|
an image named "*_rimage_1" occupying the index position 0.
|
||||||
|
|
||||||
|
-As with adding images, removing images holds off on commiting LVM metadata
|
||||||
|
-until all possible changes have been made. This reduces the likelyhood of bad
|
||||||
|
+As with adding images, removing images holds off on committing LVM metadata
|
||||||
|
+until all possible changes have been made. This reduces the likelihood of bad
|
||||||
|
intermediate stages being left due to a failure of operation or machine crash.
|
||||||
|
|
||||||
|
RAID1 '--splitmirrors', '--trackchanges', and '--merge' operations
|
||||||
|
diff --git a/doc/lvm_fault_handling.txt b/doc/lvm_fault_handling.txt
|
||||||
|
index 53b447eac..196b782db 100644
|
||||||
|
--- a/doc/lvm_fault_handling.txt
|
||||||
|
+++ b/doc/lvm_fault_handling.txt
|
||||||
|
@@ -87,7 +87,7 @@ are as follows:
|
||||||
|
/etc/lvm/lvm.conf. Once this operation is complete, the logical volumes
|
||||||
|
will be consistent. However, the volume group will still be inconsistent -
|
||||||
|
due to the refernced-but-missing device/PV - and operations will still be
|
||||||
|
- restricted to the aformentioned actions until either the device is
|
||||||
|
+ restricted to the aforementioned actions until either the device is
|
||||||
|
restored or 'vgreduce --removemissing' is run.
|
||||||
|
|
||||||
|
Device Revival (transient failures):
|
||||||
|
@@ -135,9 +135,9 @@ If a mirror is not 'in-sync', a read failure will produce an I/O error.
|
||||||
|
This error will propagate all the way up to the applications above the
|
||||||
|
logical volume (e.g. the file system). No automatic intervention will
|
||||||
|
take place in this case either. It is up to the user to decide what
|
||||||
|
-can be done/salvaged in this senario. If the user is confident that the
|
||||||
|
+can be done/salvaged in this scenario. If the user is confident that the
|
||||||
|
images of the mirror are the same (or they are willing to simply attempt
|
||||||
|
-to retreive whatever data they can), 'lvconvert' can be used to eliminate
|
||||||
|
+to retrieve whatever data they can), 'lvconvert' can be used to eliminate
|
||||||
|
the failed image and proceed.
|
||||||
|
|
||||||
|
Mirror resynchronization errors:
|
||||||
|
@@ -191,11 +191,11 @@ command are set in the LVM configuration file. They are:
|
||||||
|
3-way mirror fails, the mirror will be converted to a 2-way mirror.
|
||||||
|
The "allocate" policy takes the further action of trying to replace
|
||||||
|
the failed image using space that is available in the volume group.
|
||||||
|
- Replacing a failed mirror image will incure the cost of
|
||||||
|
+ Replacing a failed mirror image will incur the cost of
|
||||||
|
resynchronizing - degrading the performance of the mirror. The
|
||||||
|
default policy for handling an image failure is "remove". This
|
||||||
|
allows the mirror to still function, but gives the administrator the
|
||||||
|
- choice of when to incure the extra performance costs of replacing
|
||||||
|
+ choice of when to incur the extra performance costs of replacing
|
||||||
|
the failed image.
|
||||||
|
|
||||||
|
RAID logical volume device failures are handled differently from the "mirror"
|
||||||
|
diff --git a/doc/lvmpolld_overview.txt b/doc/lvmpolld_overview.txt
|
||||||
|
index 8c66e5e1a..ecff2eb81 100644
|
||||||
|
--- a/doc/lvmpolld_overview.txt
|
||||||
|
+++ b/doc/lvmpolld_overview.txt
|
||||||
|
@@ -63,7 +63,7 @@ classical snapshot merge, thin snapshot merge.
|
||||||
|
|
||||||
|
The second store is suited only for pvmove --abort operations in-progress. Both
|
||||||
|
stores are independent and identical LVs (pvmove /dev/sda3 and pvmove --abort /dev/sda3)
|
||||||
|
-can be run concurently from lvmpolld point of view (on lvm2 side the consistency is
|
||||||
|
+can be run concurrently from lvmpolld point of view (on lvm2 side the consistency is
|
||||||
|
guaranteed by lvm2 locking mechanism).
|
||||||
|
|
||||||
|
Locking order
|
||||||
|
diff --git a/doc/tagging.txt b/doc/tagging.txt
|
||||||
|
index b66e0ecd3..95ee02d83 100644
|
||||||
|
--- a/doc/tagging.txt
|
||||||
|
+++ b/doc/tagging.txt
|
||||||
|
@@ -126,7 +126,7 @@ Usage Examples
|
||||||
|
followed by 'vgchange -ay vg2'
|
||||||
|
|
||||||
|
|
||||||
|
- Option (ii) - localised admin & configuation
|
||||||
|
+ Option (ii) - localised admin & configuration
|
||||||
|
(i.e. each host holds *locally* which classes of volumes to activate)
|
||||||
|
# Add @database tag to vg1's metadata
|
||||||
|
vgchange --addtag @database vg1
|
||||||
|
diff --git a/doc/udev_assembly.txt b/doc/udev_assembly.txt
|
||||||
|
index 618640273..45af41209 100644
|
||||||
|
--- a/doc/udev_assembly.txt
|
||||||
|
+++ b/doc/udev_assembly.txt
|
||||||
|
@@ -35,7 +35,7 @@ VGs from PVs as they appear, and at the same time collect information on what is
|
||||||
|
already available. A command, pvscan --cache is expected to be used to
|
||||||
|
implement udev rules. It is relatively easy to make this command print out a
|
||||||
|
list of VGs (and possibly LVs) that have been made available by adding any
|
||||||
|
-particular device to the set of visible devices. In othe words, udev says "hey,
|
||||||
|
+particular device to the set of visible devices. In other words, udev says "hey,
|
||||||
|
/dev/sdb just appeared", calls pvscan --cache, which talks to lvmetad, which
|
||||||
|
says "cool, that makes vg0 complete". Pvscan takes this info and prints it out,
|
||||||
|
and the udev rule can then somehow decide whether anything needs to be done
|
||||||
|
diff --git a/libdm/make.tmpl.in b/libdm/make.tmpl.in
|
||||||
|
index a306101d5..1816bff55 100644
|
||||||
|
--- a/libdm/make.tmpl.in
|
||||||
|
+++ b/libdm/make.tmpl.in
|
||||||
|
@@ -248,7 +248,7 @@ endif
|
||||||
|
# end of fPIC protection
|
||||||
|
endif
|
||||||
|
|
||||||
|
-# Combination of DEBUG_POOL and DEBUG_ENFORCE_POOL_LOCKING is not suppored.
|
||||||
|
+# Combination of DEBUG_POOL and DEBUG_ENFORCE_POOL_LOCKING is not supported.
|
||||||
|
#DEFS += -DDEBUG_POOL
|
||||||
|
# Default pool locking is using the crc checksum. With mprotect memory
|
||||||
|
# enforcing compilation faulty memory write could be easily found.
|
||||||
|
diff --git a/make.tmpl.in b/make.tmpl.in
|
||||||
|
index cccda10d6..7799a8adb 100644
|
||||||
|
--- a/make.tmpl.in
|
||||||
|
+++ b/make.tmpl.in
|
||||||
|
@@ -281,7 +281,7 @@ ifeq ("@BUILD_DMEVENTD@", "yes")
|
||||||
|
CLDFLAGS += -L$(top_builddir)/daemons/dmeventd
|
||||||
|
endif
|
||||||
|
|
||||||
|
-# Combination of DEBUG_POOL and DEBUG_ENFORCE_POOL_LOCKING is not suppored.
|
||||||
|
+# Combination of DEBUG_POOL and DEBUG_ENFORCE_POOL_LOCKING is not supported.
|
||||||
|
#DEFS += -DDEBUG_POOL
|
||||||
|
# Default pool locking is using the crc checksum. With mprotect memory
|
||||||
|
# enforcing compilation faulty memory write could be easily found.
|
||||||
|
diff --git a/man/dmeventd.8_main b/man/dmeventd.8_main
|
||||||
|
index c03605d9c..77b07e4d8 100644
|
||||||
|
--- a/man/dmeventd.8_main
|
||||||
|
+++ b/man/dmeventd.8_main
|
||||||
|
@@ -103,7 +103,7 @@ when it's been filled above configured threshold
|
||||||
|
\fBactivation/thin_pool_autoextend_threshold\fP.
|
||||||
|
If the command fails, dmeventd thin plugin will keep
|
||||||
|
retrying execution with increasing time delay between
|
||||||
|
-retries upto 42 minutes.
|
||||||
|
+retries up to 42 minutes.
|
||||||
|
User may also configure external command to support more advanced
|
||||||
|
maintenance operations of a thin pool.
|
||||||
|
Such external command can e.g. remove some unneeded snapshots,
|
||||||
|
@@ -133,7 +133,7 @@ when it's been filled above the configured threshold
|
||||||
|
\fBactivation/vdo_pool_autoextend_threshold\fP.
|
||||||
|
If the command fails, dmeventd vdo plugin will keep
|
||||||
|
retrying execution with increasing time delay between
|
||||||
|
-retries upto 42 minutes.
|
||||||
|
+retries up to 42 minutes.
|
||||||
|
User may also configure external command to support more advanced
|
||||||
|
maintenance operations of a VDO pool.
|
||||||
|
Such external command can e.g. remove some unneeded space
|
||||||
|
@@ -166,7 +166,7 @@ actual usage of VDO pool data volume. Variable is not set when error event
|
||||||
|
is processed.
|
||||||
|
.TP
|
||||||
|
.B LVM_RUN_BY_DMEVENTD
|
||||||
|
-Variable is set by thin and vdo plugin to prohibit recursive interation
|
||||||
|
+Variable is set by thin and vdo plugin to prohibit recursive interaction
|
||||||
|
with dmeventd by any executed lvm2 command from
|
||||||
|
a thin_command, vdo_command environment.
|
||||||
|
.
|
||||||
|
diff --git a/man/dmsetup.8_main b/man/dmsetup.8_main
|
||||||
|
index 7576b54bc..1cafae017 100644
|
||||||
|
--- a/man/dmsetup.8_main
|
||||||
|
+++ b/man/dmsetup.8_main
|
||||||
|
@@ -572,7 +572,7 @@ See below for more information on the table format.
|
||||||
|
.B --udevcookie \fIcookie
|
||||||
|
Use cookie for udev synchronisation.
|
||||||
|
Note: Same cookie should be used for same type of operations i.e. creation of
|
||||||
|
-multiple different devices. It's not adviced to combine different
|
||||||
|
+multiple different devices. It's not advised to combine different
|
||||||
|
operations on the single device.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
diff --git a/man/dmstats.8_main b/man/dmstats.8_main
|
||||||
|
index bf492c554..6991071bb 100644
|
||||||
|
--- a/man/dmstats.8_main
|
||||||
|
+++ b/man/dmstats.8_main
|
||||||
|
@@ -292,7 +292,7 @@ region identifier.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
.B --area
|
||||||
|
-When peforming a list or report, include objects of type area in the
|
||||||
|
+When performing a list or report, include objects of type area in the
|
||||||
|
results.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
@@ -317,7 +317,7 @@ argument is zero reports will continue to repeat until interrupted.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
.B --group
|
||||||
|
-When peforming a list or report, include objects of type group in the
|
||||||
|
+When performing a list or report, include objects of type group in the
|
||||||
|
results.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
@@ -389,7 +389,7 @@ region as a comma separated list of latency values. Latency values are
|
||||||
|
given in nanoseconds. An optional unit suffix of
|
||||||
|
.BR ns , us , ms ,
|
||||||
|
or \fBs\fP may be given after each value to specify units of
|
||||||
|
-nanoseconds, microseconds, miliseconds or seconds respectively.
|
||||||
|
+nanoseconds, microseconds, milliseconds or seconds respectively.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
.B --histogram
|
||||||
|
@@ -456,7 +456,7 @@ default program ID for dmstats-managed regions is "dmstats".
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
.B --region
|
||||||
|
-When peforming a list or report, include objects of type region in the
|
||||||
|
+When performing a list or report, include objects of type region in the
|
||||||
|
results.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
@@ -530,7 +530,7 @@ Produce additional output.
|
||||||
|
.HP
|
||||||
|
.CMD_CLEAR
|
||||||
|
.br
|
||||||
|
-Instructs the kernel to clear statistics counters for the speficied
|
||||||
|
+Instructs the kernel to clear statistics counters for the specified
|
||||||
|
regions (with the exception of in-flight IO counters).
|
||||||
|
.
|
||||||
|
.HP
|
||||||
|
@@ -556,10 +556,10 @@ configured interval duration) on the final bin.
|
||||||
|
.sp
|
||||||
|
Latencies are given in nanoseconds. An optional unit suffix of ns, us,
|
||||||
|
ms, or s may be given after each value to specify units of nanoseconds,
|
||||||
|
-microseconds, miliseconds or seconds respectively, so for example, 10ms
|
||||||
|
+microseconds, milliseconds or seconds respectively, so for example, 10ms
|
||||||
|
is equivalent to 10000000. Latency values with a precision of less than
|
||||||
|
-one milisecond can only be used when precise timestamps are enabled: if
|
||||||
|
-\fB--precise\fP is not given and values less than one milisecond are
|
||||||
|
+one millisecond can only be used when precise timestamps are enabled: if
|
||||||
|
+\fB--precise\fP is not given and values less than one millisecond are
|
||||||
|
used it will be enabled automatically.
|
||||||
|
.sp
|
||||||
|
An optional \fBprogram_id\fP or \fBuser_data\fP string may be associated
|
||||||
|
@@ -627,7 +627,7 @@ group.
|
||||||
|
The list of regions to be grouped is specified with \fB--regions\fP
|
||||||
|
and an optional alias may be assigned with \fB--alias\fP. The set of
|
||||||
|
regions is given as a comma-separated list of region identifiers. A
|
||||||
|
-continuous range of identifers spanning from \fBR1\fP to \fBR2\fP may
|
||||||
|
+continuous range of identifiers spanning from \fBR1\fP to \fBR2\fP may
|
||||||
|
be expressed as '\fBR1\fP-\fBR2\fP'.
|
||||||
|
.sp
|
||||||
|
Regions that have a histogram configured can be grouped: in this case
|
||||||
|
@@ -711,7 +711,7 @@ that were previously created with \fB--filemap\fP, either directly,
|
||||||
|
or by starting the monitoring daemon, \fBdmfilemapd\fP.
|
||||||
|
.sp
|
||||||
|
This will add and remove regions to reflect changes in the allocated
|
||||||
|
-extents of the file on-disk, since the time that it was crated or last
|
||||||
|
+extents of the file on-disk, since the time that it was created or last
|
||||||
|
updated.
|
||||||
|
.sp
|
||||||
|
Use of this command is not normally needed since the \fBdmfilemapd\fP
|
||||||
|
@@ -1090,13 +1090,13 @@ bounds.
|
||||||
|
.B hist_bounds
|
||||||
|
A list of the histogram boundary values for the current statistics area
|
||||||
|
in order of ascending latency value. The values are expressed in whole
|
||||||
|
-units of seconds, miliseconds, microseconds or nanoseconds with a suffix
|
||||||
|
+units of seconds, milliseconds, microseconds or nanoseconds with a suffix
|
||||||
|
indicating the unit.
|
||||||
|
.TP
|
||||||
|
.B hist_ranges
|
||||||
|
A list of the histogram bin ranges for the current statistics area in
|
||||||
|
order of ascending latency value. The values are expressed as
|
||||||
|
-"LOWER-UPPER" in whole units of seconds, miliseconds, microseconds or
|
||||||
|
+"LOWER-UPPER" in whole units of seconds, milliseconds, microseconds or
|
||||||
|
nanoseconds with a suffix indicating the unit.
|
||||||
|
.TP
|
||||||
|
.B hist_bins
|
||||||
|
diff --git a/man/lvchange.8_pregen b/man/lvchange.8_pregen
|
||||||
|
index 27bee0f14..4e0a8bf70 100644
|
||||||
|
--- a/man/lvchange.8_pregen
|
||||||
|
+++ b/man/lvchange.8_pregen
|
||||||
|
@@ -744,7 +744,7 @@ See \fBlvmraid\fP(7) for more information.
|
||||||
|
.br
|
||||||
|
Start (yes) or stop (no) monitoring an LV with dmeventd.
|
||||||
|
dmeventd monitors kernel events for an LV, and performs
|
||||||
|
-automated maintenance for the LV in reponse to specific events.
|
||||||
|
+automated maintenance for the LV in response to specific events.
|
||||||
|
See \fBdmeventd\fP(8) for more information.
|
||||||
|
.
|
||||||
|
.HP
|
||||||
|
diff --git a/man/lvconvert.8_des b/man/lvconvert.8_des
|
||||||
|
index f36135f21..1bc3dfa11 100644
|
||||||
|
--- a/man/lvconvert.8_des
|
||||||
|
+++ b/man/lvconvert.8_des
|
||||||
|
@@ -23,7 +23,7 @@ The
|
||||||
|
type is equivalent to the
|
||||||
|
.B striped
|
||||||
|
type when one stripe exists.
|
||||||
|
-In that case, the types can sometimes be used interchangably.
|
||||||
|
+In that case, the types can sometimes be used interchangeably.
|
||||||
|
.P
|
||||||
|
In most cases, the
|
||||||
|
.B mirror
|
||||||
|
diff --git a/man/lvconvert.8_pregen b/man/lvconvert.8_pregen
|
||||||
|
index fa52da55c..f1d0d0256 100644
|
||||||
|
--- a/man/lvconvert.8_pregen
|
||||||
|
+++ b/man/lvconvert.8_pregen
|
||||||
|
@@ -196,7 +196,7 @@ The
|
||||||
|
type is equivalent to the
|
||||||
|
.B striped
|
||||||
|
type when one stripe exists.
|
||||||
|
-In that case, the types can sometimes be used interchangably.
|
||||||
|
+In that case, the types can sometimes be used interchangeably.
|
||||||
|
.P
|
||||||
|
In most cases, the
|
||||||
|
.B mirror
|
||||||
|
diff --git a/man/lvcreate.8_pregen b/man/lvcreate.8_pregen
|
||||||
|
index 0ffe92a94..5416b9c2f 100644
|
||||||
|
--- a/man/lvcreate.8_pregen
|
||||||
|
+++ b/man/lvcreate.8_pregen
|
||||||
|
@@ -1175,7 +1175,7 @@ See \fBlvmraid\fP(7) for more information.
|
||||||
|
.br
|
||||||
|
Start (yes) or stop (no) monitoring an LV with dmeventd.
|
||||||
|
dmeventd monitors kernel events for an LV, and performs
|
||||||
|
-automated maintenance for the LV in reponse to specific events.
|
||||||
|
+automated maintenance for the LV in response to specific events.
|
||||||
|
See \fBdmeventd\fP(8) for more information.
|
||||||
|
.
|
||||||
|
.HP
|
||||||
|
diff --git a/man/lvmcache.7_main b/man/lvmcache.7_main
|
||||||
|
index 824f24e91..a139062d1 100644
|
||||||
|
--- a/man/lvmcache.7_main
|
||||||
|
+++ b/man/lvmcache.7_main
|
||||||
|
@@ -73,7 +73,7 @@ using dm-writecache (with cachevol):
|
||||||
|
.P
|
||||||
|
# lvconvert --type writecache --cachevol fast vg/main
|
||||||
|
.P
|
||||||
|
-For more alteratives see:
|
||||||
|
+For more alternatives see:
|
||||||
|
.br
|
||||||
|
dm-cache command shortcut
|
||||||
|
.br
|
||||||
|
@@ -286,11 +286,11 @@ read requests.
|
||||||
|
.TP
|
||||||
|
autocommit_blocks = <count>
|
||||||
|
When the application writes this amount of blocks without issuing the
|
||||||
|
-FLUSH request, the blocks are automatically commited.
|
||||||
|
+FLUSH request, the blocks are automatically committed.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
autocommit_time = <milliseconds>
|
||||||
|
-The data is automatically commited if this time passes and no FLUSH
|
||||||
|
+The data is automatically committed if this time passes and no FLUSH
|
||||||
|
request is received.
|
||||||
|
.
|
||||||
|
.TP
|
||||||
|
@@ -403,7 +403,7 @@ cache, in which small reads and writes cause large sections of an LV to be
|
||||||
|
stored in the cache. It can also require increasing migration threshold
|
||||||
|
which defaults to 2048 sectors (1 MiB). Lvm2 ensures migration threshold is
|
||||||
|
at least 8 chunks in size. This may in some cases result in very
|
||||||
|
-high bandwidth load of transfering data between the cache LV and its
|
||||||
|
+high bandwidth load of transferring data between the cache LV and its
|
||||||
|
cache origin LV. However, choosing a chunk size that is too small
|
||||||
|
can result in more overhead trying to manage the numerous chunks that
|
||||||
|
become mapped into the cache. Overhead can include both excessive CPU
|
||||||
|
diff --git a/man/lvmdevices.8_des b/man/lvmdevices.8_des
|
||||||
|
index 2335456ad..ed24d4cd4 100644
|
||||||
|
--- a/man/lvmdevices.8_des
|
||||||
|
+++ b/man/lvmdevices.8_des
|
||||||
|
@@ -95,7 +95,7 @@ is used for loop devices, the backing file name repored by sysfs.
|
||||||
|
the device name is used if no other type applies.
|
||||||
|
.P
|
||||||
|
|
||||||
|
-The default choice for device ID type can be overriden using lvmdevices
|
||||||
|
+The default choice for device ID type can be overridden using lvmdevices
|
||||||
|
--addev --deviceidtype <type>. If the specified type is available for the
|
||||||
|
device it will be used, otherwise the device will be added using the type
|
||||||
|
that would otherwise be chosen.
|
||||||
|
diff --git a/man/lvmdevices.8_pregen b/man/lvmdevices.8_pregen
|
||||||
|
index a2397e50f..e782596d0 100644
|
||||||
|
--- a/man/lvmdevices.8_pregen
|
||||||
|
+++ b/man/lvmdevices.8_pregen
|
||||||
|
@@ -162,7 +162,7 @@ is used for loop devices, the backing file name repored by sysfs.
|
||||||
|
the device name is used if no other type applies.
|
||||||
|
.P
|
||||||
|
|
||||||
|
-The default choice for device ID type can be overriden using lvmdevices
|
||||||
|
+The default choice for device ID type can be overridden using lvmdevices
|
||||||
|
--addev --deviceidtype <type>. If the specified type is available for the
|
||||||
|
device it will be used, otherwise the device will be added using the type
|
||||||
|
that would otherwise be chosen.
|
||||||
|
diff --git a/man/lvmreport.7_main b/man/lvmreport.7_main
|
||||||
|
index f0f04ad1c..021089951 100644
|
||||||
|
--- a/man/lvmreport.7_main
|
||||||
|
+++ b/man/lvmreport.7_main
|
||||||
|
@@ -1197,7 +1197,7 @@ But let's still use the original "," character for list_item_separator
|
||||||
|
for subsequent examples.
|
||||||
|
.P
|
||||||
|
Format for any of time values displayed in reports can be configured with
|
||||||
|
-\fBreport/time_format\fP configuretion setting. By default complete date
|
||||||
|
+\fBreport/time_format\fP configuration setting. By default complete date
|
||||||
|
and time is displayed, including timezone.
|
||||||
|
.P
|
||||||
|
.nf
|
||||||
|
@@ -1302,9 +1302,9 @@ binary_values_as_numeric=1
|
||||||
|
.SS Changing output format
|
||||||
|
.
|
||||||
|
LVM can output reports in different formats - use \fBreport/output_format\fP
|
||||||
|
-configuration setting (or \fB--reportformat\fP command line option) to swith
|
||||||
|
+configuration setting (or \fB--reportformat\fP command line option) to switch
|
||||||
|
the report output format. Currently, LVM supports \fB"basic"\fP (all the examples
|
||||||
|
-we used above used this format) and \fB"JSON"\fP output format.
|
||||||
|
+we used above used this format) and \fB"json"\fP output format.
|
||||||
|
.P
|
||||||
|
.nf
|
||||||
|
# lvs -o lv_name,lv_size --reportformat json
|
||||||
|
diff --git a/man/vgcfgrestore.8_des b/man/vgcfgrestore.8_des
|
||||||
|
index dbc9aee16..10aa460c6 100644
|
||||||
|
--- a/man/vgcfgrestore.8_des
|
||||||
|
+++ b/man/vgcfgrestore.8_des
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
vgcfgrestore restores the metadata of a VG from a text back up file
|
||||||
|
produced by \fBvgcfgbackup\fP. This writes VG metadata onto the devices
|
||||||
|
-specifed in back up file.
|
||||||
|
+specified in back up file.
|
||||||
|
.P
|
||||||
|
A back up file can be specified with \fB--file\fP. If no backup file is
|
||||||
|
specified, the most recent one is used. Use \fB--list\fP for a list of
|
||||||
|
diff --git a/man/vgcfgrestore.8_pregen b/man/vgcfgrestore.8_pregen
|
||||||
|
index 6165cd36e..86e62c870 100644
|
||||||
|
--- a/man/vgcfgrestore.8_pregen
|
||||||
|
+++ b/man/vgcfgrestore.8_pregen
|
||||||
|
@@ -63,7 +63,7 @@ vgcfgrestore \(em Restore volume group configuration
|
||||||
|
.
|
||||||
|
vgcfgrestore restores the metadata of a VG from a text back up file
|
||||||
|
produced by \fBvgcfgbackup\fP. This writes VG metadata onto the devices
|
||||||
|
-specifed in back up file.
|
||||||
|
+specified in back up file.
|
||||||
|
.P
|
||||||
|
A back up file can be specified with \fB--file\fP. If no backup file is
|
||||||
|
specified, the most recent one is used. Use \fB--list\fP for a list of
|
||||||
|
diff --git a/man/vgchange.8_pregen b/man/vgchange.8_pregen
|
||||||
|
index 7c7030c0d..0e6bd7b24 100644
|
||||||
|
--- a/man/vgchange.8_pregen
|
||||||
|
+++ b/man/vgchange.8_pregen
|
||||||
|
@@ -670,7 +670,7 @@ See \fBlvm.conf\fP(5) for more information about profiles.
|
||||||
|
.br
|
||||||
|
Start (yes) or stop (no) monitoring an LV with dmeventd.
|
||||||
|
dmeventd monitors kernel events for an LV, and performs
|
||||||
|
-automated maintenance for the LV in reponse to specific events.
|
||||||
|
+automated maintenance for the LV in response to specific events.
|
||||||
|
See \fBdmeventd\fP(8) for more information.
|
||||||
|
.
|
||||||
|
.HP
|
||||||
|
diff --git a/udev/69-dm-lvm-metad.rules.in b/udev/69-dm-lvm-metad.rules.in
|
||||||
|
index 78f506520..7e2af981f 100644
|
||||||
|
--- a/udev/69-dm-lvm-metad.rules.in
|
||||||
|
+++ b/udev/69-dm-lvm-metad.rules.in
|
||||||
|
@@ -87,7 +87,7 @@ LABEL="systemd_background"
|
||||||
|
#
|
||||||
|
# In this case, we simply set up the dependency between the device and the pvscan
|
||||||
|
# job using SYSTEMD_ALIAS (which sets up a simplified device identifier that
|
||||||
|
-# allows using "BindsTo" in the sytemd unit file) and SYSTEMD_WANTS (which tells
|
||||||
|
+# allows using "BindsTo" in the systemd unit file) and SYSTEMD_WANTS (which tells
|
||||||
|
# systemd to start the pvscan job once the device is ready).
|
||||||
|
# We need to set these variables for both "add" and "change" events, otherwise
|
||||||
|
# systemd may loose information about the device/unit dependencies.
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
@ -0,0 +1,26 @@
|
|||||||
|
From 4d602fc32a2c7f7575dae4b37f6a0b12f4c09cb4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Ranjith ML <rmadhuso@redhat.com>
|
||||||
|
Date: Wed, 24 Jan 2024 14:05:24 +0100
|
||||||
|
Subject: [PATCH 03/12] archiving: Fix doubled filename in vgcfgrestore
|
||||||
|
|
||||||
|
(cherry picked from commit 1c3ae2b678ddae0c1916caca4dbe65049dcea3d7)
|
||||||
|
---
|
||||||
|
lib/format_text/archive.c | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/lib/format_text/archive.c b/lib/format_text/archive.c
|
||||||
|
index 2e8792a93..388789c0d 100644
|
||||||
|
--- a/lib/format_text/archive.c
|
||||||
|
+++ b/lib/format_text/archive.c
|
||||||
|
@@ -313,7 +313,7 @@ static void _display_archive(struct cmd_context *cmd, const char *dir, struct ar
|
||||||
|
}
|
||||||
|
|
||||||
|
log_print(" ");
|
||||||
|
- log_print("File:\t\t%s/%s", path, af->name);
|
||||||
|
+ log_print("File:\t\t%s", path);
|
||||||
|
tc.path_live = path;
|
||||||
|
|
||||||
|
fic.type = FMT_INSTANCE_PRIVATE_MDAS;
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
26
SOURCES/0121-man-add-inte-g-rity-to-man-lvs.patch
Normal file
26
SOURCES/0121-man-add-inte-g-rity-to-man-lvs.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
From 4db199be5c7ac6da9741e188f7ad1a076659b8c0 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lukas Herbolt <lukas@herbolt.com>
|
||||||
|
Date: Tue, 5 Dec 2023 09:08:24 -0600
|
||||||
|
Subject: [PATCH 04/12] man: add inte(g)rity to man lvs
|
||||||
|
|
||||||
|
(cherry picked from commit 7b64d9946d6a3be84338ad976383b6ab53e97484)
|
||||||
|
---
|
||||||
|
man/lvs.8_end | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/man/lvs.8_end b/man/lvs.8_end
|
||||||
|
index dc3a27446..e9897b4fc 100644
|
||||||
|
--- a/man/lvs.8_end
|
||||||
|
+++ b/man/lvs.8_end
|
||||||
|
@@ -4,7 +4,7 @@
|
||||||
|
The lv_attr bits are:
|
||||||
|
.IP 1 3
|
||||||
|
Volume type: (\fBC\fP)ache, (\fBm\fP)irrored, (\fBM\fP)irrored without initial sync, (\fBo\fP)rigin,
|
||||||
|
-(\fBO\fP)rigin with merging snapshot, (\fBr\fP)aid, (\fBR\fP)aid without initial sync,
|
||||||
|
+(\fBO\fP)rigin with merging snapshot, inte(\fBg\fP)rity, (\fBr\fP)aid, (\fBR\fP)aid without initial sync,
|
||||||
|
(\fBs\fP)napshot, merging (\fBS\fP)napshot, (\fBp\fP)vmove, (\fBv\fP)irtual,
|
||||||
|
mirror or raid (\fBi\fP)mage, mirror or raid (\fBI\fP)mage out-of-sync, mirror (\fBl\fP)og device,
|
||||||
|
under (\fBc\fP)onversion, thin (\fBV\fP)olume, (\fBt\fP)hin pool, (\fBT\fP)hin pool data,
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
@ -0,0 +1,48 @@
|
|||||||
|
From 3b5e2537ae1ce6ee633b92f8df30602b9167044e Mon Sep 17 00:00:00 2001
|
||||||
|
From: heinzm <heinzm@redhat.com>
|
||||||
|
Date: Fri, 5 May 2023 15:00:49 +0200
|
||||||
|
Subject: [PATCH 05/12] Fix "lvconvert -m 0 will always take rimage_0 even if
|
||||||
|
it is out-of-sync"
|
||||||
|
|
||||||
|
Bail out in case first rimage is out-of-sync.
|
||||||
|
Refresh first, i.e. "lvchange --resync $RaidLV",
|
||||||
|
then retry downgrade to linear after resynchronization.
|
||||||
|
|
||||||
|
(cherry picked from commit d7e922480e04ecfb7c4d8b2d42533699ddef5c34)
|
||||||
|
---
|
||||||
|
lib/metadata/raid_manip.c | 13 +++++++++++--
|
||||||
|
1 file changed, 11 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/lib/metadata/raid_manip.c b/lib/metadata/raid_manip.c
|
||||||
|
index 0e6a77bac..5112989ab 100644
|
||||||
|
--- a/lib/metadata/raid_manip.c
|
||||||
|
+++ b/lib/metadata/raid_manip.c
|
||||||
|
@@ -3112,14 +3112,23 @@ static int _raid_remove_images(struct logical_volume *lv, int yes,
|
||||||
|
{
|
||||||
|
struct dm_list removed_lvs;
|
||||||
|
|
||||||
|
- if (!archive(lv->vg))
|
||||||
|
- return_0;
|
||||||
|
+ if (new_count == 1) {
|
||||||
|
+ struct lv_segment *seg = first_seg(lv);
|
||||||
|
+
|
||||||
|
+ if (seg_is_raid1(seg) && !lv_raid_image_in_sync(seg_lv(seg, 0))) {
|
||||||
|
+ log_error("%s is out-of-sync! Please try refreshing first.", display_lvname(lv));
|
||||||
|
+ return 0;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
|
||||||
|
if (!removal_lvs) {
|
||||||
|
dm_list_init(&removed_lvs);
|
||||||
|
removal_lvs = &removed_lvs;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ if (!archive(lv->vg))
|
||||||
|
+ return_0;
|
||||||
|
+
|
||||||
|
if (!_raid_extract_images(lv, 0, new_count, allocate_pvs, 1,
|
||||||
|
removal_lvs, removal_lvs)) {
|
||||||
|
log_error("Failed to extract images from %s.",
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
@ -0,0 +1,52 @@
|
|||||||
|
From 54576eb1e4217353072933d5c2b3274c08c67e82 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Heinz Mauelshagen <heinzm@redhat.com>
|
||||||
|
Date: Thu, 19 Oct 2023 16:50:01 +0200
|
||||||
|
Subject: [PATCH 06/12] lvconvert: fix "lvconvert -m 0" for in-sync legs
|
||||||
|
|
||||||
|
With commit d7e922480e04ecfb7c4d8b2d42533699ddef5c34
|
||||||
|
lvconvert -m may fail if we try to remove 1st. leg that
|
||||||
|
is out-of-sync while other leg is in-sync.
|
||||||
|
|
||||||
|
Hot fix allows to proceed with such down conversion.
|
||||||
|
|
||||||
|
Signed-off-by: Heinz Mauelshagen <heinzm@redhat.com>
|
||||||
|
(cherry picked from commit e41da923a3bec2df603b54f0f466e9574b6544db)
|
||||||
|
---
|
||||||
|
lib/metadata/raid_manip.c | 19 ++++++++++++++++++-
|
||||||
|
1 file changed, 18 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/lib/metadata/raid_manip.c b/lib/metadata/raid_manip.c
|
||||||
|
index 5112989ab..7ce2c177d 100644
|
||||||
|
--- a/lib/metadata/raid_manip.c
|
||||||
|
+++ b/lib/metadata/raid_manip.c
|
||||||
|
@@ -3113,9 +3113,26 @@ static int _raid_remove_images(struct logical_volume *lv, int yes,
|
||||||
|
struct dm_list removed_lvs;
|
||||||
|
|
||||||
|
if (new_count == 1) {
|
||||||
|
+ uint32_t s;
|
||||||
|
struct lv_segment *seg = first_seg(lv);
|
||||||
|
|
||||||
|
- if (seg_is_raid1(seg) && !lv_raid_image_in_sync(seg_lv(seg, 0))) {
|
||||||
|
+ if (!seg_is_raid1(seg)) {
|
||||||
|
+ log_error("%s called on non-raid1 LV.", display_lvname(lv));
|
||||||
|
+ return 0;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ for (s = 0; s < seg->area_count; s++) {
|
||||||
|
+ if (seg_type(seg, s) == AREA_UNASSIGNED)
|
||||||
|
+ continue;
|
||||||
|
+
|
||||||
|
+ if (lv_raid_image_in_sync(seg_lv(seg, s))) {
|
||||||
|
+ _swap_areas(seg->areas + 0, seg->areas + s);
|
||||||
|
+ break;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ if (s >= seg->area_count) {
|
||||||
|
log_error("%s is out-of-sync! Please try refreshing first.", display_lvname(lv));
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
@ -0,0 +1,79 @@
|
|||||||
|
From b9b28ee11adc8aba0fe11dda56a88b3cfc8d6b41 Mon Sep 17 00:00:00 2001
|
||||||
|
From: heinzm <heinzm@redhat.com>
|
||||||
|
Date: Wed, 10 May 2023 18:22:11 +0200
|
||||||
|
Subject: [PATCH 07/12] Fix "multisegment RAID1, allocator uses one disk for
|
||||||
|
both legs"
|
||||||
|
|
||||||
|
In case of e.g. 3 PVs, creating or extending a RaidLV causes SubLV
|
||||||
|
collocation thus putting segments of diffent rimage (and potentially
|
||||||
|
larger rmeta) SubLVs onto the same PV. For redundant RaidLVs this'll
|
||||||
|
compromise redundancy. Fix by detecting such bogus allocation on
|
||||||
|
lvcreate/lvextend and reject the request.
|
||||||
|
|
||||||
|
(cherry picked from commit 05c2b10c5d0a99993430ffbcef684a099ba810ad)
|
||||||
|
---
|
||||||
|
lib/metadata/lv_manip.c | 41 +++++++++++++++++++++++++++++++++++++++++
|
||||||
|
1 file changed, 41 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/lib/metadata/lv_manip.c b/lib/metadata/lv_manip.c
|
||||||
|
index 0a51e0315..24d8adc18 100644
|
||||||
|
--- a/lib/metadata/lv_manip.c
|
||||||
|
+++ b/lib/metadata/lv_manip.c
|
||||||
|
@@ -4454,6 +4454,38 @@ static int _lv_extend_layered_lv(struct alloc_handle *ah,
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
+/* Check either RAID images and metas are being allocated redundantly. */
|
||||||
|
+static int _lv_raid_redundant(struct logical_volume *lv,
|
||||||
|
+ struct dm_list *allocatable_pvs, int meta)
|
||||||
|
+{
|
||||||
|
+ uint32_t nlvs, s;
|
||||||
|
+ struct lv_segment *seg = first_seg(lv);
|
||||||
|
+ struct pv_list *pvl;
|
||||||
|
+
|
||||||
|
+ if (meta && !seg->meta_areas)
|
||||||
|
+ return 1;
|
||||||
|
+
|
||||||
|
+ dm_list_iterate_items(pvl, allocatable_pvs) {
|
||||||
|
+ nlvs = 0;
|
||||||
|
+
|
||||||
|
+ for (s = 0; s < seg->area_count; s++) {
|
||||||
|
+ struct logical_volume *slv = meta ? seg_metalv(seg, s) : seg_lv(seg, s);
|
||||||
|
+
|
||||||
|
+ if (slv && lv_is_on_pv(slv, pvl->pv) && nlvs++)
|
||||||
|
+ return 0;
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ return 1;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+/* Check both RAID images and metas are being allocated redundantly. */
|
||||||
|
+static int _lv_raid_redundant_allocation(struct logical_volume *lv, struct dm_list *allocatable_pvs)
|
||||||
|
+{
|
||||||
|
+ return _lv_raid_redundant(lv, allocatable_pvs, 0) &&
|
||||||
|
+ _lv_raid_redundant(lv, allocatable_pvs, 1);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
/*
|
||||||
|
* Entry point for single-step LV allocation + extension.
|
||||||
|
* Extents is the number of logical extents to append to the LV unless
|
||||||
|
@@ -4556,6 +4588,15 @@ int lv_extend(struct logical_volume *lv,
|
||||||
|
mirrors, stripes, stripe_size)))
|
||||||
|
goto_out;
|
||||||
|
|
||||||
|
+ if (segtype_is_raid(segtype) &&
|
||||||
|
+ alloc != ALLOC_ANYWHERE &&
|
||||||
|
+ !(r = _lv_raid_redundant_allocation(lv, allocatable_pvs))) {
|
||||||
|
+ log_error("Insufficient suitable allocatable extents for logical volume %s", display_lvname(lv));
|
||||||
|
+ if (!lv_remove(lv) || !vg_write(lv->vg) || !vg_commit(lv->vg))
|
||||||
|
+ return_0;
|
||||||
|
+ goto out;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
if (lv_raid_has_integrity(lv)) {
|
||||||
|
if (!lv_extend_integrity_in_raid(lv, allocatable_pvs)) {
|
||||||
|
r = 0;
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
@ -0,0 +1,58 @@
|
|||||||
|
From 1c773b76965efe1fd7c4b3c8211296ede5b4c1e5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Heinz Mauelshagen <heinzm@redhat.com>
|
||||||
|
Date: Wed, 6 Dec 2023 12:58:14 +0100
|
||||||
|
Subject: [PATCH 08/12] raid: add messages to lvs command output in case
|
||||||
|
RaidLVs require a refresh
|
||||||
|
|
||||||
|
If a RaidLV mapping is required to be refreshed as a result of temporarily failed
|
||||||
|
and recurred RAID leg device (pairs) caused by writes to the LV during failure,
|
||||||
|
the requirement is reported by volume health character r' in position 9 of the
|
||||||
|
LV's attribute field (see 'man lvs' about additional volume health characters).
|
||||||
|
|
||||||
|
As this character can be overlooked, this patch adds messages to the top
|
||||||
|
of the lvs command output informing the user explicitely about the fact.
|
||||||
|
|
||||||
|
(cherry picked from commit b69f73b13ee55ef3feb7427c6dc099dc3472d9fc)
|
||||||
|
---
|
||||||
|
tools/reporter.c | 11 +++++++++++
|
||||||
|
1 file changed, 11 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/tools/reporter.c b/tools/reporter.c
|
||||||
|
index eafba4fec..ff30a31a9 100644
|
||||||
|
--- a/tools/reporter.c
|
||||||
|
+++ b/tools/reporter.c
|
||||||
|
@@ -150,6 +150,13 @@ static int _check_merging_origin(const struct logical_volume *lv,
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
+static void _cond_warn_raid_volume_health(struct cmd_context *cmd, const struct logical_volume *lv)
|
||||||
|
+{
|
||||||
|
+ if (lv_is_raid(lv) && !lv_raid_healthy(lv) && !lv_is_partial(lv))
|
||||||
|
+ log_warn("WARNING: RaidLV %s needs to be refreshed! See character 'r' at position 9 in the RaidLV's attributes%s.", display_lvname(lv),
|
||||||
|
+ arg_is_set(cmd, all_ARG) ? " and its SubLV(s)" : " and also its SubLV(s) with option '-a'");
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
static int _do_lvs_with_info_and_status_single(struct cmd_context *cmd,
|
||||||
|
const struct logical_volume *lv,
|
||||||
|
int do_info, int do_status,
|
||||||
|
@@ -176,6 +183,8 @@ static int _do_lvs_with_info_and_status_single(struct cmd_context *cmd,
|
||||||
|
lv = lv->snapshot->lv;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ _cond_warn_raid_volume_health(cmd, lv);
|
||||||
|
+
|
||||||
|
if (!report_object(sh ? : handle->custom_handle, sh != NULL,
|
||||||
|
lv->vg, lv, NULL, NULL, NULL, &status, NULL))
|
||||||
|
goto out;
|
||||||
|
@@ -238,6 +247,8 @@ static int _do_segs_with_info_and_status_single(struct cmd_context *cmd,
|
||||||
|
seg = seg->lv->snapshot;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ _cond_warn_raid_volume_health(cmd, seg->lv);
|
||||||
|
+
|
||||||
|
if (!report_object(sh ? : handle->custom_handle, sh != NULL,
|
||||||
|
seg->lv->vg, seg->lv, NULL, seg, NULL, &status, NULL))
|
||||||
|
goto_out;
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
25
SOURCES/0130-spec-Install-and-package-etc-lvm-devices.patch
Normal file
25
SOURCES/0130-spec-Install-and-package-etc-lvm-devices.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From e85d3a5487893cd2b8464d0b9a69f0050f686d7e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Marian Csontos <mcsontos@redhat.com>
|
||||||
|
Date: Wed, 29 Nov 2023 15:09:36 +0100
|
||||||
|
Subject: [PATCH] spec: Install and package /etc/lvm/devices
|
||||||
|
|
||||||
|
(cherry picked from commit ee31ba5023e6e1430c0d808f54015ccd3eb3931a)
|
||||||
|
---
|
||||||
|
Makefile.in | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/Makefile.in b/Makefile.in
|
||||||
|
index f7a46269a..afbb0d1bd 100644
|
||||||
|
--- a/Makefile.in
|
||||||
|
+++ b/Makefile.in
|
||||||
|
@@ -127,6 +127,7 @@ all_man:
|
||||||
|
|
||||||
|
install_system_dirs:
|
||||||
|
$(INSTALL_DIR) $(DESTDIR)$(DEFAULT_SYS_DIR)
|
||||||
|
+ $(INSTALL_ROOT_DIR) $(DESTDIR)$(DEFAULT_SYS_DIR)/devices
|
||||||
|
$(INSTALL_ROOT_DIR) $(DESTDIR)$(DEFAULT_ARCHIVE_DIR)
|
||||||
|
$(INSTALL_ROOT_DIR) $(DESTDIR)$(DEFAULT_BACKUP_DIR)
|
||||||
|
$(INSTALL_ROOT_DIR) $(DESTDIR)$(DEFAULT_CACHE_DIR)
|
||||||
|
--
|
||||||
|
2.43.0
|
||||||
|
|
@ -68,7 +68,7 @@ Version: 2.03.14
|
|||||||
%if 0%{?from_snapshot}
|
%if 0%{?from_snapshot}
|
||||||
Release: 0.1.20210426git%{shortcommit}%{?dist}%{?rel_suffix}
|
Release: 0.1.20210426git%{shortcommit}%{?dist}%{?rel_suffix}
|
||||||
%else
|
%else
|
||||||
Release: 13%{?dist}%{?rel_suffix}
|
Release: 14%{?dist}%{?rel_suffix}
|
||||||
%endif
|
%endif
|
||||||
License: GPLv2
|
License: GPLv2
|
||||||
URL: http://sourceware.org/lvm2
|
URL: http://sourceware.org/lvm2
|
||||||
@ -206,6 +206,27 @@ Patch116: 0115-vdo-support-version-4.patch
|
|||||||
Patch117: 0116-vdo-use-long-verbose.patch
|
Patch117: 0116-vdo-use-long-verbose.patch
|
||||||
# BZ 2233901:
|
# BZ 2233901:
|
||||||
Patch118: 0117-vdo-Sync-lvm_import_vdo.sh-with-main-as-of-970e4d295.patch
|
Patch118: 0117-vdo-Sync-lvm_import_vdo.sh-with-main-as-of-970e4d295.patch
|
||||||
|
# RHEL-8289:
|
||||||
|
Patch119: 0118-man-Fix-typo.patch
|
||||||
|
Patch120: 0119-doc-fix-typos-in-documentation.patch
|
||||||
|
# RHEL-20192:
|
||||||
|
Patch121: 0120-archiving-Fix-doubled-filename-in-vgcfgrestore.patch
|
||||||
|
# RHEL-14216:
|
||||||
|
Patch122: 0121-man-add-inte-g-rity-to-man-lvs.patch
|
||||||
|
# RHEL-8298:
|
||||||
|
Patch123: 0122-Fix-lvconvert-m-0-will-always-take-rimage_0-even-if-.patch
|
||||||
|
Patch124: 0123-lvconvert-fix-lvconvert-m-0-for-in-sync-legs.patch
|
||||||
|
# RHEL-8334:
|
||||||
|
Patch125: 0124-Fix-multisegment-RAID1-allocator-uses-one-disk-for-b.patch
|
||||||
|
# RHEL-8270:
|
||||||
|
Patch126: 0125-raid-add-messages-to-lvs-command-output-in-case-Raid.patch
|
||||||
|
## RHEL-8295:
|
||||||
|
#Patch127: 0126-vgsplit-don-t-reread-vg_to.patch
|
||||||
|
#Patch128: 0127-lvmcache-remove-lvmcache_update_vg_from_write.patch
|
||||||
|
#Patch129: 0128-handle-duplicate-vgids.patch
|
||||||
|
#Patch130: 0129-remove-unused-variable.patch
|
||||||
|
#
|
||||||
|
Patch131: 0130-spec-Install-and-package-etc-lvm-devices.patch
|
||||||
|
|
||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
%if %{enable_testsuite}
|
%if %{enable_testsuite}
|
||||||
@ -522,6 +543,7 @@ systemctl start lvm2-lvmpolld.socket >/dev/null 2>&1 || :
|
|||||||
%dir %{_sysconfdir}/lvm/backup
|
%dir %{_sysconfdir}/lvm/backup
|
||||||
%dir %{_sysconfdir}/lvm/cache
|
%dir %{_sysconfdir}/lvm/cache
|
||||||
%dir %{_sysconfdir}/lvm/archive
|
%dir %{_sysconfdir}/lvm/archive
|
||||||
|
%dir %{_sysconfdir}/lvm/devices
|
||||||
%dir %{_default_locking_dir}
|
%dir %{_default_locking_dir}
|
||||||
%dir %{_default_run_dir}
|
%dir %{_default_run_dir}
|
||||||
%{_tmpfilesdir}/%{name}.conf
|
%{_tmpfilesdir}/%{name}.conf
|
||||||
@ -883,7 +905,13 @@ An extensive functional testsuite for LVM2.
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Mon Sep 18 2023 Marian Csontos <mcsontos@redhat.com> - 2.03.14-13
|
* Fri Feb 02 2024 Marian Csontos <mcsontos@redhat.com> - 2.03.14-14
|
||||||
|
- Fix multisegment RAID1 allocator using one disk for both legs.
|
||||||
|
- Fix lvconvert -m 0 taking rimage_0 even if it is out of sync.
|
||||||
|
- Add warning message when mirror images have (r)efresh bit set.
|
||||||
|
- Document lv_attr volume type bit (g) for raid+integrity in lvs(8).
|
||||||
|
|
||||||
|
* Mon Sep 18 2023 Marian Csontos <mcsontos@redhat.com> - 2.03.14-13.el8_9
|
||||||
- Fix error paths in lvm_import_vdo.sh.
|
- Fix error paths in lvm_import_vdo.sh.
|
||||||
|
|
||||||
* Thu Sep 07 2023 Marian Csontos <mcsontos@redhat.com> - 2.03.14-12
|
* Thu Sep 07 2023 Marian Csontos <mcsontos@redhat.com> - 2.03.14-12
|
||||||
|
Loading…
Reference in New Issue
Block a user