QR causes random crashes...seg fault.

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

QR causes random crashes...seg fault.

niles-5
Bug report for Octave 1.90 configured for alpha-dec-osf3.2

Description:
-----------

  * If I do:
        [Q, R, P] = qr (0)
        several times under linux or OSF/1 I get:
error: Segmentation fault -- stopping myself...
attempting to save variables to `octave-core'...
save to `octave-core' complete

Repeat-By:
---------

  * Doing the same, but note:
        1) I think you need three return items.
        2) In an m-file with other stuff it's worse.
        3) This could be a general problem with all oct-files!


Configuration (please do not edit this section):
-----------------------------------------------

uname output:     OSF1 axp745.gsfc.nasa.gov V3.2 17 alpha
configure opts:   --enable-lite-kernel --enable-shared
Fortran compiler: g77
FFLAGS:           -O
F2C:              
F2CFLAGS:        
FLIBS:            -lf2c -L/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.2.f.1 -L/usr/lib/cmplrs/cc -L/usr/local/lib -lgcc
CPPFLAGS:        
INCFLAGS:         -I/usr/local/include -I/usr/local/include/octave-1.90
C compiler:       gcc, version 2.7.2.f.1
CFLAGS:           -DHAVE_CONFIG_H  -g -O -Wall
CPICFLAG:        
C++ compiler:     c++, version 2.7.2.f.1
CXXFLAGS:         -DHAVE_CONFIG_H  -fno-implicit-templates  -g -O -Wall
CXXPICFLAG:      
LDFLAGS:          -g
LIBFLAGS:         -L/usr/local/lib
RLD_FLAG:         -Xlinker -rpath -Xlinker /usr/local/lib
CXXLIBS:          -lstdc++ -lm -L/usr/local/lib/gcc-lib/alpha-dec-osf3.2/2.7.2.f.1 -L/usr/lib/cmplrs/cc -L/usr/local/lib -lstdc++ -lm -lgcc -lc -lgcc
TERMLIBS:         -ltermcap
LIBS:            
LEXLIB:          
LIBPLPLOT:        
LIBDLFCN:        
DEFS:

  -DOCTAVE_SOURCE=1 -DSEPCHAR=':' -DSEPCHAR_STR=":" -DUSE_GNU_INFO=1
  -DUSE_READLINE=1 -DOCTAVE_LITE=1 -DSIZEOF_SHORT=2 -DSIZEOF_INT=4
  -DSIZEOF_LONG=8 -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1
  -DF77_APPEND_UNDERSCORE=1 -DSTDC_HEADERS=1 -DHAVE_DIRENT_H=1
  -DTIME_WITH_SYS_TIME=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_ASSERT_H=1
  -DHAVE_CURSES_H=1 -DHAVE_FCNTL_H=1 -DHAVE_FLOAT_H=1 -DHAVE_LIMITS_H=1
  -DHAVE_MEMORY_H=1 -DHAVE_PWD_H=1 -DHAVE_SGTTY_H=1 -DHAVE_STDLIB_H=1
  -DHAVE_STRING_H=1 -DHAVE_SYS_PARAM_H=1 -DHAVE_SYS_RESOURCE_H=1
  -DHAVE_SYS_SELECT_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TIME_H=1
  -DHAVE_SYS_TIMES_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_UTSNAME_H=1
  -DHAVE_TERMIO_H=1 -DHAVE_TERMIOS_H=1 -DHAVE_UNISTD_H=1
  -DHAVE_VARARGS_H=1 -DNPSOL_MISSING=1 -DQPSOL_MISSING=1 -DFSQP_MISSING=1
  -DHAVE_ATEXIT=1 -DHAVE_BCOPY=1 -DHAVE_BZERO=1 -DHAVE_DUP2=1
  -DHAVE_EXECVP=1 -DHAVE_FCNTL=1 -DHAVE_FORK=1 -DHAVE_GETCWD=1
  -DHAVE_GETHOSTNAME=1 -DHAVE_GETPGRP=1 -DHAVE_GETPID=1 -DHAVE_GETPPID=1
  -DHAVE_LSTAT=1 -DHAVE_MEMMOVE=1 -DHAVE_MKDIR=1 -DHAVE_MKFIFO=1
  -DHAVE_PIPE=1 -DHAVE_PUTENV=1 -DHAVE_RENAME=1 -DHAVE_RINDEX=1
  -DHAVE_RMDIR=1 -DHAVE_SETVBUF=1 -DHAVE_SIGACTION=1 -DHAVE_SIGPENDING=1
  -DHAVE_SIGPROCMASK=1 -DHAVE_SIGSUSPEND=1 -DHAVE_STAT=1
  -DHAVE_STRCASECMP=1 -DHAVE_STRDUP=1 -DHAVE_STRERROR=1
  -DHAVE_STRNCASECMP=1 -DHAVE_TEMPNAM=1 -DHAVE_UMASK=1 -DHAVE_UNLINK=1
  -DHAVE_VFPRINTF=1 -DHAVE_VSPRINTF=1 -DHAVE_WAITPID=1 -DHAVE_DLOPEN=1
  -DHAVE_DLSYM=1 -DHAVE_DLERROR=1 -DHAVE_DLCLOSE=1 -DWITH_DL=1
  -DWITH_DYNAMIC_LINKING=1 -DHAVE_LIBM=1 -DHAVE_FINITE=1 -DHAVE_ISNAN=1
  -DHAVE_ACOSH=1 -DHAVE_ASINH=1 -DHAVE_ATANH=1 -DHAVE_ERF=1 -DHAVE_ERFC=1
  -DHAVE_ST_BLKSIZE=1 -DHAVE_ST_BLOCKS=1 -DHAVE_ST_RDEV=1
  -DHAVE_TM_ZONE=1 -DEXCEPTION_IN_MATH=1 -DRETSIGTYPE=void
  -DHAVE_SYS_SIGLIST=1 -DHAVE_GETRUSAGE=1 -DHAVE_TIMES=1
  -DGNUPLOT_HAS_MULTIPLOT=1 -DGNUPLOT_HAS_FRAMES=1

