SHA256
6
0
forked from pool/openmpi5
Files
openmpi5/mtl-ofi-fix-missing-definition-of-container_of.patch

25 lines
714 B
Diff
Raw Normal View History

Accepting request 1232843 from home:NMorey:branches:science:HPC - Add mtl-ofi-fix-missing-definition-of-container_of.patch to fix compilation issue with libfabric >= 2.0 - Update to 5.0.6 (jsc#PED-11356): - Session Management Enhancements: - Finalization Control: Ensures proper finalization of classes when references to the OPAL utility layer reach zero. A new smoke test has been added to validate this behavior. - Multiple Init/Finalize Handling: Improvements to handling session multiple initializations and finalizations, addressing issues with parameter management and session destruction. - MPI Communication and Resource Management: - Info Duplication: Enhanced `MPI_Info_dup` function to ensure consistent key management across duplicated info objects, supporting better memory and resource handling. - OFI/Initialization Improvements: Refactored code for OFI common components to support session-based initialization models per MPI 4 standards. - Resource Leak Fixes: Addressed memory leaks and reference count issues in several components to improve memory management and stability in high-demand environments. - Detailed Locking Protocol: Modified default file-locking protocols in UFS component to ensure data consistency, especially when using data-sieving operations, which require broader locking. - MPI_T Interface Enhancements: Modified MCA parameter settings to allow runtime tuning of collectives through the MPI_T interface, adding flexibility for dynamic rules in collective operations. - Corrected various documentation typos and clarified parameter settings in several API references, improving readability and usability for end users. - Disable LTO as it is not supported by OpenPMIX - Disable direct verbs (openib) support. It has been deprecated since v4.x. OBS-URL: https://build.opensuse.org/request/show/1232843 OBS-URL: https://build.opensuse.org/package/show/science:HPC/openmpi5?expand=0&rev=21
2024-12-20 14:00:31 +00:00
commit 75b6dad5959ba75fcba8c64cc0a364d820e03ebc
Author: Nicolas Morey <nmorey@suse.com>
Date: Fri Dec 20 12:44:38 2024 +0100
mtl: ofi: fix missing definition of container_of
Signed-off-by: Nicolas Morey <nmorey@suse.com>
diff --git ompi/mca/mtl/ofi/mtl_ofi_request.h ompi/mca/mtl/ofi/mtl_ofi_request.h
index f68c2a91baa0..6d748fd59bdc 100644
--- ompi/mca/mtl/ofi/mtl_ofi_request.h
+++ ompi/mca/mtl/ofi/mtl_ofi_request.h
@@ -15,6 +15,11 @@
#include "mtl_ofi.h"
+#ifndef container_of
+#define container_of(ptr, type, field) \
+ ((type *) ((char *)ptr - offsetof(type, field)))
+#endif
+
#define TO_OFI_REQ(_ptr_ctx) \
container_of((_ptr_ctx), struct ompi_mtl_ofi_request_t, ctx)