Hi Carl,

On Mon, 2021-03-15 at 09:05 -0700, Carl Love wrote:
> I am seeing issues on various power platforms.  
> 
> Power 8 BE
> 
>    gcc --version
>    gcc (GCC) 7.3.1 20180303 (Red Hat 7.3.1-5)
> 
>    more /etc/os-release
>    NAME=Fedora
>    VERSION="27 (Server Edition)"
>    ID=fedora
>    VERSION_ID=27
>    PRETTY_NAME="Fedora 27 (Server Edition)"
>    ANSI_COLOR="0;34"
>    CPE_NAME="cpe:/o:fedoraproject:fedora:27"
>    HOME_URL="https://fedoraproject.org/";
>    SUPPORT_URL="
>    https://fedoraproject.org/wiki/Communicating_and_getting_help";
>    BUG_REPORT_URL="https://bugzilla.redhat.com/";
>    REDHAT_BUGZILLA_PRODUCT="Fedora"
>    REDHAT_BUGZILLA_PRODUCT_VERSION=27
>    REDHAT_SUPPORT_PRODUCT="Fedora"
>    REDHAT_SUPPORT_PRODUCT_VERSION=27
>    PRIVACY_POLICY_URL="
>    https://fedoraproject.org/wiki/Legal:PrivacyPolicy";
>    VARIANT="Server Edition"
>    VARIANT_ID=server
> 
> I am getting the following error while running make regtest
> 
>    leak-pool-4:     valgrind   ./leak-pool 4
>    leak-pool-5:     valgrind   ./leak-pool 5
>    leak-segv-jmp:   (skipping, prereq failed: ! ../../tests/os_test
>    darwin && ! ../../tests/arch_test mips32 && !
> ../../tests/arch_test
>    ppc64)
>    leak-tree:       valgrind   -q --leak-check=full --leak-
>    resolution=high ./leak-tree 
>    leak_cpp_interior: valgrind   --leak-check=summary --leak-check-
>    heuristics=multipleinheritance,stdstring,newarray,length64 --
>    suppressions=libstdc++.supp ./leak_cpp_interior 
>    -- Running  tests in memcheck/tests/linux ------------------------
> --
>    ----
>    brk:             valgrind   ./brk 
>    capget:          valgrind   ./capget 
>    /bin/sh: ./debuginfod-check.pl: No such file or directory
>    prereq returned 127: ./debuginfod-check.pl
>    ...checking makefile consistency
>    ...checking header files and include directives
>    make: *** [Makefile:1367: regtest] Error 1


Unfortunately debuginfod-check.pl was missing. I just added it:
https://sourceware.org/git/?p=valgrind.git;a=commit;h=3751e963fab1d644508a9c25b0f147ad609d5dff