User-preferences (please do not edit this section):
--------------------------------------------------

  EDITOR = "emacs"
  IMAGEPATH = ".:/usr/local/share/octave/1.90/imagelib//"
  INFO_FILE = "/usr/local/info/octave.info"
  LOADPATH = ".:/usr/local/libexec/octave/site/oct/alpha-dec-osf3.2//:/usr/local/share/octave/site/m//:/usr/local/libexec/octave/1.90/oct/alpha-dec-osf3.2//:/usr/local/share/octave/1.90/m//"
  OCTAVE_VERSION = "1.90"
  PAGER = "less"
  PS1 = "\\s:\\#> "
  PS2 = "> "
  automatic_replot = 0
  whitespace_in_literal_matrix = ""
  default_save_format = "ascii"
  do_fortran_indexing = 0
  empty_list_elements_ok = "warn"
  eps = 2.22045e-16
  gnuplot_binary = "gnuplot"
  ignore_function_time_stamp = "system"
  implicit_str_to_num_ok = 0
  ok_to_lose_imaginary_part = "warn"
  output_max_field_width = 10
  output_precision = 5
  page_screen_output = 1
  prefer_column_vectors = 1
  prefer_zero_one_indexing = 0
  print_answer_id_name = 1
  print_empty_dimensions = 1
  propagate_empty_matrices = 1
  resize_on_range_error = 1
  return_last_computed_value = 0
  save_precision = 15
  silent_functions = 0
  split_long_rows = 1
  treat_neg_dim_as_zero = 0
  warn_assign_as_truth_value = 1
  warn_comma_in_global_decl = 1
  warn_divide_by_zero = 1

Reply | Threaded
Open this post in threaded view
|

QR causes random crashes...seg fault.

John W. Eaton-6
On  4-Nov-1996, Frederick A. Niles <[hidden email]> wrote:

: Description:
: -----------
:
:   * If I do:
:         [Q, R, P] = qr (0)
:         several times under linux or OSF/1 I get:
: error: Segmentation fault -- stopping myself...
: attempting to save variables to `octave-core'...
: save to `octave-core' complete
:
: Repeat-By:
: ---------
:
:   * Doing the same, but note:
:         1) I think you need three return items.
: 2) In an m-file with other stuff it's worse.
: 3) This could be a general problem with all oct-files!

Luckily, I think it is just a brain-o with the implementation of the
QRP classes.

jwe


Index: dbleQRP.cc
===================================================================
RCS file: /home/jwe/src/master/octave/liboctave/dbleQRP.cc,v
retrieving revision 1.16
diff -c -r1.16 dbleQRP.cc
*** dbleQRP.cc 1996/03/03 01:16:15 1.16
--- dbleQRP.cc 1996/11/05 03:37:12
***************
*** 140,146 ****
  (*current_liboctave_error_handler) ("unrecoverable error in dorgqr");
        else
  {
!  q = Matrix (tmp_data, m, m);
   q.resize (m, n2);
  }
      }
--- 140,146 ----
  (*current_liboctave_error_handler) ("unrecoverable error in dorgqr");
        else
  {
!  q = A_fact;
   q.resize (m, n2);
  }
      }
Index: CmplxQRP.cc
===================================================================
RCS file: /home/jwe/src/master/octave/liboctave/CmplxQRP.cc,v
retrieving revision 1.16
diff -c -r1.16 CmplxQRP.cc
*** CmplxQRP.cc 1996/03/03 01:16:15 1.16
--- CmplxQRP.cc 1996/11/05 03:37:33
***************
*** 145,151 ****
  (*current_liboctave_error_handler) ("unrecoverable error in zungqr");
        else
  {
!  q = ComplexMatrix (tmp_data, m, m);
   q.resize (m, n2);
  }
      }
--- 145,151 ----
  (*current_liboctave_error_handler) ("unrecoverable error in zungqr");
        else
  {
!  q = A_fact;
   q.resize (m, n2);
  }
      }