7f9b3f4598
- backport patches for lvm2 to avoid software abnormal work (bsc#1158861) + bug-1158861_01-config-remove-filter-typo.patch + bug-1158861_02-config-Fix-default-option-which-makes-no-sense.patch + bug-1158861_03-vgchange-don-t-fail-monitor-command-if-vg-is-exporte.patch + bug-1158861_04-fix-duplicate-pv-size-check.patch + bug-1158861_05-hints-fix-copy-of-filter.patch + bug-1158861_06-fix-segfault-for-invalid-characters-in-vg-name.patch + bug-1158861_07-vgck-let-updatemetadata-repair-mismatched-metadata.patch + bug-1158861_08-hints-fix-mem-leaking-buffers.patch + bug-1158861_09-pvcreate-pvremove-fix-reacquiring-global-lock-after.patch - add necessary patches for passing lvm2 testsuite (bsc#1158628) + bug-1158628_01-tests-replaces-grep-q-usage.patch + bug-1158628_02-tests-fix-ra-checking.patch + bug-1158628_03-tests-simplify-some-var-settings.patch + bug-1158628-04-pvmove-correcting-read_ahead-setting.patch + bug-1158628_05-activation-add-synchronization-point.patch + bug-1158628_06-pvmove-add-missing-synchronization.patch + bug-1158628_07-activation-extend-handling-of-pending_delete.patch + bug-1158628_08-lv_manip-add-synchronizations.patch + bug-1158628_09-lvconvert-improve-validation-thin-and-cache-pool-con.patch + bug-1158628_10-thin-activate-layer-pool-aas-read-only-LV.patch + bug-1158628_11-tests-mdadm-stop-in-test-cleanup.patch + bug-1158628_12-test-increase-size-of-raid10-LV-allowing-tests-to-su.patch + bug-1158628_13-lvconvert-fix-return-value-when-zeroing-fails.patch + bug-1158628_14-tests-add-extra-settle.patch + bug-1158628_15-test-Fix-handling-leftovers-from-previous-tests.patch OBS-URL: https://build.opensuse.org/request/show/755483 OBS-URL: https://build.opensuse.org/package/show/Base:System/lvm2?expand=0&rev=260
38 lines
1.3 KiB
Diff
38 lines
1.3 KiB
Diff
From 66f69e766e576692ea32328c1921acbacb69ed14 Mon Sep 17 00:00:00 2001
|
|
From: Zdenek Kabelac <zkabelac@redhat.com>
|
|
Date: Sat, 14 Sep 2019 01:08:14 +0200
|
|
Subject: [PATCH] thin: activate layer pool aas read-only LV
|
|
|
|
When lvm2 is activating layered pool LV (to basically keep pool opened,
|
|
the other function used to be 'locking' be in sync with DM table)
|
|
use this LV in read-only mode - this prevents 'write' access into
|
|
data volume content of thin-pool.
|
|
|
|
Note: since EMPTY/unused thin-pool is created as 'public LV' for generic
|
|
use by any user who i.e. wish to maintain thin-pool and thins himself.
|
|
At this moment, thin-pool appears as writable LV. As soon as the 1st.
|
|
thinLV is created, layer volume will appear is 'read-only' LV from this moment.
|
|
---
|
|
lib/activate/dev_manager.c | 5 +++++
|
|
1 files changed, 5 insertions(+)
|
|
|
|
diff --git a/lib/activate/dev_manager.c b/lib/activate/dev_manager.c
|
|
index c780deaa02..32fdcb94f7 100644
|
|
--- a/lib/activate/dev_manager.c
|
|
+++ b/lib/activate/dev_manager.c
|
|
@@ -85,6 +85,11 @@ int read_only_lv(const struct logical_volume *lv, const struct lv_activate_opts
|
|
if (lv_is_raid_image(lv) || lv_is_raid_metadata(lv))
|
|
return 0; /* Keep RAID SubLvs writable */
|
|
|
|
+ if (!layer) {
|
|
+ if (lv_is_thin_pool(lv))
|
|
+ return 1;
|
|
+ }
|
|
+
|
|
return (laopts->read_only || !(lv->status & LVM_WRITE));
|
|
}
|
|
|
|
--
|
|
2.24.0
|
|
|