> I see the same error on a Power 9
> 
>    more /etc/os-release
>    NAME="Ubuntu"
>    VERSION="18.04.5 LTS (Bionic Beaver)"
>    ID=ubuntu
>    ID_LIKE=debian
>    PRETTY_NAME="Ubuntu 18.04.5 LTS"
>    VERSION_ID="18.04"
>    HOME_URL="https://www.ubuntu.com/";
>    SUPPORT_URL="https://help.ubuntu.com/";
>    BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/";
>    PRIVACY_POLICY_URL="
>    https://www.ubuntu.com/legal/terms-and-policies/privacy-poli
> cy"
> VERSION_CODENAME=bionic
> UBUNTU_CODENAME=bionic
> 
> 
> I am seeing compilation issues on Power 8LE
> 
>    gcc --version
>    gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
> 
>    NAME="Ubuntu"
>    VERSION="20.04.1 LTS (Focal Fossa)"
>    ID=ubuntu
>    ID_LIKE=debian
>    PRETTY_NAME="Ubuntu 20.04.1 LTS"
>    VERSION_ID="20.04"
>    HOME_URL="https://www.ubuntu.com/";
>    SUPPORT_URL="https://help.ubuntu.com/";
>    BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/";
>    PRIVACY_POLICY_URL="
>    https://www.ubuntu.com/legal/terms-and-policies/privacy-policy";
>    VERSION_CODENAME=focal
>    UBUNTU_CODENAME=focal
> 
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:322:57:
> error: expected expression before ‘_Static_assert’
>      322 | #define THIS_SYMBOL_WAS_REMOVED_IN_MPI30(func, newfunc)
> _Static_assert(0, #func " was removed in MPI-3.0.  Use " #newfunc "
> instead.")
>          |                                                         ^~
> ~~~~~~~~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:1112:24:
> note: in expansion of macro ‘THIS_SYMBOL_WAS_REMOVED_IN_MPI30’
>     1112 | #        define MPI_UB
> THIS_SYMBOL_WAS_REMOVED_IN_MPI30(MPI_UB, MPI_Type_create_resized);
>          |                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    libmpiwrap.c:281:19: note: in expansion of macro ‘MPI_UB’
>      281 |    else if (ty == MPI_UB)             fprintf(f,"UB");
>          |                   ^~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:322:57:
> error: expected expression before ‘_Static_assert’
>      322 | #define THIS_SYMBOL_WAS_REMOVED_IN_MPI30(func, newfunc)
> _Static_assert(0, #func " was removed in MPI-3.0.  Use " #newfunc "
> instead.")
>          |                                                         ^~
> ~~~~~~~~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:1113:24:
> note: in expansion of macro ‘THIS_SYMBOL_WAS_REMOVED_IN_MPI30’
>     1113 | #        define MPI_LB
> THIS_SYMBOL_WAS_REMOVED_IN_MPI30(MPI_LB, MPI_Type_create_resized);
>          |                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    libmpiwrap.c:282:19: note: in expansion of macro ‘MPI_LB’
>      282 |    else if (ty == MPI_LB)             fprintf(f,"LB");
>          |                   ^~~~~~
>    libmpiwrap.c: In function ‘showCombiner’:
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:322:57:
> error: expected expression before ‘_Static_assert’
>      322 | #define THIS_SYMBOL_WAS_REMOVED_IN_MPI30(func, newfunc)
> _Static_assert(0, #func " was removed in MPI-3.0.  Use " #newfunc "
> instead.")
>          |                                                         ^~
> ~~~~~~~~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:743:46: note:
> in expansion of macro ‘THIS_SYMBOL_WAS_REMOVED_IN_MPI30’
>      743 | #        define MPI_COMBINER_HVECTOR_INTEGER
> THIS_SYMBOL_WAS_REMOVED_IN_MPI30(MPI_COMBINER_HVECTOR_INTEGER,
> MPI_COMBINER_HVECTOR);
>          |                                              ^~~~~~~~~~~~~
> ~~~~~~~~~~~~~~~~~~~
>    libmpiwrap.c:354:12: note: in expansion of macro
> ‘MPI_COMBINER_HVECTOR_INTEGER’
>      354 |       case MPI_COMBINER_HVECTOR_INTEGER: fprintf(f,
> "HVECTOR_INTEGER"); break;
>          |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:322:57:
> error: expected expression before ‘_Static_assert’
>      322 | #define THIS_SYMBOL_WAS_REMOVED_IN_MPI30(func, newfunc)
> _Static_assert(0, #func " was removed in MPI-3.0.  Use " #newfunc "
> instead.")
>          |                                                         ^~
> ~~~~~~~~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:743:46: note:
> in expansion of macro ‘THIS_SYMBOL_WAS_REMOVED_IN_MPI30’
>      743 | #        define MPI_COMBINER_HVECTOR_INTEGER
> THIS_SYMBOL_WAS_REMOVED_IN_MPI30(MPI_COMBINER_HVECTOR_INTEGER,
> MPI_COMBINER_HVECTOR);
>          |                                              ^~~~~~~~~~~~~
> ~~~~~~~~~~~~~~~~~~~
>    libmpiwrap.c:354:12: note: in expansion of macro
> ‘MPI_COMBINER_HVECTOR_INTEGER’
>      354 |       case MPI_COMBINER_HVECTOR_INTEGER: fprintf(f,
> "HVECTOR_INTEGER"); break;
>          |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    libmpiwrap.c:354:40: error: expected expression before ‘:’ token
>      354 |       case MPI_COMBINER_HVECTOR_INTEGER: fprintf(f,
> "HVECTOR_INTEGER"); break;
>          |                                        ^
>    In file included from libmpiwrap.c:116:
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:322:57:
> error: expected expression before ‘_Static_assert’
>      322 | #define THIS_SYMBOL_WAS_REMOVED_IN_MPI30(func, newfunc)
> _Static_assert(0, #func " was removed in MPI-3.0.  Use " #newfunc "
> instead.")
>          |                                                         ^~
> ~~~~~~~~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:744:47: note:
> in expansion of macro ‘THIS_SYMBOL_WAS_REMOVED_IN_MPI30’
>      744 | #        define MPI_COMBINER_HINDEXED_INTEGER
> THIS_SYMBOL_WAS_REMOVED_IN_MPI30(MPI_COMBINER_HINDEXED_INTEGER,
> MPI_COMBINER_HINDEXED);
>          |                                               ^~~~~~~~~~~~
> ~~~~~~~~~~~~~~~~~~~~
>    libmpiwrap.c:359:12: note: in expansion of macro
> ‘MPI_COMBINER_HINDEXED_INTEGER’
>      359 |       case MPI_COMBINER_HINDEXED_INTEGER: fprintf(f,
> "HINDEXED_INTEGER"); break;
>          |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:322:57:
> error: expected expression before ‘_Static_assert’
>      322 | #define THIS_SYMBOL_WAS_REMOVED_IN_MPI30(func, newfunc)
> _Static_assert(0, #func " was removed in MPI-3.0.  Use " #newfunc "
> instead.")
>          |                                                         ^~
> ~~~~~~~~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:744:47: note:
> in expansion of macro ‘THIS_SYMBOL_WAS_REMOVED_IN_MPI30’
>      744 | #        define MPI_COMBINER_HINDEXED_INTEGER
> THIS_SYMBOL_WAS_REMOVED_IN_MPI30(MPI_COMBINER_HINDEXED_INTEGER,
> MPI_COMBINER_HINDEXED);
>          |                                               ^~~~~~~~~~~~
> ~~~~~~~~~~~~~~~~~~~~
>    libmpiwrap.c:359:12: note: in expansion of macro
> ‘MPI_COMBINER_HINDEXED_INTEGER’
>      359 |       case MPI_COMBINER_HINDEXED_INTEGER: fprintf(f,
> "HINDEXED_INTEGER"); break;
>          |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    libmpiwrap.c:359:41: error: expected expression before ‘:’ token
>      359 |       case MPI_COMBINER_HINDEXED_INTEGER: fprintf(f,
> "HINDEXED_INTEGER"); break;
>          |                                         ^
>    In file included from libmpiwrap.c:116:
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:322:57:
> error: expected expression before ‘_Static_assert’
>      322 | #define THIS_SYMBOL_WAS_REMOVED_IN_MPI30(func, newfunc)
> _Static_assert(0, #func " was removed in MPI-3.0.  Use " #newfunc "
> instead.")
>          |                                                         ^~
> ~~~~~~~~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:745:45: note:
> in expansion of macro ‘THIS_SYMBOL_WAS_REMOVED_IN_MPI30’
>      745 | #        define MPI_COMBINER_STRUCT_INTEGER
> THIS_SYMBOL_WAS_REMOVED_IN_MPI30(MPI_COMBINER_STRUCT_INTEGER,
> MPI_COMBINER_STRUCT);
>          |                                             ^~~~~~~~~~~~~~
> ~~~~~~~~~~~~~~~~~~
>    libmpiwrap.c:366:12: note: in expansion of macro
> ‘MPI_COMBINER_STRUCT_INTEGER’
>      366 |       case MPI_COMBINER_STRUCT_INTEGER: fprintf(f,
> "STRUCT_INTEGER"); break;
>          |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:322:57:
> error: expected expression before ‘_Static_assert’
>      322 | #define THIS_SYMBOL_WAS_REMOVED_IN_MPI30(func, newfunc)
> _Static_assert(0, #func " was removed in MPI-3.0.  Use " #newfunc "
> instead.")
>          |                                                         ^~
> ~~~~~~~~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:745:45: note:
> in expansion of macro ‘THIS_SYMBOL_WAS_REMOVED_IN_MPI30’
>      745 | #        define MPI_COMBINER_STRUCT_INTEGER
> THIS_SYMBOL_WAS_REMOVED_IN_MPI30(MPI_COMBINER_STRUCT_INTEGER,
> MPI_COMBINER_STRUCT);
>          |                                             ^~~~~~~~~~~~~~
> ~~~~~~~~~~~~~~~~~~
>    libmpiwrap.c:366:12: note: in expansion of macro
> ‘MPI_COMBINER_STRUCT_INTEGER’
>      366 |       case MPI_COMBINER_STRUCT_INTEGER: fprintf(f,
> "STRUCT_INTEGER"); break;
>          |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
>    libmpiwrap.c:366:39: error: expected expression before ‘:’ token
>      366 |       case MPI_COMBINER_STRUCT_INTEGER: fprintf(f,
> "STRUCT_INTEGER"); break;
>          |                                       ^
>    libmpiwrap.c: In function ‘extentOfTy’:
>    libmpiwrap.c:462:8: warning: implicit declaration of function
> ‘PMPI_Type_extent’; did you mean ‘MPI_Type_extent’? [-Wimplicit-
> function-declaration]
>      462 |    r = PMPI_Type_extent(ty, &n);
>          |        ^~~~~~~~~~~~~~~~
>          |        MPI_Type_extent
>    In file included from libmpiwrap.c:116:
>    libmpiwrap.c: In function ‘walk_type’:
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:322:57:
> error: expected expression before ‘_Static_assert’
>      322 | #define THIS_SYMBOL_WAS_REMOVED_IN_MPI30(func, newfunc)
> _Static_assert(0, #func " was removed in MPI-3.0.  Use " #newfunc "
> instead.")
>          |                                                         ^~
> ~~~~~~~~~~~~
>    /usr/lib/powerpc64le-linux-gnu/openmpi/include/mpi.h:1113:24:
> note: in expansion of macro ‘THIS_SYMBOL_WAS_REMOVED_IN_MPI30’
>     1113 | #        define MPI_LB
> THIS_SYMBOL_WAS_REMOVED_IN_MPI30(MPI_LB, MPI_Type_create_resized);
>          |                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>    libmpiwrap.c:736:17: note: in expansion of macro ‘MPI_LB’
>      736 |       if (ty == MPI_LB || ty == MPI_UB)
>          |                 ^~~~~~
>    make[2]: *** [Makefile:716: libmpiwrap_ppc64le_linux_so-
> libmpiwrap.o] Error 1
>    make[2]: Leaving directory '/home/carll/Valgrind/valgrind-
> 3.17.0.RC1/mpi'
>    make[1]: *** [Makefile:855: check-recursive] Error 1
>    make[1]: Leaving directory '/home/carll/Valgrind/valgrind-
> 3.17.0.RC1'
>    make: *** [Makefile:1149: check] Error 2
> 
> I will dig into this a bit more and see if I can find a fix for the
> error.  I will let you know.

I just did a build on Fedora, and I am not seeing these issues. It
might depend on the version of openmpi installed I assume.

https://koji.fedoraproject.org/koji/buildinfo?buildID=1723501

Cheers,

Mark


_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to