Bug#1001237: ptl: autopkgtest regression on armhf: Floating point exception
Lukas Märdian
slyon at ubuntu.com
Mon Dec 13 14:39:18 GMT 2021
Package: ptl
Version: 2.3.0-1
Followup-For: Bug #1001237
User: ubuntu-devel at lists.ubuntu.com
Usertags: origin-ubuntu jammy ubuntu-patch
X-Debbugs-Cc: slyon at ubuntu.com
Control: tags -1 patch
Hello Stephan,
I can observe the same issue with 2.3.0-1 on Ubuntu and filed an upstream bug
at https://github.com/jrmadsen/PTL/issues/25
The intmax_t division seems to be the root-cause here, replacing the division
in the minimal.cc example with a constant is a (temporary) way to mitigate this
problem.
In Ubuntu, the attached patch was applied to achieve the following:
* Add d/p/mitigate-SIGFPE.diff to mitigate minimal.cc crash in autopkgtest
Thanks for considering the patch.
Cheers,
Lukas
-- System Information:
Debian Release: 11.0
APT prefers impish-updates
APT policy: (500, 'impish-updates'), (500, 'impish-security'), (500, 'impish'), (100, 'impish-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 5.13.0-22-generic (SMP w/4 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE=de_DE:en_GB:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
-------------- next part --------------
diff -Nru ptl-2.3.0/debian/patches/mitigate-SIGFPE.diff ptl-2.3.0/debian/patches/mitigate-SIGFPE.diff
--- ptl-2.3.0/debian/patches/mitigate-SIGFPE.diff 1970-01-01 01:00:00.000000000 +0100
+++ ptl-2.3.0/debian/patches/mitigate-SIGFPE.diff 2021-12-13 15:32:33.000000000 +0100
@@ -0,0 +1,20 @@
+Description: Mitigate SIGFPE crash in minimal.cc by avoiding maxint_t divison
+Author: Lukas M?rdian <slyon at ubuntu.com>
+Bug: https://github.com/jrmadsen/PTL/issues/25
+Bug-Debian: https://bugs.debian.org/1001237
+Origin: vendor, Ubuntu
+Last-Update: 2021-12-13
+Forwarded: no
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- ptl-2.3.0.orig/examples/minimal/minimal.cc
++++ ptl-2.3.0/examples/minimal/minimal.cc
+@@ -135,7 +135,7 @@ main(int argc, char** argv)
+ static intmax_t idx = 0;
+ static intmax_t ncores = Threading::GetNumberOfCores();
+ static intmax_t ncpus = Threading::GetNumberOfPhysicalCpus();
+- static intmax_t nincr = std::max<intmax_t>(ncores / ncpus, 1);
++ static intmax_t nincr = 1;
+ auto _idx = idx + nincr;
+ idx += nincr;
+ if(_idx % ncores == 0)
diff -Nru ptl-2.3.0/debian/patches/series ptl-2.3.0/debian/patches/series
--- ptl-2.3.0/debian/patches/series 1970-01-01 01:00:00.000000000 +0100
+++ ptl-2.3.0/debian/patches/series 2021-12-13 15:29:29.000000000 +0100
@@ -0,0 +1 @@
+mitigate-SIGFPE.diff
More information about the debian-science-maintainers
mailing list