From 17ceb135548f11af5453b264fc7d3d6d01abdbe6 Mon Sep 17 00:00:00 2001 From: Oksana Salyk Date: Mon, 19 Jan 2026 13:33:43 +0100 Subject: [PATCH 01/16] common: update PMDK to a newer version Signed-off-by: Oksana Salyk --- utils/build.config | 2 +- utils/rpms/daos.changelog | 3 +++ utils/rpms/daos.spec | 2 +- utils/rpms/package_info.sh | 2 +- utils/rpms/pmdk.changelog | 3 +++ 5 files changed, 9 insertions(+), 3 deletions(-) diff --git a/utils/build.config b/utils/build.config index c36fbd2a043..0241ac7ed46 100644 --- a/utils/build.config +++ b/utils/build.config @@ -4,7 +4,7 @@ component=daos [commit_versions] argobots=v1.2 fused=v1.0.0 -pmdk=2.1.2 +pmdk=2.1.3 isal=v2.31.1 isal_crypto=v2.25.0 spdk=v24.09 diff --git a/utils/rpms/daos.changelog b/utils/rpms/daos.changelog index 40e3d18fde6..185eebf0f18 100644 --- a/utils/rpms/daos.changelog +++ b/utils/rpms/daos.changelog @@ -1,4 +1,7 @@ %changelog +* Mon Jan 19 2026 Oksana Salyk 2.7.103-2 +- Update PMDK to release 2.1.3 + * Fri Dec 19 2025 Dalton Bohning 2.7.103-1 - Bump version to 2.7.103 diff --git a/utils/rpms/daos.spec b/utils/rpms/daos.spec index a8f5da38d1f..7898eb2c3c6 100644 --- a/utils/rpms/daos.spec +++ b/utils/rpms/daos.spec @@ -25,7 +25,7 @@ Name: daos Version: 2.7.103 -Release: 1%{?relval}%{?dist} +Release: 2%{?relval}%{?dist} Summary: DAOS Storage Engine License: BSD-2-Clause-Patent diff --git a/utils/rpms/package_info.sh b/utils/rpms/package_info.sh index cc3be377607..f365631e5c5 100644 --- a/utils/rpms/package_info.sh +++ b/utils/rpms/package_info.sh @@ -44,7 +44,7 @@ export mercury_full="${mercury_version}-${mercury_release}" export argobots_version="1.2" export argobots_release="4${distro_name}" export argobots_full="${argobots_version}-${argobots_release}" -export pmdk_version="2.1.2" +export pmdk_version="2.1.3" export pmdk_release="1${distro_name}" export pmdk_full="${pmdk_version}-${pmdk_release}" export isal_version="2.31.1" diff --git a/utils/rpms/pmdk.changelog b/utils/rpms/pmdk.changelog index d4cd893efeb..eb01e1fbc3d 100644 --- a/utils/rpms/pmdk.changelog +++ b/utils/rpms/pmdk.changelog @@ -1,4 +1,7 @@ %changelog +* Mon Jan 19 2026 Oksana Salyk - 2.1.3-1 +- Update to release 2.1.3 + * Wed Nov 05 2025 Tomasz Gromadzki - 2.1.2-1 - Update to release 2.1.2 From 5e1b5be49ac22dcb1b2a0bedea5bdb20161c4163 Mon Sep 17 00:00:00 2001 From: Oksana Salyk Date: Mon, 19 Jan 2026 14:58:23 +0100 Subject: [PATCH 02/16] update pmdk.changelog Signed-off-by: Oksana Salyk --- utils/rpms/pmdk.changelog | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/utils/rpms/pmdk.changelog b/utils/rpms/pmdk.changelog index eb01e1fbc3d..854108bc6c1 100644 --- a/utils/rpms/pmdk.changelog +++ b/utils/rpms/pmdk.changelog @@ -1,9 +1,18 @@ %changelog * Mon Jan 19 2026 Oksana Salyk - 2.1.3-1 -- Update to release 2.1.3 +- Update to release 2.1.3: + - Expand the sds.at_create CTL to cover disabling the bad block checking feature to avoid a stack overflow caused by NDCTL use (DAOS-18296). + - Fix an issue in the PMEMOBJ allocator with a potential to corrupt the allocator's metadata (DAOS-18195). * Wed Nov 05 2025 Tomasz Gromadzki - 2.1.2-1 -- Update to release 2.1.2 +- Update to release 2.1.2: + - Expanded the sds.at_create CTL to also cover pmemobj_open() (DAOS-17449) + - Previously, this CTL affected only pmemobj_create(). + - Now, it affects both pmemobj_create() and pmemobj_open(). + - pmemobj_open() won't be able to open a pool with SDS enabled if the feature is currently + force-disabled. + - Conversely, pmemobj_open() does not issue a warning when attempting to open a pool with SDS disabled + while the feature is force-disabled. * Fri Oct 31 2025 Tomasz Gromadzki - 2.1.0-7 - Restore the RPM changelog, which has not been available since version 2.1.0-4. From a7ff353170f8823529575b10e8d8484a4e2199e9 Mon Sep 17 00:00:00 2001 From: Oksana Salyk Date: Mon, 19 Jan 2026 15:37:18 +0100 Subject: [PATCH 03/16] change pmdk_release value Signed-off-by: Oksana Salyk --- utils/rpms/package_info.sh | 2 +- utils/rpms/pmdk.changelog | 22 ++++++++++------------ 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/utils/rpms/package_info.sh b/utils/rpms/package_info.sh index f365631e5c5..6ba1ae8a0a6 100644 --- a/utils/rpms/package_info.sh +++ b/utils/rpms/package_info.sh @@ -45,7 +45,7 @@ export argobots_version="1.2" export argobots_release="4${distro_name}" export argobots_full="${argobots_version}-${argobots_release}" export pmdk_version="2.1.3" -export pmdk_release="1${distro_name}" +export pmdk_release="0${distro_name}" export pmdk_full="${pmdk_version}-${pmdk_release}" export isal_version="2.31.1" export isal_release="8${distro_name}" diff --git a/utils/rpms/pmdk.changelog b/utils/rpms/pmdk.changelog index 854108bc6c1..001b663b230 100644 --- a/utils/rpms/pmdk.changelog +++ b/utils/rpms/pmdk.changelog @@ -1,18 +1,16 @@ %changelog -* Mon Jan 19 2026 Oksana Salyk - 2.1.3-1 -- Update to release 2.1.3: - - Expand the sds.at_create CTL to cover disabling the bad block checking feature to avoid a stack overflow caused by NDCTL use (DAOS-18296). - - Fix an issue in the PMEMOBJ allocator with a potential to corrupt the allocator's metadata (DAOS-18195). +* Mon Jan 19 2026 Oksana Salyk - 2.1.3-0 +- Expand the sds.at_create CTL to disable unnecessary bad-block checking when running PMem, preventing the stack overflow (DAOS-18296). +- Fix an issue in the PMEMOBJ allocator with a potential to corrupt the allocator's metadata (DAOS-18195). * Wed Nov 05 2025 Tomasz Gromadzki - 2.1.2-1 -- Update to release 2.1.2: - - Expanded the sds.at_create CTL to also cover pmemobj_open() (DAOS-17449) - - Previously, this CTL affected only pmemobj_create(). - - Now, it affects both pmemobj_create() and pmemobj_open(). - - pmemobj_open() won't be able to open a pool with SDS enabled if the feature is currently - force-disabled. - - Conversely, pmemobj_open() does not issue a warning when attempting to open a pool with SDS disabled - while the feature is force-disabled. +- Expand the sds.at_create CTL to also cover pmemobj_open() (DAOS-17449) + - Previously, this CTL affected only pmemobj_create(). + - Now, it affects both pmemobj_create() and pmemobj_open(). + - pmemobj_open() won't be able to open a pool with SDS enabled if the feature is currently + force-disabled. + - Conversely, pmemobj_open() does not issue a warning when attempting to open a pool with SDS disabled + while the feature is force-disabled. * Fri Oct 31 2025 Tomasz Gromadzki - 2.1.0-7 - Restore the RPM changelog, which has not been available since version 2.1.0-4. From c0d934105af03b9bed14009c816bdf713592f36c Mon Sep 17 00:00:00 2001 From: Oksana Salyk Date: Mon, 19 Jan 2026 15:46:43 +0100 Subject: [PATCH 04/16] improve code style Signed-off-by: Oksana Salyk --- utils/rpms/pmdk.changelog | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/utils/rpms/pmdk.changelog b/utils/rpms/pmdk.changelog index 001b663b230..a1c84b15ae0 100644 --- a/utils/rpms/pmdk.changelog +++ b/utils/rpms/pmdk.changelog @@ -1,15 +1,15 @@ %changelog * Mon Jan 19 2026 Oksana Salyk - 2.1.3-0 -- Expand the sds.at_create CTL to disable unnecessary bad-block checking when running PMem, preventing the stack overflow (DAOS-18296). +- Expand the sds.at_create CTL to disable unnecessary bad-block checking when running without PMem, preventing the stack overflow (DAOS-18296). - Fix an issue in the PMEMOBJ allocator with a potential to corrupt the allocator's metadata (DAOS-18195). * Wed Nov 05 2025 Tomasz Gromadzki - 2.1.2-1 - Expand the sds.at_create CTL to also cover pmemobj_open() (DAOS-17449) - - Previously, this CTL affected only pmemobj_create(). - - Now, it affects both pmemobj_create() and pmemobj_open(). - - pmemobj_open() won't be able to open a pool with SDS enabled if the feature is currently - force-disabled. - - Conversely, pmemobj_open() does not issue a warning when attempting to open a pool with SDS disabled + - Previously, this CTL affected only pmemobj_create(). + - Now, it affects both pmemobj_create() and pmemobj_open(). + - pmemobj_open() won't be able to open a pool with SDS enabled if the feature is currently + force-disabled. + - Conversely, pmemobj_open() does not issue a warning when attempting to open a pool with SDS disabled while the feature is force-disabled. * Fri Oct 31 2025 Tomasz Gromadzki - 2.1.0-7 From dfa979817ad77c0daea640b8c0fd0f01b6ff7284 Mon Sep 17 00:00:00 2001 From: Oksana Salyk Date: Mon, 19 Jan 2026 16:01:18 +0100 Subject: [PATCH 05/16] update pmdk.sh file Signed-off-by: Oksana Salyk --- utils/rpms/pmdk.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/utils/rpms/pmdk.sh b/utils/rpms/pmdk.sh index 11dc0490cc5..d26dbeee2ac 100755 --- a/utils/rpms/pmdk.sh +++ b/utils/rpms/pmdk.sh @@ -1,5 +1,6 @@ #!/bin/bash # (C) Copyright 2025 Google LLC +# Copyright 2026 Hewlett Packard Enterprise Development LP set -eEuo pipefail root="$(realpath "$(dirname "${BASH_SOURCE[0]}")")" . "${root}/fpm_common.sh" @@ -15,7 +16,7 @@ LICENSE="BSD-3-Clause" ARCH=${isa} DESCRIPTION="The Persistent Memory Development Kit is a collection of libraries for using memory-mapped persistence, optimized specifically for persistent memory." -URL="https://github.com/pmem/pmdk" +URL="https://github.com/daos-stack/pmdk" RPM_CHANGELOG="pmdk.changelog" files=() From ab1f3b10abab866c4995214f5383c6b85042715c Mon Sep 17 00:00:00 2001 From: Oksana Salyk Date: Mon, 19 Jan 2026 16:16:44 +0100 Subject: [PATCH 06/16] Update PMDK URLs Signed-off-by: Oksana Salyk --- docs/admin/hardware.md | 2 +- docs/admin/troubleshooting.md | 2 +- docs/overview/terminology.md | 2 +- src/vos/README.md | 4 ++-- third_party_programs.txt | 6 +++--- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/admin/hardware.md b/docs/admin/hardware.md index 3f4658cf40b..c3bf84a4d87 100644 --- a/docs/admin/hardware.md +++ b/docs/admin/hardware.md @@ -21,7 +21,7 @@ servers. DAOS requires a 64-bit processor architecture and is primarily developed on Intel x86\_64 architecture. The DAOS software and the libraries it depends on (e.g., [ISA-L](https://github.com/intel/isa-l), -[SPDK](https://spdk.io/), [PMDK](https://github.com/pmem/pmdk/), and +[SPDK](https://spdk.io/), [PMDK](https://github.com/daos-stack/pmdk/), and [DPDK](https://www.dpdk.org/) can take advantage of Intel Streaming SIMD (SSE) and Intel Advanced Vector Extensions (AVX). diff --git a/docs/admin/troubleshooting.md b/docs/admin/troubleshooting.md index 6365142b5cd..8d615e4991f 100644 --- a/docs/admin/troubleshooting.md +++ b/docs/admin/troubleshooting.md @@ -1003,7 +1003,7 @@ Please refer the [ndctl list](https://docs.pmem.io/ndctl-user-guide/ndctl-man-pa The pmempool is a management tool for Persistent Memory pool files created by PMDK libraries. DAOS uses the PMDK library to manage persistence inside ext4 files. -[pmempool](https://github.com/pmem/pmdk/blob/stable-2.0/doc/pmempool/pmempool-check.1.md) can check consistency of a given pool file. +[pmempool](https://github.com/daos-stack/pmdk/blob/stable-2.1/doc/pmempool/pmempool-check.1.md) can check consistency of a given pool file. It can be run with -r (repair) option which can fix some of the issues with pool file. DAOS will have more number of such pool file (vos-*), based on number of targets mention per daos engine. User may need to check each vos pool file for corruption on faulty pool. diff --git a/docs/overview/terminology.md b/docs/overview/terminology.md index 677e03f579c..4815199e6cc 100644 --- a/docs/overview/terminology.md +++ b/docs/overview/terminology.md @@ -32,7 +32,7 @@ |[OFI](https://ofiwg.github.io/libfabric/)|Open Fabrics Interfaces| |OS|Operating System| |PM|Persistent Memory| -|[PMDK](https://github.com/pmem/pmdk)|Persistent Memory Devevelopment Kit| +|[PMDK](https://github.com/daos-stack/pmdk)|Persistent Memory Devevelopment Kit| |[RAFT](https://raft.github.io/)|Raft is a consensus algorithm used to distribute state transitions among DAOS server nodes.| |RAS|Reliability, Availability & Serviceability| |RDB|Replicated Database, containing pool metadata and maintained across DAOS servers using the Raft algorithm.| diff --git a/src/vos/README.md b/src/vos/README.md index db3c83c8229..5a65e7feed1 100644 --- a/src/vos/README.md +++ b/src/vos/README.md @@ -58,7 +58,7 @@ Please refer to the Blob I/O (BIO) module for mor Special care is taken when developing and modifying the VOS layer because any software bug could corrupt data structures in persistent memory. The VOS, therefore, checksums its persistent data structures despite the presence of hardware ECC. -The VOS provides a lightweight I/O stack fully in user space, leveraging the PMDK open-source libraries developed to support this programming model. +The VOS provides a lightweight I/O stack fully in user space, leveraging the PMDK open-source libraries developed to support this programming model. @@ -73,7 +73,7 @@ It is worth noting that such transactions are different from the DAOS transactio Persistent memory transactions must guarantee consistency of VOS internal data structures when processing incoming requests, regardless of their epoch number. Transactions over persistent memory can be implemented in many different ways, e.g., undo logs, redo logs, a combination of both, or copy-on-write. -PMDK is an open source collection of libraries for using persistent memory, optimized specifically for NVRAM. +PMDK is an open source collection of libraries for using persistent memory, optimized specifically for NVRAM. Among these is the libpmemobj library, which implements relocatable persistent heaps called persistent memory pools. This includes memory allocation, transactions, and general facilities for persistent memory programming. The transactions are local to one thread (not multi-threaded) and rely on undo logs. diff --git a/third_party_programs.txt b/third_party_programs.txt index a98b70907d6..3fd62a5416a 100644 --- a/third_party_programs.txt +++ b/third_party_programs.txt @@ -117,9 +117,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Copyright (c) 2009,2014 Google Inc. All rights reserved. pmdk (BSD 3-clause "New" or "Revised" License) - https://github.com/pmem/pmdk - https://github.com/pmem/pmdk/blob/master/LICENSE - Copyright 2014-2020, Intel Corporation + https://github.com/daos-stack/pmdk + https://github.com/daos-stack/pmdk/blob/master/LICENSE + Copyright 2014-2024, Intel Corporation Portable Hardware Locality (hwloc) (BSD 3-clause "New" or "Revised" License) https://www.open-mpi.org/projects/hwloc/ From 42dcc2579fc289abeea67a3539e218f24a4a3e4e Mon Sep 17 00:00:00 2001 From: Oksana Salyk Date: Wed, 21 Jan 2026 12:52:17 +0100 Subject: [PATCH 07/16] Update pmdk.changelog Doc-only: true Signed-off-by: Oksana Salyk --- utils/rpms/pmdk.changelog | 1 + 1 file changed, 1 insertion(+) diff --git a/utils/rpms/pmdk.changelog b/utils/rpms/pmdk.changelog index a1c84b15ae0..ffa32408ffb 100644 --- a/utils/rpms/pmdk.changelog +++ b/utils/rpms/pmdk.changelog @@ -31,6 +31,7 @@ * Mon Aug 11 2025 Jeff Olivier - 2.1.0-4 - Switch to fpm build for RPMs +- New location of the PMDK repository (https://github.com/daos-stack/pmdk) * Wed Nov 06 2024 Tomasz Gromadzki - 2.1.0-3 - Apply patches to silence annoying error messages on: From 7761d2ab2fe97383bcc75f430efc047387f9607b Mon Sep 17 00:00:00 2001 From: Tomasz Gromadzki Date: Wed, 4 Feb 2026 21:34:36 +0100 Subject: [PATCH 08/16] Update daos.changelog from master to resolve conflict Signed-off-by: Tomasz Gromadzki --- utils/rpms/daos.changelog | 6 +++++- utils/rpms/daos.spec | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/utils/rpms/daos.changelog b/utils/rpms/daos.changelog index 185eebf0f18..1b19930d371 100644 --- a/utils/rpms/daos.changelog +++ b/utils/rpms/daos.changelog @@ -1,7 +1,11 @@ %changelog -* Mon Jan 19 2026 Oksana Salyk 2.7.103-2 +* Mon Jan 19 2026 Oksana Salyk 2.7.103-3 - Update PMDK to release 2.1.3 +* Fri Jan 16 2026 Jerome Soumagne 2.7.103-2 +- Drop libfabric-devel build requirement +- Drop libfabric requirement that is already provided by mercury-libfabric + * Fri Dec 19 2025 Dalton Bohning 2.7.103-1 - Bump version to 2.7.103 diff --git a/utils/rpms/daos.spec b/utils/rpms/daos.spec index 7898eb2c3c6..8a190f8283a 100644 --- a/utils/rpms/daos.spec +++ b/utils/rpms/daos.spec @@ -25,7 +25,7 @@ Name: daos Version: 2.7.103 -Release: 2%{?relval}%{?dist} +Release: 3%{?relval}%{?dist} Summary: DAOS Storage Engine License: BSD-2-Clause-Patent From 634e9d7aa9600484d5adfab23748e428e8294d52 Mon Sep 17 00:00:00 2001 From: Tomasz Gromadzki Date: Wed, 4 Feb 2026 21:48:36 +0100 Subject: [PATCH 09/16] Revert "Update daos.changelog from master to resolve conflict" This reverts commit 7761d2ab2fe97383bcc75f430efc047387f9607b. --- utils/rpms/daos.changelog | 6 +----- utils/rpms/daos.spec | 2 +- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/utils/rpms/daos.changelog b/utils/rpms/daos.changelog index 1b19930d371..185eebf0f18 100644 --- a/utils/rpms/daos.changelog +++ b/utils/rpms/daos.changelog @@ -1,11 +1,7 @@ %changelog -* Mon Jan 19 2026 Oksana Salyk 2.7.103-3 +* Mon Jan 19 2026 Oksana Salyk 2.7.103-2 - Update PMDK to release 2.1.3 -* Fri Jan 16 2026 Jerome Soumagne 2.7.103-2 -- Drop libfabric-devel build requirement -- Drop libfabric requirement that is already provided by mercury-libfabric - * Fri Dec 19 2025 Dalton Bohning 2.7.103-1 - Bump version to 2.7.103 diff --git a/utils/rpms/daos.spec b/utils/rpms/daos.spec index 8a190f8283a..7898eb2c3c6 100644 --- a/utils/rpms/daos.spec +++ b/utils/rpms/daos.spec @@ -25,7 +25,7 @@ Name: daos Version: 2.7.103 -Release: 3%{?relval}%{?dist} +Release: 2%{?relval}%{?dist} Summary: DAOS Storage Engine License: BSD-2-Clause-Patent From 83c74276954667be617ca538a03601ffb347235c Mon Sep 17 00:00:00 2001 From: Tomasz Gromadzki Date: Tue, 17 Feb 2026 14:18:44 +0100 Subject: [PATCH 10/16] DAOS-18596 common: use libpmemobj1-devel on Leap Use libpmemobj1-devel to build Leap RPMs instead of outdated libpmemobj-devel. Remove distribution suffix as it is irrelevant Update dependency to PMDK version 2.1.2-1 as it is the latest stable version used for master validation. Signed-off-by: Tomasz Gromadzki Allow-unstable-test: true Skip-func-test-leap15: false --- .../post_provision_config_common_functions.sh | 2 +- utils/rpms/daos.spec | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/ci/provisioning/post_provision_config_common_functions.sh b/ci/provisioning/post_provision_config_common_functions.sh index 0b3d9413ab2..5c5e2a50fbd 100755 --- a/ci/provisioning/post_provision_config_common_functions.sh +++ b/ci/provisioning/post_provision_config_common_functions.sh @@ -323,7 +323,7 @@ post_provision_config_nodes() { rm -f "$REPOS_DIR"/*_job_daos-stack_job_*_job_*.repo time dnf -y erase fio fuse ior-hpc mpich-autoload \ argobots cart daos daos-client daos-spdk dpdk \ - libisa-l libpmemobj mercury mpich \ + libisa-l libpmemobj libpmemobj1 mercury mpich \ pmix protobuf-c spdk libfabric libpmem \ munge-libs munge slurm \ slurm-example-configs slurmctld slurm-slurmmd diff --git a/utils/rpms/daos.spec b/utils/rpms/daos.spec index b4b8af94452..7adcecc37e9 100644 --- a/utils/rpms/daos.spec +++ b/utils/rpms/daos.spec @@ -61,7 +61,11 @@ BuildRequires: libjson-c-devel BuildRequires: boost-devel %endif %if %{with server} -BuildRequires: libpmemobj-devel >= 2.1.0 +%if (0%{?suse_version} >= 1500) +BuildRequires: libpmemobj1-devel >= 2.1.2-1 +%else +BuildRequires: libpmemobj-devel >= 2.1.2-1 +%endif %endif BuildRequires: fused-devel %if (0%{?suse_version} >= 1500) @@ -164,10 +168,10 @@ Requires: ndctl # needed to set PMem configuration goals in BIOS through control-plane %if (0%{?suse_version} >= 1500) Requires: ipmctl >= 03.00.00.0423 -Requires: libpmemobj1 >= 2.1.0-1.suse1500 +Requires: libpmemobj1 >= 2.1.2-1 %else Requires: ipmctl >= 03.00.00.0468 -Requires: libpmemobj >= 2.1.0-1%{?dist} +Requires: libpmemobj >= 2.1.2-1 %endif Requires: mercury >= %{mercury_version} Requires(post): /sbin/ldconfig From 0055eb7382b052d16f334e1bab855076fe02f05c Mon Sep 17 00:00:00 2001 From: Tomasz Gromadzki Date: Wed, 18 Feb 2026 10:01:28 +0100 Subject: [PATCH 11/16] Pin PMDK version to 2.1.3-0 Signed-off-by: Tomasz Gromadzki Skip-func-test-leap15: false --- utils/rpms/daos.spec | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/utils/rpms/daos.spec b/utils/rpms/daos.spec index 0e17fcddcf2..12e9fadca7e 100644 --- a/utils/rpms/daos.spec +++ b/utils/rpms/daos.spec @@ -62,11 +62,11 @@ BuildRequires: boost-devel %endif %if %{with server} %if (0%{?suse_version} >= 1500) -BuildRequires: libpmemobj1-devel >= 2.1.3-1 -BuildRequires: libpmemobj1-devel < 2.1.3-2 +BuildRequires: libpmemobj1-devel >= 2.1.3-0 +BuildRequires: libpmemobj1-devel < 2.1.3-1 %else -BuildRequires: libpmemobj-devel >= 2.1.3-1 -BuildRequires: libpmemobj-devel < 2.1.3-2 +BuildRequires: libpmemobj-devel >= 2.1.3-0 +BuildRequires: libpmemobj-devel < 2.1.3-1 %endif %endif BuildRequires: fused-devel @@ -170,12 +170,12 @@ Requires: ndctl # needed to set PMem configuration goals in BIOS through control-plane %if (0%{?suse_version} >= 1500) Requires: ipmctl >= 03.00.00.0423 -Requires: libpmemobj1 >= 2.1.3-1 -Requires: libpmemobj1 < 2.1.3-2 +Requires: libpmemobj1 >= 2.1.3-0 +Requires: libpmemobj1 < 2.1.3-1 %else Requires: ipmctl >= 03.00.00.0468 -Requires: libpmemobj >= 2.1.3-1 -Requires: libpmemobj1 < 2.1.3-2 +Requires: libpmemobj >= 2.1.3-0 +Requires: libpmemobj1 < 2.1.3-1 %endif Requires: mercury >= %{mercury_version} Requires(post): /sbin/ldconfig From 198206a30af8bfbec3d82a988bdad50f36961151 Mon Sep 17 00:00:00 2001 From: Tomasz Gromadzki Date: Tue, 24 Feb 2026 17:22:54 +0100 Subject: [PATCH 12/16] Fix libpmemobj-devel RPM name for Leap Signed-off-by: Tomasz Gromadzki --- utils/rpms/daos.spec | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/utils/rpms/daos.spec b/utils/rpms/daos.spec index 12e9fadca7e..fa5784610f5 100644 --- a/utils/rpms/daos.spec +++ b/utils/rpms/daos.spec @@ -61,13 +61,7 @@ BuildRequires: libjson-c-devel BuildRequires: boost-devel %endif %if %{with server} -%if (0%{?suse_version} >= 1500) -BuildRequires: libpmemobj1-devel >= 2.1.3-0 -BuildRequires: libpmemobj1-devel < 2.1.3-1 -%else -BuildRequires: libpmemobj-devel >= 2.1.3-0 -BuildRequires: libpmemobj-devel < 2.1.3-1 -%endif +BuildRequires: libpmemobj-devel = 2.1.3-0 %endif BuildRequires: fused-devel %if (0%{?suse_version} >= 1500) @@ -170,12 +164,10 @@ Requires: ndctl # needed to set PMem configuration goals in BIOS through control-plane %if (0%{?suse_version} >= 1500) Requires: ipmctl >= 03.00.00.0423 -Requires: libpmemobj1 >= 2.1.3-0 -Requires: libpmemobj1 < 2.1.3-1 +Requires: libpmemobj1 = 2.1.3-0 %else Requires: ipmctl >= 03.00.00.0468 -Requires: libpmemobj >= 2.1.3-0 -Requires: libpmemobj1 < 2.1.3-1 +Requires: libpmemobj = 2.1.3-0 %endif Requires: mercury >= %{mercury_version} Requires(post): /sbin/ldconfig From e225af4578d19a41c8d883e6f184dfbfea635da7 Mon Sep 17 00:00:00 2001 From: Tomasz Gromadzki Date: Wed, 25 Feb 2026 11:26:59 +0100 Subject: [PATCH 13/16] Fix required version Signed-off-by: Tomasz Gromadzki --- utils/rpms/daos.sh | 2 +- utils/rpms/daos.spec | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/utils/rpms/daos.sh b/utils/rpms/daos.sh index 1171a079746..2db52a22eba 100755 --- a/utils/rpms/daos.sh +++ b/utils/rpms/daos.sh @@ -184,7 +184,7 @@ EOF EXTRA_OPTS+=("--rpm-attr" "2755,root,daos_server:${bindir}/daos_server") DEPENDS=( "daos = ${VERSION}-${RELEASE}" "daos-spdk = ${daos_spdk_full}" ) - DEPENDS+=( "${pmemobj_lib} >= ${pmdk_full}" "${argobots_lib} >= ${argobots_full}" ) + DEPENDS+=( "${pmemobj_lib} = ${pmdk_full}" "${argobots_lib} >= ${argobots_full}" ) DEPENDS+=( "${isal_crypto_lib} >= ${isal_crypto_version}" "numactl" "pciutils" ) build_package "daos-server" diff --git a/utils/rpms/daos.spec b/utils/rpms/daos.spec index fa5784610f5..dfc9d405a38 100644 --- a/utils/rpms/daos.spec +++ b/utils/rpms/daos.spec @@ -61,7 +61,7 @@ BuildRequires: libjson-c-devel BuildRequires: boost-devel %endif %if %{with server} -BuildRequires: libpmemobj-devel = 2.1.3-0 +BuildRequires: libpmemobj-devel >= 2.1.3-0 %endif BuildRequires: fused-devel %if (0%{?suse_version} >= 1500) @@ -164,10 +164,10 @@ Requires: ndctl # needed to set PMem configuration goals in BIOS through control-plane %if (0%{?suse_version} >= 1500) Requires: ipmctl >= 03.00.00.0423 -Requires: libpmemobj1 = 2.1.3-0 +Requires: libpmemobj1 >= 2.1.3-0 %else Requires: ipmctl >= 03.00.00.0468 -Requires: libpmemobj = 2.1.3-0 +Requires: libpmemobj >= 2.1.3-0 %endif Requires: mercury >= %{mercury_version} Requires(post): /sbin/ldconfig From dfbfe8a97c64861ec6a1c90ea8d99c14d43a3a18 Mon Sep 17 00:00:00 2001 From: Tomasz Gromadzki Date: Wed, 25 Feb 2026 13:19:37 +0100 Subject: [PATCH 14/16] Trigger leap tests Signed-off-by: Tomasz Gromadzki Cancel-prev-build: false Priority: 2 Skip-build-el8-gcc: true Skip-build-el9-gcc: true Skip-unit-tests:true Skip-unit-test: true Skip-NLT: true Skip-unit-test-memcheck: true Skip-func-test-el8: true Skip-func-test-el9: true Skip-func-test-leap15: false Skip-fault-injection-test: true Skip-test-el-8.6-rpms: true Skip-test-leap-15-rpms: false Skip-func-hw-test: true From eb68896fb1da9659235bf6285afa428b959242bd Mon Sep 17 00:00:00 2001 From: Tomasz Gromadzki Date: Wed, 25 Feb 2026 15:39:06 +0100 Subject: [PATCH 15/16] libpmem-dev is required for leap15 on 2.6 branch We need proper package for release/2.6 branch as it expects libpmemobj-devel instead of libpmem1-devel. Signed-off-by: Tomasz Gromadzki --- utils/rpms/package_info.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/utils/rpms/package_info.sh b/utils/rpms/package_info.sh index 579cdbf9dd6..4428a374c86 100644 --- a/utils/rpms/package_info.sh +++ b/utils/rpms/package_info.sh @@ -104,9 +104,9 @@ set_lib_name mercury_libfabric lib mercury-libfabric mercury-libfabric mercury-l export mercury_libfabric_lib set_lib_name pmemobj lib libpmemobj libpmemobj1 libpmemobj1 -set_lib_name pmemobj dev libpmemobj libpmemobj1 libpmemobj1 +set_lib_name pmemobj dev libpmemobj libpmemobj libpmemobj set_lib_name pmem lib libpmem libpmem1 libpmem1 -set_lib_name pmem dev libpmem libpmem libpmem1 +set_lib_name pmem dev libpmem libpmem libpmem set_lib_name pmempool lib libpmempool libpmempool1 libpmempool1 export pmem_lib export pmem_dev From ad33a938f555be624860ede9f0e0e09599cd85c1 Mon Sep 17 00:00:00 2001 From: Tomasz Gromadzki Date: Mon, 2 Mar 2026 12:55:29 +0100 Subject: [PATCH 16/16] Update release version (based on review feedback) Signed-off-by: Tomasz Gromadzki Priority: 2 --- utils/rpms/daos.spec | 6 +++--- utils/rpms/package_info.sh | 2 +- utils/rpms/pmdk.changelog | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/utils/rpms/daos.spec b/utils/rpms/daos.spec index dfc9d405a38..bbba1cf3406 100644 --- a/utils/rpms/daos.spec +++ b/utils/rpms/daos.spec @@ -61,7 +61,7 @@ BuildRequires: libjson-c-devel BuildRequires: boost-devel %endif %if %{with server} -BuildRequires: libpmemobj-devel >= 2.1.3-0 +BuildRequires: libpmemobj-devel >= 2.1.3 %endif BuildRequires: fused-devel %if (0%{?suse_version} >= 1500) @@ -164,10 +164,10 @@ Requires: ndctl # needed to set PMem configuration goals in BIOS through control-plane %if (0%{?suse_version} >= 1500) Requires: ipmctl >= 03.00.00.0423 -Requires: libpmemobj1 >= 2.1.3-0 +Requires: libpmemobj1 >= 2.1.3 %else Requires: ipmctl >= 03.00.00.0468 -Requires: libpmemobj >= 2.1.3-0 +Requires: libpmemobj >= 2.1.3 %endif Requires: mercury >= %{mercury_version} Requires(post): /sbin/ldconfig diff --git a/utils/rpms/package_info.sh b/utils/rpms/package_info.sh index 4428a374c86..ef3338124d4 100644 --- a/utils/rpms/package_info.sh +++ b/utils/rpms/package_info.sh @@ -51,7 +51,7 @@ export argobots_version="1.2" export argobots_release="4${distro_name}" export argobots_full="${argobots_version}-${argobots_release}" export pmdk_version="2.1.3" -export pmdk_release="0${distro_name}" +export pmdk_release="1${distro_name}" export pmdk_full="${pmdk_version}-${pmdk_release}" export isal_version="2.31.1" export isal_release="8${distro_name}" diff --git a/utils/rpms/pmdk.changelog b/utils/rpms/pmdk.changelog index ffa32408ffb..0b6f288aa1f 100644 --- a/utils/rpms/pmdk.changelog +++ b/utils/rpms/pmdk.changelog @@ -1,5 +1,5 @@ %changelog -* Mon Jan 19 2026 Oksana Salyk - 2.1.3-0 +* Mon Jan 19 2026 Oksana Salyk - 2.1.3-1 - Expand the sds.at_create CTL to disable unnecessary bad-block checking when running without PMem, preventing the stack overflow (DAOS-18296). - Fix an issue in the PMEMOBJ allocator with a potential to corrupt the allocator's metadata (DAOS-18195).