[Debian-med-packaging] Bug#1096018: bart-cuda: autopkgtest failure with glibc 2.41 due to increased accuracy of atan2f function

Aurelien Jarno aurel32 at debian.org
Sat Feb 15 10:06:44 GMT 2025


Source: bart-cuda
Version: 0.8.00-2
Severity: important
Tags: ftbfs patch
Justification: fails to build from source
X-Debbugs-Cc: debian-glibc at lists.debian.org
User: debian-glibc at lists.debian.org
Usertags: glibc2.41

Dear maintainer,

The bart-cuda autopkgtest fails when run against glibc 2.41, which is
currently in experiemntal. It fails with [1]:

| 3772s touch tests/test-traj-custom
| 3772s set -e ; mkdir /tmp/autopkgtest-lxc.oedkyjwg/downtmp/autopkgtest_tmp/tests/tmp/$$/ ; cd /tmp/autopkgtest-lxc.oedkyjwg/downtmp/autopkgtest_tmp/tests/tmp/$$/			;\
| 3772s /tmp/autopkgtest-lxc.oedkyjwg/downtmp/autopkgtest_tmp//traj -R0. -r -y360 -D t0.ra 				;\
| 3772s /tmp/autopkgtest-lxc.oedkyjwg/downtmp/autopkgtest_tmp//phantom -k -t t0.ra k0.ra 				;\
| 3772s /tmp/autopkgtest-lxc.oedkyjwg/downtmp/autopkgtest_tmp//traj -R30. -r -y360 -D t30.ra			;\
| 3772s /tmp/autopkgtest-lxc.oedkyjwg/downtmp/autopkgtest_tmp//phantom -k -t t30.ra k30.ra 				;\
| 3772s /tmp/autopkgtest-lxc.oedkyjwg/downtmp/autopkgtest_tmp//estshift 4 k0.ra k30.ra | grep "30.00000" 		;\
| 3772s rm *.ra ; cd .. ; rmdir /tmp/autopkgtest-lxc.oedkyjwg/downtmp/autopkgtest_tmp/tests/tmp/$$/
| 3774s make: *** [tests/traj.mk:53: tests/test-traj-rot] Error 1

Investigation shows that this is due to improved accuracy of the atan2f
function in glibc 2.41. In details bart-cuda computes
atan2f(0x1.166202p-4, 0x1.e22c5ap-4) and it expects it to be 30.00000
when converted from radian to degrees, ie it expects the atan2f function
to return 0x1.0c1524p-1.

With glibc 2.41, the atan2f function has been improved [2] and now
returns instead 0x1.0c1522p-1 which is closer to the real value than
0x1.0c1524p-1.  This corresponds to 29.999998 when converted to degrees.
The patch below fixes the issue by accepting both values.

Regards
Aurelien

--- bart-cuda-0.8.00.orig/tests/traj.mk
+++ bart-cuda-0.8.00/tests/traj.mk
@@ -55,7 +55,7 @@ tests/test-traj-rot: traj phantom estshi
 	$(TOOLDIR)/phantom -k -t t0.ra k0.ra 				;\
 	$(TOOLDIR)/traj -R30. -r -y360 -D t30.ra			;\
 	$(TOOLDIR)/phantom -k -t t30.ra k30.ra 				;\
-	$(TOOLDIR)/estshift 4 k0.ra k30.ra | grep "30.00000" 		;\
+	$(TOOLDIR)/estshift 4 k0.ra k30.ra | grep "30.00000\|29.999998"	;\
 	rm *.ra ; cd .. ; rmdir $(TESTS_TMP)
 	touch $@

[1] https://ci.debian.net/data/autopkgtest/unstable/amd64/b/bart-cuda/57639405/log.gz
[2] https://sourceware.org/git/?p=glibc.git;a=commit;h=6f9bacf36b20b1a87fa4ec24c9d67c47985fbc8b



More information about the Debian-med-packaging mailing list