Hi, On 2026-06-05 02:06, Aron Xu wrote: > Package: sndfile-tools > Version: 1.5-4 > Severity: normal > > Dear Maintainer, > > While testing an update of src:fftw3 (sndfile-tools depends on > libfftw3-double3), the sndfile-tools autopkgtest failed on riscv64. > The failure looks like an architecture/valgrind support gap rather > than a defect in sndfile-tools or fftw3. > > The upstream-tests run all tools under valgrind. Only > sndfile-spectrogram (the tool that uses FFTW) is affected, and it > crashes with an illegal instruction *while running under valgrind*, > then runs fine directly: > valgrind /usr/bin/sndfile-generate-chirp : ok > valgrind /usr/bin/sndfile-resample : 1 errors, 0 bytes leaked > valgrind /usr/bin/sndfile-spectrogram : tests/test-wrapper.sh: > line 15: 1759 Illegal instruction $valgrind $@ > $logfile 2>&1 > ok > valgrind /usr/bin/sndfile-waveform : 0 errors, 432 bytes leaked > ... > upstream-tests FAIL stderr: tests/test-wrapper.sh: line 15: > 1759 Illegal instruction $valgrind $@ > $logfile 2>&1 > > Note the "ok" line immediately after: the spectrogram binary itself > completes successfully when run outside valgrind; it is valgrind that > aborts with SIGILL. The other tools pass under valgrind on the same > run. > > This probably suggests valgrind on riscv64 does not implement an > instruction reached only via the spectrogram (FFT) code path, rather > than a bug in sndfile-tools. Please reassign the bug if appropriate.
Yes, this is correct. FFTW 3.3.11 added support for getticks() in kernel/cycle.h using the rdtime instruction. Unfortunately it is not supported by valgrind, even in the current git. At this stage I think it's better to just disable the autopkgtest on riscv64, just like it's done on armhf. Alternatively maybe just disable that specific test on riscv64. Regards Aurelien -- Aurelien Jarno GPG: 4096R/1DDD8C9B [email protected] http://aurel32.net

