public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Miroslav Šulc" <fordfrog@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-cluster/openmpi/, sys-cluster/openmpi/files/
Date: Thu,  4 Jul 2024 10:00:10 +0000 (UTC)	[thread overview]
Message-ID: <1720087206.974f671712dfe56dd3a83032cb9d2e7680bc9a5e.fordfrog@gentoo> (raw)

commit:     974f671712dfe56dd3a83032cb9d2e7680bc9a5e
Author:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
AuthorDate: Thu Jul  4 09:59:47 2024 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Thu Jul  4 10:00:06 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=974f6717

sys-cluster/openmpi: fixed incompatible pointers in 4.1.6

Bug: https://bugs.gentoo.org/935267
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 .../openmpi-4.1.6-incompatible-pointers.patch      | 181 +++++++++++++++++++++
 sys-cluster/openmpi/openmpi-4.1.6.ebuild           |   4 +
 2 files changed, 185 insertions(+)

diff --git a/sys-cluster/openmpi/files/openmpi-4.1.6-incompatible-pointers.patch b/sys-cluster/openmpi/files/openmpi-4.1.6-incompatible-pointers.patch
new file mode 100644
index 000000000000..9f9ae4008ad6
--- /dev/null
+++ b/sys-cluster/openmpi/files/openmpi-4.1.6-incompatible-pointers.patch
@@ -0,0 +1,181 @@
+--- a/ompi/mca/io/romio321/romio/adio/common/ad_coll_exch_new.c
++++ b/ompi/mca/io/romio321/romio/adio/common/ad_coll_exch_new.c
+@@ -154,7 +154,7 @@ void ADIOI_Exch_file_views(int myrank, int nprocs, int file_ptr_type,
+     }
+ 
+     MPI_Type_get_extent(fd->filetype, &lb, &filetype_extent);
+-    MPI_Type_size_x(fd->filetype, &filetype_sz);
++    MPI_Type_size_x(fd->filetype, (MPI_Count *)&filetype_sz);
+     if (filetype_extent == filetype_sz) {
+ 	flat_file_p = ADIOI_Add_contig_flattened(fd->filetype);
+ 	flat_file_p->blocklens[0] = memtype_sz*count;
+--- a/ompi/mca/io/romio321/romio/adio/common/ad_read_coll.c
++++ b/ompi/mca/io/romio321/romio/adio/common/ad_read_coll.c
+@@ -851,7 +851,7 @@ static void ADIOI_R_Exchange_data(ADIO_File fd, void *buf, ADIOI_Flatlist_node
+ 		others_req[i].lens[k] = partial_send[i];
+ 	    }
+ 	    ADIOI_Type_create_hindexed_x(count[i],
+-		  &(others_req[i].lens[start_pos[i]]),
++		  (const MPI_Count *)&(others_req[i].lens[start_pos[i]]),
+ 	            &(others_req[i].mem_ptrs[start_pos[i]]), 
+ 			 MPI_BYTE, &send_type);
+ 	    /* absolute displacement; use MPI_BOTTOM in send */
+--- a/ompi/mca/io/romio321/romio/adio/common/ad_write_coll.c
++++ b/ompi/mca/io/romio321/romio/adio/common/ad_write_coll.c
+@@ -610,7 +610,7 @@ static void ADIOI_W_Exchange_data(ADIO_File fd, void *buf, char *write_buf,
+ 		others_req[i].lens[k] = partial_recv[i];
+ 	    }
+ 	    ADIOI_Type_create_hindexed_x(count[i],
+-		     &(others_req[i].lens[start_pos[i]]),
++		     (const MPI_Count *)&(others_req[i].lens[start_pos[i]]),
+ 	             &(others_req[i].mem_ptrs[start_pos[i]]), 
+ 			 MPI_BYTE, recv_types+j);
+ 	    /* absolute displacements; use MPI_BOTTOM in recv */
+--- a/ompi/mca/io/romio321/romio/mpi-io/get_bytoff.c
++++ b/ompi/mca/io/romio321/romio/mpi-io/get_bytoff.c
+@@ -63,7 +63,7 @@ int MPI_File_get_byte_offset(MPI_File fh, MPI_Offset offset, MPI_Offset *disp)
+     MPIO_CHECK_NOT_SEQUENTIAL_MODE(adio_fh, myname, error_code);
+     /* --END ERROR HANDLING-- */
+ 
+-    ADIOI_Get_byte_offset(adio_fh, offset, disp);
++    ADIOI_Get_byte_offset(adio_fh, (ADIO_Offset)offset, (ADIO_Offset *)disp);
+ 
+ fn_exit:
+ 
+--- a/ompi/mca/io/romio321/romio/mpi-io/get_posn.c
++++ b/ompi/mca/io/romio321/romio/mpi-io/get_posn.c
+@@ -52,7 +52,7 @@ int MPI_File_get_position(MPI_File fh, MPI_Offset *offset)
+     MPIO_CHECK_NOT_SEQUENTIAL_MODE(adio_fh, myname, error_code);
+     /* --END ERROR HANDLING-- */
+ 
+-    ADIOI_Get_position(adio_fh, offset);
++    ADIOI_Get_position(adio_fh, (ADIO_Offset *)offset);
+ 
+ fn_exit:
+     return MPI_SUCCESS;
+--- a/ompi/mca/io/romio321/romio/mpi-io/get_posn_sh.c
++++ b/ompi/mca/io/romio321/romio/mpi-io/get_posn_sh.c
+@@ -53,7 +53,8 @@ int MPI_File_get_position_shared(MPI_File fh, MPI_Offset *offset)
+ 
+     ADIOI_TEST_DEFERRED(adio_fh, myname, &error_code);
+ 
+-    ADIO_Get_shared_fp(adio_fh, 0, offset, &error_code);
++
++    ADIO_Get_shared_fp(adio_fh, 0, (ADIO_Offset *)offset, &error_code);
+     /* --BEGIN ERROR HANDLING-- */
+     if (error_code != MPI_SUCCESS)
+ 	error_code = MPIO_Err_return_file(adio_fh, error_code);
+--- a/ompi/mca/io/romio321/romio/mpi-io/seek.c
++++ b/ompi/mca/io/romio321/romio/mpi-io/seek.c
+@@ -73,7 +73,7 @@ int MPI_File_seek(MPI_File fh, MPI_Offset offset, int whence)
+ 	break;
+     case MPI_SEEK_CUR:
+ 	/* find offset corr. to current location of file pointer */
+-	ADIOI_Get_position(adio_fh, &curr_offset);
++	ADIOI_Get_position(adio_fh, (ADIO_Offset *)&curr_offset);
+ 	offset += curr_offset;
+ 
+ 	/* --BEGIN ERROR HANDLING-- */
+@@ -94,7 +94,7 @@ int MPI_File_seek(MPI_File fh, MPI_Offset offset, int whence)
+ 	ADIOI_TEST_DEFERRED(adio_fh, "MPI_File_seek", &error_code);
+ 
+ 	/* find offset corr. to end of file */
+-	ADIOI_Get_eof_offset(adio_fh, &eof_offset);
++	ADIOI_Get_eof_offset(adio_fh, (ADIO_Offset *)&eof_offset);
+ 	offset += eof_offset;
+ 
+ 	/* --BEGIN ERROR HANDLING-- */
+--- a/ompi/mca/io/romio321/romio/mpi-io/seek_sh.c
++++ b/ompi/mca/io/romio321/romio/mpi-io/seek_sh.c
+@@ -101,7 +101,7 @@ int MPI_File_seek_shared(MPI_File fh, MPI_Offset offset, int whence)
+ 	    break;
+ 	case MPI_SEEK_CUR:
+ 	    /* get current location of shared file pointer */
+-	    ADIO_Get_shared_fp(adio_fh, 0, &curr_offset, &error_code);
++	    ADIO_Get_shared_fp(adio_fh, 0, (ADIO_Offset *)&curr_offset, &error_code);
+ 	    /* --BEGIN ERROR HANDLING-- */
+ 	    if (error_code != MPI_SUCCESS)
+ 	    {
+@@ -130,7 +130,7 @@ int MPI_File_seek_shared(MPI_File fh, MPI_Offset offset, int whence)
+ 	    break;
+ 	case MPI_SEEK_END:
+ 	    /* find offset corr. to end of file */
+-	    ADIOI_Get_eof_offset(adio_fh, &eof_offset);
++	    ADIOI_Get_eof_offset(adio_fh, (ADIO_Offset *)&eof_offset);
+ 	    offset += eof_offset;
+ 	    /* --BEGIN ERROR HANDLING-- */
+ 	    if (offset < 0)
+--- a/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c
++++ b/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c
+@@ -638,7 +638,7 @@ static int find_hole(pmix_hwloc_vm_hole_kind_t hkind,
+             switch (hkind) {
+                 case VM_HOLE_BEGIN:
+                     fclose(file);
+-                    return use_hole(0, begin, addrp, size);
++                    return use_hole(0, begin, (unsigned long *)addrp, size);
+ 
+                 case VM_HOLE_AFTER_HEAP:
+                     if (prevmkind == VM_MAP_HEAP && mkind != VM_MAP_HEAP) {
+@@ -646,14 +646,14 @@ static int find_hole(pmix_hwloc_vm_hole_kind_t hkind,
+                          * (there can be several of them consecutively).
+                          */
+                         fclose(file);
+-                        return use_hole(prevend, begin-prevend, addrp, size);
++                        return use_hole(prevend, begin-prevend, (unsigned long *)addrp, size);
+                     }
+                     break;
+ 
+                 case VM_HOLE_BEFORE_STACK:
+                     if (mkind == VM_MAP_STACK) {
+                         fclose(file);
+-                        return use_hole(prevend, begin-prevend, addrp, size);
++                        return use_hole(prevend, begin-prevend, (unsigned long *)addrp, size);
+                     }
+                     break;
+ 
+@@ -705,7 +705,7 @@ static int find_hole(pmix_hwloc_vm_hole_kind_t hkind,
+   done:
+     fclose(file);
+     if (hkind == VM_HOLE_IN_LIBS || hkind == VM_HOLE_BIGGEST) {
+-        return use_hole(biggestbegin, biggestsize, addrp, size);
++        return use_hole(biggestbegin, biggestsize, (unsigned long *)addrp, size);
+     }
+ 
+     return PMIX_ERROR;
+--- a/orte/mca/rtc/hwloc/rtc_hwloc.c
++++ b/orte/mca/rtc/hwloc/rtc_hwloc.c
+@@ -608,7 +608,7 @@ static int find_hole(orte_rtc_hwloc_vm_hole_kind_t hkind,
+             switch (hkind) {
+                 case VM_HOLE_BEGIN:
+                     fclose(file);
+-                    return use_hole(0, begin, addrp, size);
++                    return use_hole(0, begin, (unsigned long *)addrp, size);
+ 
+                 case VM_HOLE_AFTER_HEAP:
+                     if (prevmkind == VM_MAP_HEAP && mkind != VM_MAP_HEAP) {
+@@ -616,14 +616,14 @@ static int find_hole(orte_rtc_hwloc_vm_hole_kind_t hkind,
+                          * (there can be several of them consecutively).
+                          */
+                         fclose(file);
+-                        return use_hole(prevend, begin-prevend, addrp, size);
++                        return use_hole(prevend, begin-prevend, (unsigned long *)addrp, size);
+                     }
+                     break;
+ 
+                 case VM_HOLE_BEFORE_STACK:
+                     if (mkind == VM_MAP_STACK) {
+                         fclose(file);
+-                        return use_hole(prevend, begin-prevend, addrp, size);
++                        return use_hole(prevend, begin-prevend, (unsigned long *)addrp, size);
+                     }
+                     break;
+ 
+@@ -678,7 +678,7 @@ static int find_hole(orte_rtc_hwloc_vm_hole_kind_t hkind,
+   done:
+     fclose(file);
+     if (hkind == VM_HOLE_IN_LIBS || hkind == VM_HOLE_BIGGEST) {
+-        return use_hole(biggestbegin, biggestsize, addrp, size);
++        return use_hole(biggestbegin, biggestsize, (unsigned long *)addrp, size);
+     }
+ 
+     return ORTE_ERROR;

diff --git a/sys-cluster/openmpi/openmpi-4.1.6.ebuild b/sys-cluster/openmpi/openmpi-4.1.6.ebuild
index cd171b1263f5..ce638f5a87a7 100644
--- a/sys-cluster/openmpi/openmpi-4.1.6.ebuild
+++ b/sys-cluster/openmpi/openmpi-4.1.6.ebuild
@@ -64,6 +64,10 @@ MULTILIB_WRAPPED_HEADERS=(
 	/usr/include/openmpi/mpiext/mpiext_cuda_c.h
 )
 
+PATCHES=(
+	"${FILESDIR}/${PN}-4.1.6-incompatible-pointers.patch"
+)
+
 pkg_setup() {
 	fortran-2_pkg_setup
 


             reply	other threads:[~2024-07-04 10:00 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-04 10:00 Miroslav Šulc [this message]
  -- strict thread matches above, loose matches on Subject: below --
2022-01-29 10:27 [gentoo-commits] repo/gentoo:master commit in: sys-cluster/openmpi/, sys-cluster/openmpi/files/ David Seifert

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1720087206.974f671712dfe56dd3a83032cb9d2e7680bc9a5e.fordfrog@gentoo \
    --to=fordfrog@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox