Occasional seg fault in make check at dispatch.cc

Ben Abbott bpabbott at mac.com
Wed Feb 4 20:04:07 CST 2009


On Feb 4, 2009, at 7:54 PM, John W. Eaton wrote:

> On  4-Feb-2009, Ben Abbott wrote:
>
> |
> | On Feb 4, 2009, at 6:02 PM, Michael D. Godfrey wrote:
> |
> | >>
> | >> his problem was also reported here:
> | >>
> | >>  https://www-old.cae.wisc.edu/pipermail/bug-octave/2009-January/007770.html
> | > Right.  This is a Linux quite a bit different from Fedora fc10,  
> but
> | > the
> | > system
> | > is also 64bit.  Anything else I can provide?
> | >
> | > Michael
> |
> | In the unlikely event my experience sheds some light ... my 64 bit  
> Mac
> | also seg-faults fairly reliably during the initial "make check"
> |
> | Integrated test scripts:
> |
> |    src/DLD-FUNCTIONS/besselj.cc ........................... PASS
> | 180/180
> |    src/DLD-FUNCTIONS/betainc.cc ...........................  
> PASS    6/6
> |    src/DLD-FUNCTIONS/bsxfun.cc ............................ PASS    
> 55/55
> |    src/DLD-FUNCTIONS/cellfun.cc ........................... PASS    
> 74/74
> |    src/DLD-FUNCTIONS/chol.cc .............................. PASS    
> 23/23
> |    src/DLD-FUNCTIONS/conv2.cc .............................  
> PASS    2/2
> |    src/DLD-FUNCTIONS/dassl.cc .............................  
> PASS    4/4
> |    src/DLD-FUNCTIONS/det.cc ...............................  
> PASS    5/5
> |    src/DLD-FUNCTIONS/dispatch.cc ..........................make[2]:
> | *** [check] Segmentation fault
> | make[1]: *** [check] Error 2
> | make: *** [check] Error 2
> |
> | If I issue a subsequent "make check" it usually fails 1 of 13 tests.
> |
> |    src/DLD-FUNCTIONS/besselj.cc ........................... PASS
> | 180/180
> |    src/DLD-FUNCTIONS/betainc.cc ...........................  
> PASS    6/6
> |    src/DLD-FUNCTIONS/bsxfun.cc ............................ PASS    
> 55/55
> |    src/DLD-FUNCTIONS/cellfun.cc ........................... PASS    
> 74/74
> |    src/DLD-FUNCTIONS/chol.cc .............................. PASS    
> 23/23
> |    src/DLD-FUNCTIONS/conv2.cc .............................  
> PASS    2/2
> |    src/DLD-FUNCTIONS/dassl.cc .............................  
> PASS    4/4
> |    src/DLD-FUNCTIONS/det.cc ...............................  
> PASS    5/5
> |    src/DLD-FUNCTIONS/dispatch.cc .......................... PASS
> | 12/13   FAIL 1
> |    src/DLD-FUNCTIONS/dlmread.cc ........................... PASS    
> 20/20
> |
> |  From fntest.log
> |
> |   19 >>>>> processing /Users/bpabbott/Development/mercurial/
> | octave-3.1.51/src/DLD-FUNCTIONS/dispatch.cc
> |   20   ***** test # replace base m-file
> |   21  echo_to_file ('function a=dispatch_x(a)', "dispatch_x.m");
> |   22  dispatch('dispatch_x','length','string')
> |   23  assert(dispatch_x(3),3)
> |   24  assert(dispatch_x("a"),1)
> |   25  sleep (2);
> |   26  echo_to_file ('function a=dispatch_x(a),++a;',  
> "dispatch_x.m");
> |   27  rehash();
> |   28  assert(dispatch_x(3),4)
> |   29  assert(dispatch_x("a"),1)
> |   30 !!!!! test failed
> |   31 `dispatch_x' undefined near line 5 column 9>>>>> processing /
> | Users/bpabbott/Development/mercurial/octave3.1.51/src/DLD-FUNCTIONS/
> | dlmread.cc
> |
> | When I run Octave and "test dispatch.cc" I do  not encounter any
> | problems.
>
> Does the following patch have any effect for you?  For me, it seems to
> help avoid the hanging problem I was seeing earlier during the initial
> "make check" after a build, and the dispatch failure like you were
> seeing above on (nearly all) subsequent runs.
>
> I don't claim that this is a fix for the underlying problem, but if
> this change avoids the problem by using some variation of the delay
> parameters to the echo_to_file function used by the test, then maybe
> we can discover and fix the underlying problem.
>
> Looking at these tests now, I think the "sleep (2)" there indicates
> that someone might have noticed a related problem at some earlier
> time.
>
> jwe

I still see one failure, but no seg-fault. Although I didn't always  
encounter a seg-fault before, so I'm not sure if the problem is fixed.

Ben




More information about the Bug-octave mailing list