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