From b3dbc37eaad5e6b2f0dbb5769b9ef19f1fd9d255 Mon Sep 17 00:00:00 2001 From: Damien Thenot Date: Wed, 27 Nov 2024 09:45:44 +0100 Subject: [PATCH] Add 0030-fix-cleanup.py-bad-live-coalesce-check-regarding-Fil.patch (#71) Signed-off-by: Damien Thenot --- ...-sm.service-s-description-for-XCP-ng.patch | 2 +- ...ers-add-CephFS-and-GlusterFS-drivers.patch | 2 +- .../0003-feat-drivers-add-XFS-driver.patch | 2 +- ...-ZFS-driver-to-avoid-losing-VDI-meta.patch | 2 +- ...05-feat-drivers-add-LinstorSR-driver.patch | 2 +- ...nit-tests-concerning-ZFS-close-xcp-n.patch | 2 +- .../0007-Added-SM-Driver-for-MooseFS.patch | 2 +- ...mount-in-ISOSR-when-legacy_mode-is-u.patch | 2 +- ...SR-uses-now-UUID-subdirs-for-each-SR.patch | 2 +- ...Fix-is_open-call-for-many-drivers-25.patch | 2 +- ...HING-capability-for-many-SR-types-24.patch | 2 +- ...age-regarding-MooseFSSR-and-ZFSSR-29.patch | 2 +- ...nges-from-futurize-on-XCP-ng-drivers.patch | 2 +- ...-of-xmlrpc-calls-for-CephFS-GlusterF.patch | 2 +- ...py3-use-of-integer-division-operator.patch | 2 +- ...low-to-work-with-SR-using-absolute-P.patch | 2 +- ...17-py3-switch-interpreter-to-python3.patch | 2 +- ...port-recent-version-of-coverage-tool.patch | 2 +- ...eat-LinstorSR-import-all-8.2-changes.patch | 2 +- ...orSR-is-now-compatible-with-python-3.patch | 2 +- ...ve-SR_PROBE-from-ZFS-capabilities-36.patch | 2 +- ...e-to-be-compatible-with-8.3-test-env.patch | 2 +- .../0023-Support-IPv6-in-Ceph-Driver.patch | 2 +- ...s-not-dd-to-clear-existing-signature.patch | 2 +- ...LargeBlock-introduce-largeblocksr-51.patch | 2 +- ...dd-a-way-to-modify-config-of-LVMs-60.patch | 2 +- ...eflect-upstream-changes-in-our-tests.patch | 2 +- ...tly-check-for-multiple-targets-in-iS.patch | 2 +- ...with-8.2-LINSTOR-before-a-stable-rel.patch | 36 ++++++++--- ...ad-live-coalesce-check-regarding-Fil.patch | 61 +++++++++++++++++++ SPECS/sm.spec | 7 ++- 31 files changed, 121 insertions(+), 39 deletions(-) create mode 100644 SOURCES/0030-fix-cleanup.py-bad-live-coalesce-check-regarding-Fil.patch diff --git a/SOURCES/0001-Update-xs-sm.service-s-description-for-XCP-ng.patch b/SOURCES/0001-Update-xs-sm.service-s-description-for-XCP-ng.patch index 5ae76db..6ccb101 100644 --- a/SOURCES/0001-Update-xs-sm.service-s-description-for-XCP-ng.patch +++ b/SOURCES/0001-Update-xs-sm.service-s-description-for-XCP-ng.patch @@ -1,7 +1,7 @@ From de38d2672887c47a4e0600426d87137185243d38 Mon Sep 17 00:00:00 2001 From: Samuel Verschelde Date: Thu, 13 Aug 2020 15:22:17 +0200 -Subject: [PATCH 01/29] Update xs-sm.service's description for XCP-ng +Subject: [PATCH 01/30] Update xs-sm.service's description for XCP-ng This was a patch added to the sm RPM git repo before we had this forked git repo for sm in the xcp-ng github organisation. diff --git a/SOURCES/0002-feat-drivers-add-CephFS-and-GlusterFS-drivers.patch b/SOURCES/0002-feat-drivers-add-CephFS-and-GlusterFS-drivers.patch index a218701..ec934e7 100644 --- a/SOURCES/0002-feat-drivers-add-CephFS-and-GlusterFS-drivers.patch +++ b/SOURCES/0002-feat-drivers-add-CephFS-and-GlusterFS-drivers.patch @@ -1,7 +1,7 @@ From 1809f021bf3af5fa18419e248469cd970bded9f3 Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Mon, 20 Jul 2020 16:26:42 +0200 -Subject: [PATCH 02/29] feat(drivers): add CephFS and GlusterFS drivers +Subject: [PATCH 02/30] feat(drivers): add CephFS and GlusterFS drivers --- Makefile | 2 + diff --git a/SOURCES/0003-feat-drivers-add-XFS-driver.patch b/SOURCES/0003-feat-drivers-add-XFS-driver.patch index bc148df..cabf6cc 100644 --- a/SOURCES/0003-feat-drivers-add-XFS-driver.patch +++ b/SOURCES/0003-feat-drivers-add-XFS-driver.patch @@ -1,7 +1,7 @@ From 4517b34462a3285630dc134de99eb84f6aa4fb58 Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Mon, 20 Jul 2020 16:26:42 +0200 -Subject: [PATCH 03/29] feat(drivers): add XFS driver +Subject: [PATCH 03/30] feat(drivers): add XFS driver Originally-by: Ronan Abhamon diff --git a/SOURCES/0004-feat-drivers-add-ZFS-driver-to-avoid-losing-VDI-meta.patch b/SOURCES/0004-feat-drivers-add-ZFS-driver-to-avoid-losing-VDI-meta.patch index e4106e5..5dce647 100644 --- a/SOURCES/0004-feat-drivers-add-ZFS-driver-to-avoid-losing-VDI-meta.patch +++ b/SOURCES/0004-feat-drivers-add-ZFS-driver-to-avoid-losing-VDI-meta.patch @@ -1,7 +1,7 @@ From cd3cd24251e847eb20ac5b32a374109718c8cca0 Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Wed, 12 Aug 2020 11:14:33 +0200 -Subject: [PATCH 04/29] feat(drivers): add ZFS driver to avoid losing VDI +Subject: [PATCH 04/30] feat(drivers): add ZFS driver to avoid losing VDI metadata (xcp-ng/xcp#401) --- diff --git a/SOURCES/0005-feat-drivers-add-LinstorSR-driver.patch b/SOURCES/0005-feat-drivers-add-LinstorSR-driver.patch index 88e5066..b4cb7f7 100644 --- a/SOURCES/0005-feat-drivers-add-LinstorSR-driver.patch +++ b/SOURCES/0005-feat-drivers-add-LinstorSR-driver.patch @@ -1,7 +1,7 @@ From ee88ac2658f10fe367a1a299f8b17b10209388ff Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Mon, 16 Mar 2020 15:39:44 +0100 -Subject: [PATCH 05/29] feat(drivers): add LinstorSR driver +Subject: [PATCH 05/30] feat(drivers): add LinstorSR driver Some important points: diff --git a/SOURCES/0006-feat-tests-add-unit-tests-concerning-ZFS-close-xcp-n.patch b/SOURCES/0006-feat-tests-add-unit-tests-concerning-ZFS-close-xcp-n.patch index b2a7b5a..a49508d 100644 --- a/SOURCES/0006-feat-tests-add-unit-tests-concerning-ZFS-close-xcp-n.patch +++ b/SOURCES/0006-feat-tests-add-unit-tests-concerning-ZFS-close-xcp-n.patch @@ -1,7 +1,7 @@ From 52c6e98da6238b6a624f7e59b4e0d896ca0728bc Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Tue, 27 Oct 2020 15:04:36 +0100 -Subject: [PATCH 06/29] feat(tests): add unit tests concerning ZFS (close +Subject: [PATCH 06/30] feat(tests): add unit tests concerning ZFS (close xcp-ng/xcp#425) - Check if "create" doesn't succeed without zfs packages diff --git a/SOURCES/0007-Added-SM-Driver-for-MooseFS.patch b/SOURCES/0007-Added-SM-Driver-for-MooseFS.patch index cfae048..3b8fd80 100644 --- a/SOURCES/0007-Added-SM-Driver-for-MooseFS.patch +++ b/SOURCES/0007-Added-SM-Driver-for-MooseFS.patch @@ -1,7 +1,7 @@ From 1dc43ae24403979db03fb7bbf90aeffe81d6c28b Mon Sep 17 00:00:00 2001 From: Aleksander Wieliczko Date: Fri, 29 Jan 2021 15:21:23 +0100 -Subject: [PATCH 07/29] Added SM Driver for MooseFS +Subject: [PATCH 07/30] Added SM Driver for MooseFS Co-authored-by: Piotr Robert Konopelko Signed-off-by: Aleksander Wieliczko diff --git a/SOURCES/0008-Avoid-usage-of-umount-in-ISOSR-when-legacy_mode-is-u.patch b/SOURCES/0008-Avoid-usage-of-umount-in-ISOSR-when-legacy_mode-is-u.patch index cb20913..b5344fb 100644 --- a/SOURCES/0008-Avoid-usage-of-umount-in-ISOSR-when-legacy_mode-is-u.patch +++ b/SOURCES/0008-Avoid-usage-of-umount-in-ISOSR-when-legacy_mode-is-u.patch @@ -1,7 +1,7 @@ From 0f993508af755b52d46b216b503e81914eb570ef Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Thu, 2 Dec 2021 09:28:37 +0100 -Subject: [PATCH 08/29] Avoid usage of `umount` in `ISOSR` when `legacy_mode` +Subject: [PATCH 08/30] Avoid usage of `umount` in `ISOSR` when `legacy_mode` is used `umount` should not be called when `legacy_mode` is enabled, otherwise a mounted dir diff --git a/SOURCES/0009-MooseFS-SR-uses-now-UUID-subdirs-for-each-SR.patch b/SOURCES/0009-MooseFS-SR-uses-now-UUID-subdirs-for-each-SR.patch index 94b856c..ed985f7 100644 --- a/SOURCES/0009-MooseFS-SR-uses-now-UUID-subdirs-for-each-SR.patch +++ b/SOURCES/0009-MooseFS-SR-uses-now-UUID-subdirs-for-each-SR.patch @@ -1,7 +1,7 @@ From 1f67bfaffbd431c166a5e61322ea7d179ee4d687 Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Wed, 18 May 2022 17:28:09 +0200 -Subject: [PATCH 09/29] MooseFS SR uses now UUID subdirs for each SR +Subject: [PATCH 09/30] MooseFS SR uses now UUID subdirs for each SR A sm-config boolean param `subdir` is available to configure where to store the VHDs: - In a subdir with the SR UUID, the new behavior diff --git a/SOURCES/0010-Fix-is_open-call-for-many-drivers-25.patch b/SOURCES/0010-Fix-is_open-call-for-many-drivers-25.patch index a3e27dd..317e380 100644 --- a/SOURCES/0010-Fix-is_open-call-for-many-drivers-25.patch +++ b/SOURCES/0010-Fix-is_open-call-for-many-drivers-25.patch @@ -1,7 +1,7 @@ From d32bf0ccfe58c67ba87e9bab5b76f9eead92735d Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Thu, 23 Jun 2022 10:36:36 +0200 -Subject: [PATCH 10/29] Fix is_open call for many drivers (#25) +Subject: [PATCH 10/30] Fix is_open call for many drivers (#25) Ensure all shared drivers are imported in `_is_open` definition to register them in the driver list. Otherwise this function always fails with a SRUnknownType exception. diff --git a/SOURCES/0011-Remove-SR_CACHING-capability-for-many-SR-types-24.patch b/SOURCES/0011-Remove-SR_CACHING-capability-for-many-SR-types-24.patch index 6c3d40e..c89ecbb 100644 --- a/SOURCES/0011-Remove-SR_CACHING-capability-for-many-SR-types-24.patch +++ b/SOURCES/0011-Remove-SR_CACHING-capability-for-many-SR-types-24.patch @@ -1,7 +1,7 @@ From 3c420bca8372e1441f977562b61439ff2235003f Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Thu, 23 Jun 2022 10:37:07 +0200 -Subject: [PATCH 11/29] Remove SR_CACHING capability for many SR types (#24) +Subject: [PATCH 11/30] Remove SR_CACHING capability for many SR types (#24) SR_CACHING offers the capacity to use IntelliCache, but this feature is only available using NFS SR. diff --git a/SOURCES/0012-Fix-code-coverage-regarding-MooseFSSR-and-ZFSSR-29.patch b/SOURCES/0012-Fix-code-coverage-regarding-MooseFSSR-and-ZFSSR-29.patch index 6784950..a068ada 100644 --- a/SOURCES/0012-Fix-code-coverage-regarding-MooseFSSR-and-ZFSSR-29.patch +++ b/SOURCES/0012-Fix-code-coverage-regarding-MooseFSSR-and-ZFSSR-29.patch @@ -1,7 +1,7 @@ From 471b7b2742da807aca012c6609c8917cbe786507 Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Mon, 19 Sep 2022 10:31:00 +0200 -Subject: [PATCH 12/29] Fix code coverage regarding MooseFSSR and ZFSSR (#29) +Subject: [PATCH 12/30] Fix code coverage regarding MooseFSSR and ZFSSR (#29) Signed-off-by: Ronan Abhamon --- diff --git a/SOURCES/0013-py3-simple-changes-from-futurize-on-XCP-ng-drivers.patch b/SOURCES/0013-py3-simple-changes-from-futurize-on-XCP-ng-drivers.patch index fd858ce..42f1dcf 100644 --- a/SOURCES/0013-py3-simple-changes-from-futurize-on-XCP-ng-drivers.patch +++ b/SOURCES/0013-py3-simple-changes-from-futurize-on-XCP-ng-drivers.patch @@ -1,7 +1,7 @@ From 395daa86f0b4dcbc4eeabb42fed4f818d46afc36 Mon Sep 17 00:00:00 2001 From: Yann Dirson Date: Wed, 8 Mar 2023 10:13:18 +0100 -Subject: [PATCH 13/29] py3: simple changes from futurize on XCP-ng drivers +Subject: [PATCH 13/30] py3: simple changes from futurize on XCP-ng drivers * `except` syntax fixes * drop `has_key()` usage diff --git a/SOURCES/0014-py3-futurize-fix-of-xmlrpc-calls-for-CephFS-GlusterF.patch b/SOURCES/0014-py3-futurize-fix-of-xmlrpc-calls-for-CephFS-GlusterF.patch index 3a378a6..9c5a588 100644 --- a/SOURCES/0014-py3-futurize-fix-of-xmlrpc-calls-for-CephFS-GlusterF.patch +++ b/SOURCES/0014-py3-futurize-fix-of-xmlrpc-calls-for-CephFS-GlusterF.patch @@ -1,7 +1,7 @@ From af592f003d7fb8bc2572455271bf143e97a10c81 Mon Sep 17 00:00:00 2001 From: Yann Dirson Date: Wed, 8 Mar 2023 10:28:10 +0100 -Subject: [PATCH 14/29] py3: futurize fix of xmlrpc calls for CephFS, +Subject: [PATCH 14/30] py3: futurize fix of xmlrpc calls for CephFS, GlusterFS, MooseFS, Linstore Signed-off-by: Yann Dirson diff --git a/SOURCES/0015-py3-use-of-integer-division-operator.patch b/SOURCES/0015-py3-use-of-integer-division-operator.patch index 4ac71e5..27b11d0 100644 --- a/SOURCES/0015-py3-use-of-integer-division-operator.patch +++ b/SOURCES/0015-py3-use-of-integer-division-operator.patch @@ -1,7 +1,7 @@ From e1335b1ca83771142e6a6f831b5b4aa888e2ff18 Mon Sep 17 00:00:00 2001 From: Yann Dirson Date: Wed, 8 Mar 2023 10:32:37 +0100 -Subject: [PATCH 15/29] py3: use of integer division operator +Subject: [PATCH 15/30] py3: use of integer division operator Guided by futurize's "old_div" use diff --git a/SOURCES/0016-test_on_slave-allow-to-work-with-SR-using-absolute-P.patch b/SOURCES/0016-test_on_slave-allow-to-work-with-SR-using-absolute-P.patch index de94cf9..755601e 100644 --- a/SOURCES/0016-test_on_slave-allow-to-work-with-SR-using-absolute-P.patch +++ b/SOURCES/0016-test_on_slave-allow-to-work-with-SR-using-absolute-P.patch @@ -1,7 +1,7 @@ From 2e7fa79a4d7d4ebbee00959326b8f8151a816889 Mon Sep 17 00:00:00 2001 From: Yann Dirson Date: Wed, 8 Mar 2023 13:53:21 +0100 -Subject: [PATCH 16/29] test_on_slave: allow to work with SR using absolute +Subject: [PATCH 16/30] test_on_slave: allow to work with SR using absolute PROBE_MOUNTPOINT PROBE_MOUNTPOINT in a some drivers is a relative path, which is resolved diff --git a/SOURCES/0017-py3-switch-interpreter-to-python3.patch b/SOURCES/0017-py3-switch-interpreter-to-python3.patch index 2666610..d766032 100644 --- a/SOURCES/0017-py3-switch-interpreter-to-python3.patch +++ b/SOURCES/0017-py3-switch-interpreter-to-python3.patch @@ -1,7 +1,7 @@ From 2df6ea2d37f2a117f70f844105db2771d9c88517 Mon Sep 17 00:00:00 2001 From: Yann Dirson Date: Mon, 27 Mar 2023 15:30:46 +0200 -Subject: [PATCH 17/29] py3: switch interpreter to python3 +Subject: [PATCH 17/30] py3: switch interpreter to python3 --- drivers/CephFSSR.py | 2 +- diff --git a/SOURCES/0018-Support-recent-version-of-coverage-tool.patch b/SOURCES/0018-Support-recent-version-of-coverage-tool.patch index df368c8..bf9e44f 100644 --- a/SOURCES/0018-Support-recent-version-of-coverage-tool.patch +++ b/SOURCES/0018-Support-recent-version-of-coverage-tool.patch @@ -1,7 +1,7 @@ From 09aa72c4d2655ba1027dc831b1580bde87643447 Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Thu, 4 May 2023 10:24:22 +0200 -Subject: [PATCH 18/29] Support recent version of coverage tool (coverage +Subject: [PATCH 18/30] Support recent version of coverage tool (coverage 7.2.5) Without these changes many warns/errors are emitted: diff --git a/SOURCES/0019-feat-LinstorSR-import-all-8.2-changes.patch b/SOURCES/0019-feat-LinstorSR-import-all-8.2-changes.patch index 86da2c3..164f2a4 100644 --- a/SOURCES/0019-feat-LinstorSR-import-all-8.2-changes.patch +++ b/SOURCES/0019-feat-LinstorSR-import-all-8.2-changes.patch @@ -1,7 +1,7 @@ From 98d8c31104c3eae9ea62ea106d09fb801a784f4e Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Fri, 20 Nov 2020 16:42:52 +0100 -Subject: [PATCH 19/29] feat(LinstorSR): import all 8.2 changes +Subject: [PATCH 19/30] feat(LinstorSR): import all 8.2 changes Signed-off-by: Ronan Abhamon --- diff --git a/SOURCES/0020-feat-LinstorSR-is-now-compatible-with-python-3.patch b/SOURCES/0020-feat-LinstorSR-is-now-compatible-with-python-3.patch index fe99746..564cdb7 100644 --- a/SOURCES/0020-feat-LinstorSR-is-now-compatible-with-python-3.patch +++ b/SOURCES/0020-feat-LinstorSR-is-now-compatible-with-python-3.patch @@ -1,7 +1,7 @@ From 1354e78a5409805f08f118910db32b89bfc6c780 Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Fri, 30 Jun 2023 12:41:43 +0200 -Subject: [PATCH 20/29] feat(LinstorSR): is now compatible with python 3 +Subject: [PATCH 20/30] feat(LinstorSR): is now compatible with python 3 Signed-off-by: Ronan Abhamon --- diff --git a/SOURCES/0021-Remove-SR_PROBE-from-ZFS-capabilities-36.patch b/SOURCES/0021-Remove-SR_PROBE-from-ZFS-capabilities-36.patch index ecffdf9..1b33143 100644 --- a/SOURCES/0021-Remove-SR_PROBE-from-ZFS-capabilities-36.patch +++ b/SOURCES/0021-Remove-SR_PROBE-from-ZFS-capabilities-36.patch @@ -1,7 +1,7 @@ From d778817b78c72a04d419073ee8e98099e2a960a0 Mon Sep 17 00:00:00 2001 From: BenjiReis Date: Fri, 4 Aug 2023 12:10:37 +0200 -Subject: [PATCH 21/29] Remove `SR_PROBE` from ZFS capabilities (#36) +Subject: [PATCH 21/30] Remove `SR_PROBE` from ZFS capabilities (#36) The probe method is not implemented so we shouldn't advertise it. diff --git a/SOURCES/0022-Repair-coverage-to-be-compatible-with-8.3-test-env.patch b/SOURCES/0022-Repair-coverage-to-be-compatible-with-8.3-test-env.patch index 5f2fd77..d65f56e 100644 --- a/SOURCES/0022-Repair-coverage-to-be-compatible-with-8.3-test-env.patch +++ b/SOURCES/0022-Repair-coverage-to-be-compatible-with-8.3-test-env.patch @@ -1,7 +1,7 @@ From 18fe0f0b6c645b314d49b377602cc681167422e6 Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Fri, 22 Sep 2023 11:11:27 +0200 -Subject: [PATCH 22/29] Repair coverage to be compatible with 8.3 test env +Subject: [PATCH 22/30] Repair coverage to be compatible with 8.3 test env Impacted drivers: LINSTOR, MooseFS and ZFS. - Ignore all linstor.* members during coverage, diff --git a/SOURCES/0023-Support-IPv6-in-Ceph-Driver.patch b/SOURCES/0023-Support-IPv6-in-Ceph-Driver.patch index d44a0a6..3c62bf2 100644 --- a/SOURCES/0023-Support-IPv6-in-Ceph-Driver.patch +++ b/SOURCES/0023-Support-IPv6-in-Ceph-Driver.patch @@ -1,7 +1,7 @@ From e46f99246bd1c9d1e06e6dbc49b1d95dbaaf8eac Mon Sep 17 00:00:00 2001 From: BenjiReis Date: Mon, 25 Sep 2023 16:13:13 +0200 -Subject: [PATCH 23/29] Support IPv6 in Ceph Driver +Subject: [PATCH 23/30] Support IPv6 in Ceph Driver Signed-off-by: BenjiReis --- diff --git a/SOURCES/0024-lvutil-use-wipefs-not-dd-to-clear-existing-signature.patch b/SOURCES/0024-lvutil-use-wipefs-not-dd-to-clear-existing-signature.patch index adf86c8..b507908 100644 --- a/SOURCES/0024-lvutil-use-wipefs-not-dd-to-clear-existing-signature.patch +++ b/SOURCES/0024-lvutil-use-wipefs-not-dd-to-clear-existing-signature.patch @@ -1,7 +1,7 @@ From 709b30f2d5d8c85c87da2f375a032a0d004b4298 Mon Sep 17 00:00:00 2001 From: Yann Dirson Date: Wed, 5 Jul 2023 16:57:26 +0200 -Subject: [PATCH 24/29] lvutil: use wipefs not dd to clear existing signatures +Subject: [PATCH 24/30] lvutil: use wipefs not dd to clear existing signatures (xapi-project#624) Signed-off-by: Yann Dirson diff --git a/SOURCES/0025-feat-LargeBlock-introduce-largeblocksr-51.patch b/SOURCES/0025-feat-LargeBlock-introduce-largeblocksr-51.patch index fe1c047..441c2e5 100644 --- a/SOURCES/0025-feat-LargeBlock-introduce-largeblocksr-51.patch +++ b/SOURCES/0025-feat-LargeBlock-introduce-largeblocksr-51.patch @@ -1,7 +1,7 @@ From 47d5d8691b40f9c4bd8a77c00d851443e68ac887 Mon Sep 17 00:00:00 2001 From: Damien Thenot Date: Fri, 12 Apr 2024 15:08:59 +0200 -Subject: [PATCH 25/29] feat(LargeBlock): introduce largeblocksr (#51) +Subject: [PATCH 25/30] feat(LargeBlock): introduce largeblocksr (#51) A SR inheriting from a EXTSR allowing to use a 4KiB blocksize device as SR. diff --git a/SOURCES/0026-feat-LVHDSR-add-a-way-to-modify-config-of-LVMs-60.patch b/SOURCES/0026-feat-LVHDSR-add-a-way-to-modify-config-of-LVMs-60.patch index 7b91ca8..a723cb8 100644 --- a/SOURCES/0026-feat-LVHDSR-add-a-way-to-modify-config-of-LVMs-60.patch +++ b/SOURCES/0026-feat-LVHDSR-add-a-way-to-modify-config-of-LVMs-60.patch @@ -1,7 +1,7 @@ From db0a6cb684e3a24ef1c47094154d19c03a6f0a5c Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Tue, 30 Jul 2024 15:31:23 +0200 -Subject: [PATCH 26/29] feat(LVHDSR): add a way to modify config of LVMs (#60) +Subject: [PATCH 26/30] feat(LVHDSR): add a way to modify config of LVMs (#60) With this change the driver supports a "lvm-conf" param on "other-config". For now The configuration is only used by "remove" calls from LVMCache. diff --git a/SOURCES/0027-reflect-upstream-changes-in-our-tests.patch b/SOURCES/0027-reflect-upstream-changes-in-our-tests.patch index bdbaeae..cf5ed37 100644 --- a/SOURCES/0027-reflect-upstream-changes-in-our-tests.patch +++ b/SOURCES/0027-reflect-upstream-changes-in-our-tests.patch @@ -1,7 +1,7 @@ From df0d4cd2dcafb2d866ee121d8d7903711ffa4456 Mon Sep 17 00:00:00 2001 From: Benjamin Reis Date: Tue, 13 Aug 2024 11:11:39 +0200 -Subject: [PATCH 27/29] reflect upstream changes in our tests +Subject: [PATCH 27/30] reflect upstream changes in our tests Signed-off-by: Benjamin Reis --- diff --git a/SOURCES/0028-CA-398425-correctly-check-for-multiple-targets-in-iS.patch b/SOURCES/0028-CA-398425-correctly-check-for-multiple-targets-in-iS.patch index 54fd976..0f9e186 100644 --- a/SOURCES/0028-CA-398425-correctly-check-for-multiple-targets-in-iS.patch +++ b/SOURCES/0028-CA-398425-correctly-check-for-multiple-targets-in-iS.patch @@ -1,7 +1,7 @@ From 006a3727a18eed16a581251553b829667efceefd Mon Sep 17 00:00:00 2001 From: Mark Syms Date: Fri, 30 Aug 2024 10:13:27 +0100 -Subject: [PATCH 28/29] CA-398425: correctly check for multiple targets in +Subject: [PATCH 28/30] CA-398425: correctly check for multiple targets in iSCSI Signed-off-by: Mark Syms diff --git a/SOURCES/0029-Synchronization-with-8.2-LINSTOR-before-a-stable-rel.patch b/SOURCES/0029-Synchronization-with-8.2-LINSTOR-before-a-stable-rel.patch index 31c3b4c..b073859 100644 --- a/SOURCES/0029-Synchronization-with-8.2-LINSTOR-before-a-stable-rel.patch +++ b/SOURCES/0029-Synchronization-with-8.2-LINSTOR-before-a-stable-rel.patch @@ -1,8 +1,8 @@ -From 93a8128e234613c4973d83bbb37c84d2a9cf5d87 Mon Sep 17 00:00:00 2001 +From 6d2b2d1b0dbe44f52033949d0a2f758c89972a97 Mon Sep 17 00:00:00 2001 From: Ronan Abhamon -Date: Mon, 5 Feb 2024 23:16:16 +0100 -Subject: [PATCH 29/29] Synchronization with 8.2 LINSTOR before a stable - release +Date: Thu, 26 Sep 2024 18:53:04 +0200 +Subject: [PATCH 29/30] Synchronization with 8.2 LINSTOR before a stable + release (#68) Last commit: 9207abe1f2e1ff1795cdba1a0aeb76574412a583 "fix(linstor): check if resource is tiebreaker (#62)" @@ -10,13 +10,13 @@ Last commit: 9207abe1f2e1ff1795cdba1a0aeb76574412a583 Signed-off-by: Ronan Abhamon --- dev_requirements.txt | 1 + - drivers/LinstorSR.py | 100 +++--- + drivers/LinstorSR.py | 102 +++--- drivers/linstor-manager | 183 ++++++++--- drivers/linstorvhdutil.py | 60 +++- drivers/linstorvolumemanager.py | 349 +++++++++++++++------ drivers/tapdisk-pause | 6 +- {tests/mocks => mocks}/linstor/__init__.py | 0 - 7 files changed, 497 insertions(+), 202 deletions(-) + 7 files changed, 499 insertions(+), 202 deletions(-) rename {tests/mocks => mocks}/linstor/__init__.py (100%) diff --git a/dev_requirements.txt b/dev_requirements.txt @@ -29,7 +29,7 @@ index 104316ba..f25f7686 100644 bitarray +python-linstor diff --git a/drivers/LinstorSR.py b/drivers/LinstorSR.py -index fe6d01d4..8b8be6c9 100755 +index fe6d01d4..829c48f8 100755 --- a/drivers/LinstorSR.py +++ b/drivers/LinstorSR.py @@ -362,9 +362,6 @@ class LinstorSR(SR.SR): @@ -247,7 +247,23 @@ index fe6d01d4..8b8be6c9 100755 ) raise xs_errors.XenError('VDIClone', opterr=str(e)) -@@ -2739,7 +2748,7 @@ class LinstorVDI(VDI.VDI): +@@ -2550,6 +2559,7 @@ class LinstorVDI(VDI.VDI): + [FORK_LOG_DAEMON] + arguments, + stdout=subprocess.PIPE, + stderr=subprocess.STDOUT, ++ universal_newlines=True, + # Ensure we use another group id to kill this process without + # touch the current one. + preexec_fn=os.setsid +@@ -2635,6 +2645,7 @@ class LinstorVDI(VDI.VDI): + [FORK_LOG_DAEMON] + arguments, + stdout=subprocess.PIPE, + stderr=subprocess.STDOUT, ++ universal_newlines=True, + # Ensure we use another group id to kill this process without + # touch the current one. + preexec_fn=os.setsid +@@ -2739,7 +2750,7 @@ class LinstorVDI(VDI.VDI): # 0. Fetch drbd path. must_get_device_path = True @@ -256,7 +272,7 @@ index fe6d01d4..8b8be6c9 100755 # We are on a slave, we must try to find a diskful locally. try: volume_info = self._linstor.get_volume_info(self.uuid) -@@ -2754,7 +2763,7 @@ class LinstorVDI(VDI.VDI): +@@ -2754,7 +2765,7 @@ class LinstorVDI(VDI.VDI): must_get_device_path = hostname in volume_info.diskful drbd_path = None @@ -265,7 +281,7 @@ index fe6d01d4..8b8be6c9 100755 # If we are master, we must ensure we have a diskless # or diskful available to init HA. # It also avoid this error in xensource.log -@@ -2812,37 +2821,6 @@ class LinstorVDI(VDI.VDI): +@@ -2812,37 +2823,6 @@ class LinstorVDI(VDI.VDI): self._kill_persistent_nbd_server(volume_name) self._kill_persistent_http_server(volume_name) diff --git a/SOURCES/0030-fix-cleanup.py-bad-live-coalesce-check-regarding-Fil.patch b/SOURCES/0030-fix-cleanup.py-bad-live-coalesce-check-regarding-Fil.patch new file mode 100644 index 0000000..a340d45 --- /dev/null +++ b/SOURCES/0030-fix-cleanup.py-bad-live-coalesce-check-regarding-Fil.patch @@ -0,0 +1,61 @@ +From e207c0a18ee7e35c92c2868bb5e047e94208d0f0 Mon Sep 17 00:00:00 2001 +From: Damien Thenot +Date: Tue, 26 Nov 2024 16:45:24 +0100 +Subject: [PATCH 30/30] fix(cleanup.py): bad live coalesce check regarding + FileSR + +The `VDI.canLiveCoalesce` method can manipulates sizes of different units because of this change: +``` +CP-40871: use VHD allocation size in checking canLiveCoalesce +2f863b9fce6f2978499892d8c019bb3ab7ad72c5 +``` +As a result, the `canLiveCoalesce` method can return True and cause coalesce attempts +resulting in "Timed out" exceptions. + +Only drivers deriving from `FileSR` are impacted. +The size of `self._sizeAllocated` is calculated correctly when `vhdutil.getAllocatedSize` +is called but there is a problematic case where `getVHDInfo` is used instead. +And this function does not convert `info.sizeAllocated` from block size to bytes. +This bug is caused by the call to `FileVDI.load` in cleanup.py. + +Signed-off-by: Damien Thenot +Co-authored-by: Ronan Abhamon +--- + drivers/vhdutil.py | 10 +++++++--- + 1 file changed, 7 insertions(+), 3 deletions(-) + +diff --git a/drivers/vhdutil.py b/drivers/vhdutil.py +index 723f3af2..6a71804c 100755 +--- a/drivers/vhdutil.py ++++ b/drivers/vhdutil.py +@@ -94,6 +94,11 @@ def ioretry(cmd, text=True): + errlist=[errno.EIO, errno.EAGAIN]) + + ++def convertAllocatedSizeToBytes(size): ++ # Assume we have standard 2MB allocation blocks ++ return size * 2 * 1024 * 1024 ++ ++ + def getVHDInfo(path, extractUuidFunction, includeParent=True, resolveParent=True): + """Get the VHD info. The parent info may optionally be omitted: vhd-util + tries to verify the parent by opening it, which results in error if the VHD +@@ -118,7 +123,7 @@ def getVHDInfo(path, extractUuidFunction, includeParent=True, resolveParent=True + vhdInfo.parentUuid = extractUuidFunction(fields[nextIndex]) + nextIndex += 1 + vhdInfo.hidden = int(fields[nextIndex].replace("hidden: ", "")) +- vhdInfo.sizeAllocated = int(fields[nextIndex+1]) ++ vhdInfo.sizeAllocated = convertAllocatedSizeToBytes(int(fields[nextIndex+1])) + vhdInfo.path = path + return vhdInfo + +@@ -277,8 +282,7 @@ def setSizePhys(path, size, debug=True): + def getAllocatedSize(path): + cmd = [VHD_UTIL, "query", OPT_LOG_ERR, '-a', '-n', path] + ret = ioretry(cmd) +- # Assume we have standard 2MB allocation blocks +- return int(ret) * 2 * 1024 * 1024 ++ return convertAllocatedSizeToBytes(int(ret)) + + def killData(path): + "zero out the disk (kill all data inside the VHD file)" diff --git a/SPECS/sm.spec b/SPECS/sm.spec index 49ee1dd..4b99163 100644 --- a/SPECS/sm.spec +++ b/SPECS/sm.spec @@ -6,7 +6,7 @@ Summary: sm - XCP storage managers Name: sm Version: 3.2.3 -Release: 1.7%{?xsrel}%{?dist} +Release: 1.8%{?xsrel}%{?dist} License: LGPL URL: https://github.com/xapi-project/sm Source0: sm-3.2.3.tar.gz @@ -74,6 +74,8 @@ Patch1026: 0026-feat-LVHDSR-add-a-way-to-modify-config-of-LVMs-60.patch Patch1027: 0027-reflect-upstream-changes-in-our-tests.patch Patch1028: 0028-CA-398425-correctly-check-for-multiple-targets-in-iS.patch Patch1029: 0029-Synchronization-with-8.2-LINSTOR-before-a-stable-rel.patch +# Upstream PR: https://github.com/xapi-project/sm/pull/719 +Patch1030: 0030-fix-cleanup.py-bad-live-coalesce-check-regarding-Fil.patch %description This package contains storage backends used in XCP @@ -385,6 +387,9 @@ Manager and some other packages %changelog +* Tue Nov 26 2024 Damien Thenot - 3.2.3-1.8 +- Add 0030-fix-cleanup.py-bad-live-coalesce-check-regarding-Fil.patch + * Mon Sep 09 2024 Ronan Abhamon - 3.2.3-1.7 - Import 8.2 LINSTOR changes on 8.3: - Robustify HA: use a specific group with a replication count of 3