aboutsummaryrefslogtreecommitdiff
path: root/SRC/cla_syrfsx_extended.f
diff options
context:
space:
mode:
authorjulie <julielangou@users.noreply.github.com>2010-04-02 19:06:51 +0000
committerjulie <julielangou@users.noreply.github.com>2010-04-02 19:06:51 +0000
commit0bb0871778655391667f4c3d54ecaa66e212398d (patch)
tree1cdc7289f96c98cb76d18bac41fa5fd04d4c67fd /SRC/cla_syrfsx_extended.f
parent26758c2193fa018bc0811894f78dcdfa8c77839f (diff)
Following bug report and fix sent by Michael Chuvelev (Intel) on Fri, 2 Apr 2010 to "lapack@cs.utk.edu".
Issue in LAPACK 3.2.1 *la_{po,sy,he}rfsx_extended.f sources. For instanse, in sla_syrfsx_extended.f: DY is described as * DY (input) REAL array, dimension (N) * Workspace to hold the intermediate solution. whereas N-by-NRHS array is referenced at DY due to the following statement (line 384): CALL SSYTRS( UPLO, N, NRHS, AF, LDAF, IPIV, DY, N, INFO ) This may lead to an outside memory corruption. I assume one RHS should be referenced here, because all the RHSs are considered individually in the loop by J. That is, substituting NRHS by 1: CALL SSYTRS( UPLO, N, 1, AF, LDAF, IPIV, DY, N, INFO ) should fix the issue. This is actual for any subroutine mentioned.
Diffstat (limited to 'SRC/cla_syrfsx_extended.f')
-rw-r--r--SRC/cla_syrfsx_extended.f2
1 files changed, 1 insertions, 1 deletions
diff --git a/SRC/cla_syrfsx_extended.f b/SRC/cla_syrfsx_extended.f
index 0fa981c0..8c75f21d 100644
--- a/SRC/cla_syrfsx_extended.f
+++ b/SRC/cla_syrfsx_extended.f
@@ -392,7 +392,7 @@
! XXX: RES is no longer needed.
CALL CCOPY( N, RES, 1, DY, 1 )
- CALL CSYTRS( UPLO, N, NRHS, AF, LDAF, IPIV, DY, N, INFO )
+ CALL CSYTRS( UPLO, N, 1, AF, LDAF, IPIV, DY, N, INFO )
*
* Calculate relative changes DX_X, DZ_Z and ratios DXRAT, DZRAT.
*