I created a pull request to fix the build issue. Please review https://salsa.debian.org/bluefield-team/rshim-user-space/-/merge_requests/11 -tai
On Tue, Feb 27, 2024 at 7:27 PM dann frazier <da...@dannf.org> wrote: > > Source: rshim-user-space > Version: 2.0.12+debian-1 > Severity: serious > Tags: ftbfs > Justification: fails to build from source (but built successfully in the past) > > The switch to fuse3 appears to have introduced a build issue for 32-bit > architectures such as armhf: > > From > https://buildd.debian.org/status/fetch.php?pkg=rshim-user-space&arch=armhf&ver=2.0.20%2Bdebian-1&stamp=1709056732&raw=0 > : > > gcc -DHAVE_CONFIG_H -I. -I.. -Wall -DHAVE_RSHIM_NET > -I/usr/include/libusb-1.0 -DHAVE_RSHIM_USB > -I/usr/include/arm-linux-gnueabihf -DHAVE_RSHIM_PCIE -I/usr/include/fuse3 > -DHAVE_RSHIM_FUSE -Wdate-time -D_FORTIFY_SOURCE=2 -DFUSE_USE_VERSION=30 > -DDEFAULT_RSHIM_CONFIG_FILE='"/etc/rshim.conf"' -g -O2 > -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong > -fstack-clash-protection -Wformat -Werror=format-security -c -o > rshim-rshim_fuse.o `test -f 'rshim_fuse.c' || echo './'`rshim_fuse.c > In file included from /usr/include/fuse3/fuse_lowlevel.h:25, > from /usr/include/fuse3/cuse_lowlevel.h:19, > from rshim_fuse.c:23: > /usr/include/fuse3/fuse_common.h:928:1: error: static assertion failed: > "fuse: off_t must be 64bit" > 928 | _Static_assert(sizeof(off_t) == 8, "fuse: off_t must be 64bit"); > | ^~~~~~~~~~~~~~ > rshim_pcie.c: In function ‘rshim_pcie_mmap_vfio’: > rshim_pcie.c:52:37: warning: overflow in conversion from ‘long long unsigned > int’ to ‘__off_t’ {aka ‘long int’} changes value from ‘7696581394436’ to ‘4’ > [-Woverflow] > 52 | #define VFIO_GET_REGION_ADDR(x) ((uint64_t) x << 40ULL) > | ^ > rshim_pcie.c:634:18: note: in expansion of macro ‘VFIO_GET_REGION_ADDR’ > 634 | VFIO_GET_REGION_ADDR(VFIO_PCI_CONFIG_REGION_INDEX) + > | ^~~~~~~~~~~~~~~~~~~~ > rshim_pcie.c:52:37: warning: overflow in conversion from ‘long long unsigned > int’ to ‘__off_t’ {aka ‘long int’} changes value from ‘7696581394436’ to ‘4’ > [-Woverflow] > 52 | #define VFIO_GET_REGION_ADDR(x) ((uint64_t) x << 40ULL) > | ^ > rshim_pcie.c:643:19: note: in expansion of macro ‘VFIO_GET_REGION_ADDR’ > 643 | VFIO_GET_REGION_ADDR(VFIO_PCI_CONFIG_REGION_INDEX) + > | ^~~~~~~~~~~~~~~~~~~~ > rshim_fuse.c: In function ‘rshim_fuse_misc_read’: > rshim_fuse.c:713:36: warning: format ‘%ld’ expects argument of type ‘long > int’, but argument 5 has type ‘uint64_t’ {aka ‘long long unsigned int’} > [-Wformat=] > 713 | n = snprintf(p, len, "%-16s%ld(s)\n", "UP_TIME", > value/BF3_REF_CLK_IN_HZ); > | ~~^ > | | > | long int > | %lld > rshim_fuse.c: In function ‘rshim_fuse_misc_write’: > rshim_fuse.c:954:25: warning: format ‘%lx’ expects argument of type ‘long > unsigned int *’, but argument 3 has type ‘uint64_t *’ {aka ‘long long > unsigned int *’} [-Wformat=] > 954 | if (sscanf(p, " 0x%lx", &val64) != 1) > | ~~^ ~~~~~~ > | | | > | | uint64_t * {aka long long unsigned int *} > | long unsigned int * > | %llx > make[3]: *** [Makefile:524: rshim-rshim_fuse.o] Error 1 > > > -- System Information: > Debian Release: trixie/sid > APT prefers unstable-debug > APT policy: (500, 'unstable-debug'), (500, 'unstable'), (500, 'stable'), > (1, 'experimental-debug'), (1, 'experimental') > Architecture: amd64 (x86_64) > Foreign Architectures: i386 > > Kernel: Linux 6.6.15-amd64 (SMP w/4 CPU threads; PREEMPT) > Kernel taint flags: TAINT_FIRMWARE_WORKAROUND > Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not > set > Shell: /bin/sh linked to /usr/bin/dash > Init: systemd (via /run/systemd/system) > LSM: AppArmor: enabled