#7 dR1TUNE: xr1ksearch crash

developer
closed-fixed
5
2009-11-16
2009-10-06
marco atzeri
No

On cygwin-1.7 with gcc-4.3.4-1,
atlas-3.9.14 crash here

make[3]: Entering directory `/pub/cygports/lapack/lapack-atlas-3.9.14-3/build/tune/blas/ger'
./xr1ksearch -p d
assertion "fpout" failed: file "/pub/cygports/lapack/lapack-atlas-3.9.14-3/src/ATLAS//include/atlas_r1parse.h", line 351, function: WriteR1File
make[3]: *** [res/dR1SUMM] Aborted (core dumped)

error_Core232SSE3.tgz attached

Marco

Discussion

  • marco atzeri
    marco atzeri
    2009-10-06

     
    Attachments
  • ggl329
    ggl329
    2009-10-13

    I got the same situation on cygwin-1.7.0-62 with gcc-4.3.4-1.

    Using gdb, I found that fpout gets optimized out when WriteR1File is called by WriteR1File("stdout", ...).

    work-around:

    --- origsrc/ATLAS/include/atlas_r1parse.h
    +++ src/ATLAS/include/atlas_r1parse.h
    @@ -346,9 +346,10 @@
    fpout = stdout;
    else if (!strcmp(file, "stderr"))
    fpout = stderr;
    - else
    + else {
    fpout = fopen(file, "w");
    - assert(fpout);
    + assert(fpout);
    + }
    PrintR1Nodes(fpout, nq);
    if (fpout != stdout && fpout != stderr)
    fclose(fpout);

     
    • assigned_to: nobody --> rwhaley
    • status: open --> open-fixed
     
  • OK, it looks like this is a compiler error in gcc? Did the below workaround work for you?

    Thanks,
    Clint

     
  • marco atzeri
    marco atzeri
    2009-10-16

    it works.

    I applied similar workaround also to

    ./include/atlas_mmparse.h
    ./include/atlas_mvparse.h

    as they have similar structure.

    The built is now ok but, but make test stops with segfault at

    xcslvtst -n 167 -r 83 -O 2 c r -U 2 u l

    I will open a separate support request for that.
    Marco

     
    • labels: 320139 -->
    • milestone: 148063 -->
     
  • I have applied the compiler bug workaround to the basefiles, for Write[MM,MV,R1]File from the atlas_[mm,mv,r1]parse.h, so hopefully the will no longer trigger the compiler error in 3.9.17.

     
    • status: open-fixed --> open
     
    • status: open --> open-accepted
     
    • milestone: --> developer
    • labels: --> Problems during install
     
    • status: open-accepted --> closed-fixed
     
  • I put the gcc bug workarounds in 3.9.17; should be fixed.