Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 935267 - sys-cluster/openmpi-4.1.6 fails to compile: error: passing argument 3 of ‘use_hole’ from incompatible pointer type [-Wincompatible-pointer-types]
Summary: sys-cluster/openmpi-4.1.6 fails to compile: error: passing argument 3 of ‘use...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Cluster Team
URL:
Whiteboard:
Keywords: STABLE
Depends on:
Blocks:
 
Reported: 2024-07-01 08:05 UTC by Miroslav Šulc
Modified: 2024-07-04 10:00 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Miroslav Šulc gentoo-dev 2024-07-01 08:05:01 UTC
after new version of nvidia-cuda-toolkit triggered rebuild of openmpi, i get this error:

ibtool: compile:  x86_64-pc-linux-gnu-gcc -m32 -mfpmath=sse -DHAVE_CONFIG_H -I. -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src -I../src/include -I../include -iquote/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/mca/pmix/pmix3x/pmix -iquote/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix -iquote/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src -iquote/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/mca/pmix/pmix3x/pmix/include -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/include -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6 -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86 -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/include -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/include -DNDEBUG -march=alderlake -mabm -mno-cldemote -mno-kl -mno-pconfig -mno-sgx -mno-widekl -mshstk --param=l1-cache-line-size=64 --param=l1-cache-size=48 --param=l2-cache-size=36864 -O2 -pipe -frecord-gcc-switches -finline-functions -fno-strict-aliasing -c /var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/common/pmix_iof.c  -fPIC -DPIC -o common/.libs/pmix_iof.o
/bin/bash ../libtool  --tag=CC   --mode=compile x86_64-pc-linux-gnu-gcc -m32 -mfpmath=sse -DHAVE_CONFIG_H -I. -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src -I../src/include -I../include   -iquote/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/mca/pmix/pmix3x/pmix -iquote/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix -iquote/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src -iquote/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/mca/pmix/pmix3x/pmix/include -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/include -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6 -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86 -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/include -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/include  -DNDEBUG -march=alderlake -mabm -mno-cldemote -mno-kl -mno-pconfig -mno-sgx -mno-widekl -mshstk --param=l1-cache-line-size=64 --param=l1-cache-size=48 --param=l2-cache-size=36864 -O2 -pipe -frecord-gcc-switches -finline-functions -fno-strict-aliasing -c -o hwloc/hwloc.lo /var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c
libtool: compile:  x86_64-pc-linux-gnu-gcc -m32 -mfpmath=sse -DHAVE_CONFIG_H -I. -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src -I../src/include -I../include -iquote/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/mca/pmix/pmix3x/pmix -iquote/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix -iquote/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src -iquote/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/mca/pmix/pmix3x/pmix/include -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/include -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6 -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86 -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/include -I/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/include -DNDEBUG -march=alderlake -mabm -mno-cldemote -mno-kl -mno-pconfig -mno-sgx -mno-widekl -mshstk --param=l1-cache-line-size=64 --param=l1-cache-size=48 --param=l2-cache-size=36864 -O2 -pipe -frecord-gcc-switches -finline-functions -fno-strict-aliasing -c /var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c  -fPIC -DPIC -o hwloc/.libs/hwloc.o
/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c: In function ‘find_hole’:
/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c:641:47: error: passing argument 3 of ‘use_hole’ from incompatible pointer type [-Wincompatible-pointer-types]
  641 |                     return use_hole(0, begin, addrp, size);
      |                                               ^~~~~
      |                                               |
      |                                               size_t * {aka unsigned int *}
/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c:587:36: note: expected ‘long unsigned int *’ but argument is of type ‘size_t *’ {aka ‘unsigned int *’}
  587 |                     unsigned long *addrp,
      |                     ~~~~~~~~~~~~~~~^~~~~
/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c:649:65: error: passing argument 3 of ‘use_hole’ from incompatible pointer type [-Wincompatible-pointer-types]
  649 |                         return use_hole(prevend, begin-prevend, addrp, size);
      |                                                                 ^~~~~
      |                                                                 |
      |                                                                 size_t * {aka unsigned int *}
/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c:587:36: note: expected ‘long unsigned int *’ but argument is of type ‘size_t *’ {aka ‘unsigned int *’}
  587 |                     unsigned long *addrp,
      |                     ~~~~~~~~~~~~~~~^~~~~
/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c:656:65: error: passing argument 3 of ‘use_hole’ from incompatible pointer type [-Wincompatible-pointer-types]
  656 |                         return use_hole(prevend, begin-prevend, addrp, size);
      |                                                                 ^~~~~
      |                                                                 |
      |                                                                 size_t * {aka unsigned int *}
/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c:587:36: note: expected ‘long unsigned int *’ but argument is of type ‘size_t *’ {aka ‘unsigned int *’}
  587 |                     unsigned long *addrp,
      |                     ~~~~~~~~~~~~~~~^~~~~
/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c:708:52: error: passing argument 3 of ‘use_hole’ from incompatible pointer type [-Wincompatible-pointer-types]
  708 |         return use_hole(biggestbegin, biggestsize, addrp, size);
      |                                                    ^~~~~
      |                                                    |
      |                                                    size_t * {aka unsigned int *}
/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c:587:36: note: expected ‘long unsigned int *’ but argument is of type ‘size_t *’ {aka ‘unsigned int *’}
  587 |                     unsigned long *addrp,
      |                     ~~~~~~~~~~~~~~~^~~~~
/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c: In function ‘pmix_hwloc_get_topology’:
/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6/opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c:397:9: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  397 |         asprintf(&shmemfile, "%s/hwloc.sm", pmix_server_globals.tmpdir);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[5]: *** [Makefile:1809: hwloc/hwloc.lo] Error 1
make[5]: Leaving directory '/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/mca/pmix/pmix3x/pmix/src'
make[4]: *** [Makefile:1907: all-recursive] Error 1
make[4]: Leaving directory '/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/mca/pmix/pmix3x/pmix/src'
make[3]: *** [Makefile:779: all-recursive] Error 1
make[3]: Leaving directory '/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/mca/pmix/pmix3x/pmix'
make[2]: *** [Makefile:2083: all-recursive] Error 1
make[2]: Leaving directory '/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal/mca/pmix/pmix3x'
make[1]: *** [Makefile:2387: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/sys-cluster/openmpi-4.1.6/work/openmpi-4.1.6-abi_x86_32.x86/opal'
make: *** [Makefile:1905: all-recursive] Error 1


# emerge -pqv '=sys-cluster/openmpi-4.1.6::gentoo'
[ebuild   R   ] sys-cluster/openmpi-4.1.6  USE="cuda cxx fortran ipv6 romio -cma -libompitrace -peruse -valgrind" ABI_X86="32 (64) (-x32)" OPENMPI_FABRICS="-knem -ofed" OPENMPI_OFED_FEATURES="-control-hdr-padding -dynamic-sl -rdmacm -udcm" OPENMPI_RM="-pbs (-slurm)"
Comment 1 Larry the Git Cow gentoo-dev 2024-07-04 10:00:10 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=974f671712dfe56dd3a83032cb9d2e7680bc9a5e

commit 974f671712dfe56dd3a83032cb9d2e7680bc9a5e
Author:     Miroslav Šulc <fordfrog@gentoo.org>
AuthorDate: 2024-07-04 09:59:47 +0000
Commit:     Miroslav Šulc <fordfrog@gentoo.org>
CommitDate: 2024-07-04 10:00:06 +0000

    sys-cluster/openmpi: fixed incompatible pointers in 4.1.6
    
    Bug: https://bugs.gentoo.org/935267
    Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org>

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