ofiwg / libfabric

Open Fabric Interfaces

Home Page:http://libfabric.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

libfabric 1.20.1 fails to build on Fedora Rahide i686

opoplawski opened this issue · comments

Describe the bug
libfabric 1.20.1 fails to build on Fedora Rahide i686

Output

libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I./include -D_GNU_SOURCE -D__USE_XOPEN2K8 -DSYSCONFDIR=\"/etc\" -DRDMADIR=\"@rdmadir@\" -DPROVDLDIR=\"/usr/lib/libfabric\" -I./prov/sockets/include -I./prov/sockets -I./prov/verbs/include -I./prov/verbs/include/linux -I./prov/verbs/src/ep_rdm -I./prov/verbs/src/ep_dgram -D__LIBUSNIC__ -DWANT_DEBUG_MSGS=0 -DHAVE_LIBNL3=1 -I/usr/include/libnl3 -I./prov/usnic/src/usnic_direct -I./prov/hook/include -I./prov/hook/perf/include -I./prov/hook/hook_debug/include -I./prov/hook/hook_hmem/include -I./prov/hook/dmabuf_peer_mem/include -Wall -O2 -DNDEBUG -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m32 -march=i686 -mtune=generic -msse2 -mfpmath=sse -mstackrealign -fasynchronous-unwind-tables -fstack-clash-protection -c src/fabric.c  -fPIC -DPIC -o src/.libs/src_libfabric_la-fabric.o
make[1]: Leaving directory '/builddir/build/BUILD/libfabric-1.20.1'
In file included from ./include/ofi.h:53,
                 from ./include/ofi_util.h:58,
                 from src/fabric.c:47:
./include/ofi_atom.h:76:24: note: the alignment of ‘_Atomic long long int’ fields changed in GCC 11.1
   76 |         typedef struct {                                                                                \
      |                        ^
./include/ofi_atom.h:421:1: note: in expansion of macro ‘OFI_ATOMIC_DEFINE’
  421 | OFI_ATOMIC_DEFINE(64)
      | ^~~~~~~~~~~~~~~~~
In file included from ./include/ofi_util.h:59:
./include/ofi_mr.h: In function ‘ofi_mr_get_iov_from_dmabuf’:
./include/ofi_mr.h:308:35: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
  308 |                 iov[i].iov_base = (void *) (
      |                                   ^
In file included from ./include/ofi_util.h:61:
./include/ofi_mem.h: In function ‘smr_freestack_init’:
./include/ofi_mem.h:281:53: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
  281 |         next_aligned_addr = ofi_get_aligned_size((( (uint64_t) fs) +
      |                                                     ^
./include/ofi_mem.h:283:54: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
  283 |         fs->entry_base_offset = next_aligned_addr - ((uint64_t) fs);
      |                                                      ^
In file included from ./include/ofi_shm_p2p.h:37,
                 from src/fabric.c:54:
./include/ofi_cma.h: In function ‘cma_copy’:
./include/ofi_cma.h:67:40: error: passing argument 2 of ‘ofi_consume_iov’ from incompatible pointer type [-Wincompatible-pointer-types]
   67 |                 ofi_consume_iov(local, &local_cnt, (size_t) ret);
      |                                        ^~~~~~~~~~
      |                                        |
      |                                        long unsigned int *
In file included from ./include/ofi_cma.h:41:
./include/ofi_iov.h:204:51: note: expected ‘size_t *’ {aka ‘unsigned int *’} but argument is of type ‘long unsigned int *’
  204 | void ofi_consume_iov(struct iovec *iovec, size_t *iovec_count, size_t offset);
      |                                           ~~~~~~~~^~~~~~~~~~~
./include/ofi_cma.h:68:41: error: passing argument 2 of ‘ofi_consume_iov’ from incompatible pointer type [-Wincompatible-pointer-types]
   68 |                 ofi_consume_iov(remote, &remote_cnt, (size_t) ret);
      |                                         ^~~~~~~~~~~
      |                                         |
      |                                         long unsigned int *
./include/ofi_iov.h:204:51: note: expected ‘size_t *’ {aka ‘unsigned int *’} but argument is of type ‘long unsigned int *’
  204 | void ofi_consume_iov(struct iovec *iovec, size_t *iovec_count, size_t offset);
      |                                           ~~~~~~~~^~~~~~~~~~~
make[1]: *** [Makefile:26172: src/src_libfabric_la-fabric.lo] Error 1

Additional context
Is there any interest in supporting i686 any more?