Bug#707167: pu: package lapack/3.4.1+dfsg-1+deb70u1

2013-05-27 Thread Adam D. Barratt
Control: tags -1 + pending

On Sun, 2013-05-26 at 12:13 +0100, Adam D. Barratt wrote:
 On Tue, 2013-05-07 at 22:51 +0200, Sébastien Villemot wrote:
  Please find attached a proposed update for LAPACK. It fixes an issue with 
  wrong
  numerical results in a multithreaded environment, so I consider this severe
  enough to warrant a stable update.
 
 Please go ahead; thanks.

Flagged for acceptance.

Regards,

Adam


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#707167: pu: package lapack/3.4.1+dfsg-1+deb70u1

2013-05-26 Thread Adam D. Barratt
Control: tags -1 + confirmed

On Tue, 2013-05-07 at 22:51 +0200, Sébastien Villemot wrote:
 Please find attached a proposed update for LAPACK. It fixes an issue with 
 wrong
 numerical results in a multithreaded environment, so I consider this severe
 enough to warrant a stable update.

Please go ahead; thanks.

Regards,

Adam


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#707167: pu: package lapack/3.4.1+dfsg-1+deb70u1

2013-05-07 Thread Sébastien Villemot
Package: release.debian.org
Severity: normal
User: release.debian@packages.debian.org
Usertags: pu
X-Debbugs-CC: sylves...@debian.org, mba...@debian.org

Please find attached a proposed update for LAPACK. It fixes an issue with wrong
numerical results in a multithreaded environment, so I consider this severe
enough to warrant a stable update.

Note that instead of adding the RECURSIVE keyword in the declaration of all
affected routines, another fix could have been to add the gfortran flag
-frecursive. The latter option would have given a smaller source diff, but
would have actually been a bigger change, since it would be equivalent to
adding the RECURSIVE keyword to *all* LAPACK functions.

Thanks,

-- 
 .''`.Sébastien Villemot
: :' :Debian Developer
`. `' http://www.dynare.org/sebastien
  `-  GPG Key: 4096R/381A7594
Index: debian/changelog
===
--- debian/changelog	(révision 45845)
+++ debian/changelog	(copie de travail)
@@ -1,3 +1,11 @@
+lapack (3.4.1+dfsg-1+deb70u1) stable; urgency=low
+
+  * recursive.patch: fix some routines which produce incorrect results in
+multithreaded environment. Thanks to Michael Banck for the fix
+(Closes: #693269)
+
+ -- Sébastien Villemot sebast...@debian.org  Tue, 07 May 2013 22:38:47 +0200
+
 lapack (3.4.1+dfsg-1) unstable; urgency=low
 
   * Repackage upstream tarball. Delete non-DFSG-free files:
Index: debian/patches/recursive.patch
===
--- debian/patches/recursive.patch	(révision 0)
+++ debian/patches/recursive.patch	(copie de travail)
@@ -0,0 +1,525 @@
+Description: Ensure thread safety of functions with large local variables
+ Some LAPACK functions allocate large local variables. The default behavior of
+ gfortran is to allocate such variables statically, instead of using the heap.
+ This makes these functions thread unsafe. The fix consists in declaring these
+ functions as RECURSIVE, to force heap allocation.
+Author: Michael Banck mba...@debian.org
+Bug: http://icl.cs.utk.edu/lapack-forum/viewtopic.php?f=2t=1930
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=693269
+Reviewed-by: Sébastien Villemot sebast...@debian.org
+Last-Update: 2013-05-07
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- ./src/cgbtrf.f.orig	2013-05-06 00:43:02.302380624 +0200
 ./src/cgbtrf.f	2013-05-06 00:44:23.910803548 +0200
+@@ -18,7 +18,8 @@
+ *  Definition:
+ *  ===
+ *
+-*   SUBROUTINE CGBTRF( M, N, KL, KU, AB, LDAB, IPIV, INFO )
++*   RECURSIVE SUBROUTINE CGBTRF( M, N, KL, KU, AB, LDAB, IPIV,
++*INFO )
+ * 
+ *   .. Scalar Arguments ..
+ *   INTEGERINFO, KL, KU, LDAB, M, N
+@@ -142,7 +143,7 @@
+ * \endverbatim
+ *
+ *  =
+-  SUBROUTINE CGBTRF( M, N, KL, KU, AB, LDAB, IPIV, INFO )
++  RECURSIVE SUBROUTINE CGBTRF( M, N, KL, KU, AB, LDAB, IPIV, INFO )
+ *
+ *  -- LAPACK computational routine (version 3.4.0) --
+ *  -- LAPACK is a software package provided by Univ. of Tennessee,--
+--- ./src/cgehrd.f.orig	2013-05-06 00:43:02.330380770 +0200
 ./src/cgehrd.f	2013-05-06 00:44:48.006928485 +0200
+@@ -18,7 +18,8 @@
+ *  Definition:
+ *  ===
+ *
+-*   SUBROUTINE CGEHRD( N, ILO, IHI, A, LDA, TAU, WORK, LWORK, INFO )
++*   RECURSIVE SUBROUTINE CGEHRD( N, ILO, IHI, A, LDA, TAU, WORK, 
++*LWORK, INFO )
+ * 
+ *   .. Scalar Arguments ..
+ *   INTEGERIHI, ILO, INFO, LDA, LWORK, N
+@@ -166,7 +167,8 @@
+ * \endverbatim
+ *
+ *  =
+-  SUBROUTINE CGEHRD( N, ILO, IHI, A, LDA, TAU, WORK, LWORK, INFO )
++  RECURSIVE SUBROUTINE CGEHRD( N, ILO, IHI, A, LDA, TAU, WORK, 
++ $ LWORK, INFO )
+ *
+ *  -- LAPACK computational routine (version 3.4.0) --
+ *  -- LAPACK is a software package provided by Univ. of Tennessee,--
+--- ./src/cunmlq.f.orig	2013-05-06 00:43:02.342380830 +0200
 ./src/cunmlq.f	2013-05-06 00:45:13.531060884 +0200
+@@ -18,8 +18,8 @@
+ *  Definition:
+ *  ===
+ *
+-*   SUBROUTINE CUNMLQ( SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC,
+-*  WORK, LWORK, INFO )
++*   RECURSIVE SUBROUTINE CUNMLQ( SIDE, TRANS, M, N, K, A, LDA, TAU,
++*C, LDC, WORK, LWORK, INFO )
+ * 
+ *   .. Scalar Arguments ..
+ *   CHARACTER  SIDE, TRANS
+@@ -167,8 +167,8 @@
+ * \ingroup complexOTHERcomputational
+ *
+ *  =
+-  SUBROUTINE CUNMLQ( SIDE, TRANS, M, N, K, A, LDA, TAU, C, LDC,
+- $   WORK, LWORK, INFO )
++  RECURSIVE SUBROUTINE CUNMLQ( SIDE, TRANS, M, N, K, A, LDA, TAU, C,
++ $