Source: rshim-user-spaceDDEFAULT_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
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 -
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
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 300 |
Nodes: | 16 (2 / 14) |
Uptime: | 11:52:52 |
Calls: | 6,706 |
Files: | 12,236 |
Messages: | 5,350,923 |