You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The problem was detected by initializing all arrays with intent OUT with NaN. Valgrind's memcheck can diagnose the problem, too, if no initialization is performed.
In general, I do not comprehend the details of this functions but I arrived at this suggestion because it matches the code in lines 727, 792, and 871. Those lines reference B12D(I) and B12E(I-1), where B12D and B12E contain the Q diagonal and Q-1 subdiagonal entries, respectively, of a certain matrix. The index I can be as large as Q meaning that the reference I+1 would be out of bounds for B12E but not for B12D.
@briansutton Can you confirm the validity of the suggested patch?
Find below C99 code triggering the problem. It can be compiled as follows:
Description
Given the SBBCSD input in the C code below, xBBCSD reads an unitialized value in line 808:
lapack/SRC/sbbcsd.f
Line 808 in b231dd5
The problem was detected by initializing all arrays with intent
OUT
with NaN. Valgrind's memcheck can diagnose the problem, too, if no initialization is performed.As far as I can tell, the fix is as follows:
In general, I do not comprehend the details of this functions but I arrived at this suggestion because it matches the code in lines 727, 792, and 871. Those lines reference
B12D(I)
andB12E(I-1)
, whereB12D
andB12E
contain theQ
diagonal andQ-1
subdiagonal entries, respectively, of a certain matrix. The indexI
can be as large asQ
meaning that the referenceI+1
would be out of bounds forB12E
but not forB12D
.@briansutton Can you confirm the validity of the suggested patch?
Find below C99 code triggering the problem. It can be compiled as follows:
Output without fix (e.g., with Debian OpenBLAS 0.3.21 or commit b231dd5):
Output with SBBCSD fix:
Checklist
The text was updated successfully, but these errors were encountered: