octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #49235] test inv crashes when compiled with In


From: Orion Poplawski
Subject: [Octave-bug-tracker] [bug #49235] test inv crashes when compiled with Intel compiler
Date: Fri, 30 Sep 2016 22:30:10 +0000 (UTC)
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0

URL:
  <http://savannah.gnu.org/bugs/?49235>

                 Summary: test inv crashes when compiled with Intel compiler
                 Project: GNU Octave
            Submitted by: opoplawski
            Submitted on: Fri 30 Sep 2016 10:30:05 PM GMT
                Category: Octave Function
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group: Crash
                  Status: None
             Assigned to: None
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
                 Release: 4.2.0-rc2
        Operating System: GNU/Linux

    _______________________________________________________

Details:

I'm working on building octave with the Intel compiler.  Configured with:

./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu
--program-prefix= --disable-dependency-tracking
--prefix=/opt/intel-2016/octave-4.2.0
--exec-prefix=/opt/intel-2016/octave-4.2.0
--bindir=/opt/intel-2016/octave-4.2.0/bin
--sbindir=/opt/intel-2016/octave-4.2.0/sbin
--sysconfdir=/opt/intel-2016/octave-4.2.0/etc
--datadir=/opt/intel-2016/octave-4.2.0/share
--includedir=/opt/intel-2016/octave-4.2.0/include
--libdir=/opt/intel-2016/octave-4.2.0/lib64
--libexecdir=/opt/intel-2016/octave-4.2.0/libexec --localstatedir=/var
--sharedstatedir=/var/lib --mandir=/opt/intel-2016/octave-4.2.0/share/man
--infodir=/opt/intel-2016/octave-4.2.0/share/info --enable-shared
--disable-static --enable-64=no --enable-fortran-calling-convention=gfortran
--enable-float-truncate --disable-silent-rules
'--with-blas=-L/opt/intel/compilers_and_libraries_2016.4.258/linux/mkl/lib/intel64
-lmkl_intel_lp64 -lmkl_core -lmkl_intel_thread -liomp5 -lpthread -lm -ldl'
'--with-lapack=-L/opt/intel/compilers_and_libraries_2016.4.258/linux/mkl/lib/intel64
-lmkl_intel_lp64 -lmkl_core -lmkl_intel_thread -liomp5 -lpthread -lm -ldl'
--with-java-libdir=/usr/lib/jvm/jre/lib/amd64/server --with-qrupdate
--with-amd --with-umfpack --with-colamd --with-ccolamd --with-cholmod
--with-cxsparse --disable-jit

$ ../run-octave -valgrind --norc --silent --no-history --no-gui
==15228== Memcheck, a memory error detector
==15228== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==15228== Using Valgrind-3.10.0 and LibVEX; rerun with -h for copyright info
....
==15228== 
octave:1> test inv
*** Error in
`/export/home/orion/fedora/octave/octave-4.2.0-rc2/src/.libs/lt-octave-gui':
free(): invalid next size (fast): 0x00002b19185d8ef0 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x7d053)[0x2b18f7a9c053]
/export/home/orion/fedora/octave/octave-4.2.0-rc2/libgui/.libs/liboctgui.so.2(_ZN5ArrayIdED1Ev+0x4c)[0x2b18e32eea9c]


Something is getting corrupted but valgrind doesn't help nor does gdb shed
much light.

(gdb) bt
#0  0x00002aaabf5a45f7 in __GI_raise (address@hidden)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1  0x00002aaabf5a5ce8 in __GI_abort () at abort.c:90
#2  0x00002aaabf5e4327 in __libc_message (address@hidden,
address@hidden "*** Error in `%s': %s: 0x%s ***\n") at
../sysdeps/unix/sysv/linux/libc_fatal.c:196
#3  0x00002aaabf5ec053 in _int_free (ar_ptr=0x2aaae0000020, ptr=<optimized
out>, str=0x2aaabf6ee4d0 "free(): invalid next size (fast)", action=3) at
malloc.c:5022
#4  0x00002aaabf5ec053 in _int_free (av=0x2aaae0000020, p=<optimized out>,
have_lock=0)
    at malloc.c:3842
#5  0x00002aaaaae3ea9c in Array<double>::~Array() (this=<optimized out>)
    at ./liboctave/array/Array.h:170
#6  0x00002aaaaae3ea9c in Array<double>::~Array() (this=0x1738)
    at ./liboctave/array/Array.h:306
#7  0x00002aaaaf7c157b in Matrix::finverse(MatrixType&, int&, double&, bool,
bool) const (this=0x2aaadb142498, mattype=..., address@hidden: 0,
address@hidden: 0.047619047619047623, force=true, calc_cond=true) at
liboctave/array/dMatrix.cc:600
#8  0x00002aaaaf7c075a in _ZNK6Matrix7inverseER10MatrixTypeRiRdbb.A
(this=<optimized out>)
    at liboctave/array/dMatrix.cc:633
#9  0x00002aaaaf7c075a in _ZNK6Matrix7inverseER10MatrixTypeRiRdbb.A
(this=<optimized out>)
    at liboctave/array/dim-vector.h:292
#10 0x00002aaaaf7c075a in _ZNK6Matrix7inverseER10MatrixTypeRiRdbb.A
(this=<optimized out>)
    at liboctave/array/Array.h:307
#11 0x00002aaaaf7c075a in _ZNK6Matrix7inverseER10MatrixTypeRiRdbb.A
(this=<optimized out>)
    at liboctave/array/Array.h:303
#12 0x00002aaaaf7c075a in _ZNK6Matrix7inverseER10MatrixTypeRiRdbb.A
(this=<optimized out>)
    at liboctave/array/MArray.h:83
#13 0x00002aaaaf7c075a in _ZNK6Matrix7inverseER10MatrixTypeRiRdbb.A
(this=<optimized out>)
    at liboctave/array/MArray.h:83
#14 0x00002aaaaf7c075a in _ZNK6Matrix7inverseER10MatrixTypeRiRdbb.A
(this=<optimized out>)
    at liboctave/array/dNDArray.h:38
#15 0x00002aaaaf7c075a in _ZNK6Matrix7inverseER10MatrixTypeRiRdbb.A
(this=<optimized out>)
    at liboctave/array/dNDArray.h:38
#16 0x00002aaaaf7c075a in _ZNK6Matrix7inverseER10MatrixTypeRiRdbb.A
(this=<optimized out>)
    at liboctave/array/dMatrix.h:39
#17 0x00002aaaaf7c075a in _ZNK6Matrix7inverseER10MatrixTypeRiRdbb.A
(this=0x174a, mattype=..., address@hidden: <error reading variable>,
address@hidden: <error reading variable>, force=12, calc_cond=true) at
liboctave/array/dMatrix.cc:626
#18 0x00002aaaad124949 in Finv(octave_value_list const&, int) (args=...,
nargout=6)
    at libinterp/corefcn/inv.cc:154
#19 0x00002aaaabe9c54c in octave_builtin::do_multi_index_op(int,
octave_value_list const&, std::list<octave_lvalue,
std::allocator<octave_lvalue> > const*) (this=0x174a, nargout=6, args=...,
lvalue_list=0x0) at libinterp/octave-value/ov-builtin.cc:126
#20 0x00002aaaabe9a8a5 in octave_builtin::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (this=0x174a,
type=<error reading variable: Cannot access memory at address 0x6>, idx=<error
reading variable: Cannot access memory at address 0xffffffffffffffff>,
nargout=0, lvalue_list=0xc) at libinterp/octave-value/ov-builtin.cc:65
#21 0x00002aaaabe9da75 in octave_builtin::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&)
(this=0x174a, type=<error reading variable: Cannot access memory at address
0x6>, idx=<error reading variable: Cannot access memory at address
0xffffffffffffffff>) at libinterp/octave-value/ov-builtin.h:64
#22 0x00002aaaac2f4a84 in
_ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi.A
(this=0x174a, type=<error reading variable: Cannot access memory at address
0x6>, idx=<error reading variable: Cannot access memory at address
0xffffffffffffffff>, nargout=0)
    at libinterp/octave-value/ov.cc:1445
#23 0x00002aaaac81db4a in tree_index_expression::rvalue(int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (this=0x174a,
nargout=6, lvalue_list=0xffffffffffffffff)
    at libinterp/parse-tree/pt-idx.cc:428
#24 0x00002aaaac81cbd1 in tree_index_expression::rvalue1(int) (this=0x174a,
nargout=6)
    at libinterp/parse-tree/pt-idx.cc:461
#25 0x00002aaaac7e00ba in
tree_argument_list::convert_to_const_vector(octave_value const*) (this=0x174a,
object=0x6) at libinterp/parse-tree/pt-arg-list.cc:247
#26 0x00002aaaac81d0c8 in tree_index_expression::rvalue(int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (this=0x174a,
nargout=6, lvalue_list=0xffffffffffffffff)
    at libinterp/parse-tree/pt-idx.cc:313
#27 0x00002aaaac81cbd1 in tree_index_expression::rvalue1(int) (this=0x174a,
nargout=6)
    at libinterp/parse-tree/pt-idx.cc:461
#28 0x00002aaaac804fd4 in
octave::tree_evaluator::visit_statement(tree_statement&) (this=0x1738,---Type
<return> to continue, or q <return> to quit---
 stmt=...) at libinterp/parse-tree/pt-eval.cc:692
#29 0x00002aaaac805215 in
octave::tree_evaluator::visit_statement_list(tree_statement_list&)
(this=0x1738, lst=...) at libinterp/parse-tree/pt-eval.cc:734
#30 0x00002aaaac2cdd6f in octave_user_function::do_multi_index_op(int,
octave_value_list const&, std::list<octave_lvalue,
std::allocator<octave_lvalue> > const*) (this=0x174a, nargout=6, _args=...,
lvalue_list=0x0) at libinterp/octave-value/ov-usr-fcn.cc:610
#31 0x00002aaaac2cbeb5 in octave_user_function::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (this=0x174a,
type=<error reading variable: Cannot access memory at address 0x6>, idx=<error
reading variable: Cannot access memory at address 0xffffffffffffffff>,
nargout=0, lvalue_list=0xc) at libinterp/octave-value/ov-usr-fcn.cc:431
#32 0x00002aaaac2f4cbd in
_ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi.A
(this=<optimized out>) at libinterp/octave-value/ov.cc:1447
#33 0x00002aaaac2f4cbd in
_ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi.A
(this=0x174a, type=<error reading variable: Cannot access memory at address
0x6>, idx=<error reading variable: Cannot access memory at address
0xffffffffffffffff>, nargout=0)
    at libinterp/octave-value/ov.cc:1445
#34 0x00002aaaac81db4a in tree_index_expression::rvalue(int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (this=0x174a,
nargout=6, lvalue_list=0xffffffffffffffff)
    at libinterp/parse-tree/pt-idx.cc:428
#35 0x00002aaaac7c8d6e in eval_string(std::string const&, bool, int&, int)
(eval_str=<error reading variable: Cannot access memory at address 0x174a>,
silent=6, address@hidden: <error reading variable>,
nargout=0) at libinterp/parse-tree/oct-parse.yy:4994
#36 0x00002aaaac7cc30f in Feval(octave_value_list const&, int) (arg=...,
silent=<optimized out>, parse_status=<optimized out>, nargout=<optimized
out>)
    at libinterp/parse-tree/oct-parse.yy:5040
#37 0x00002aaaac7cc30f in Feval(octave_value_list const&, int) (args=...,
nargout=6)
    at libinterp/parse-tree/oct-parse.yy:5116
#38 0x00002aaaabe9c54c in octave_builtin::do_multi_index_op(int,
octave_value_list const&, std::list<octave_lvalue,
std::allocator<octave_lvalue> > const*) (this=0x174a, nargout=6, args=...,
lvalue_list=0x0) at libinterp/octave-value/ov-builtin.cc:126
#39 0x00002aaaabe9a8a5 in octave_builtin::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (this=0x174a,
type=<error reading variable: Cannot access memory at address 0x6>, idx=<error
reading variable: Cannot access memory at address 0xffffffffffffffff>,
nargout=0, lvalue_list=0xc) at libinterp/octave-value/ov-builtin.cc:65
#40 0x00002aaaac2f4cbd in
_ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi.A
(this=<optimized out>) at libinterp/octave-value/ov.cc:1447
#41 0x00002aaaac2f4cbd in
_ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi.A
(this=0x174a, type=<error reading variable: Cannot access memory at address
0x6>, idx=<error reading variable: Cannot access memory at address
0xffffffffffffffff>, nargout=0)
    at libinterp/octave-value/ov.cc:1445
#42 0x00002aaaac81db4a in tree_index_expression::rvalue(int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (this=0x174a,
nargout=6, lvalue_list=0xffffffffffffffff)
    at libinterp/parse-tree/pt-idx.cc:428
#43 0x00002aaaac81cbd1 in tree_index_expression::rvalue1(int) (this=0x174a,
nargout=6)
    at libinterp/parse-tree/pt-idx.cc:461
#44 0x00002aaaac804fd4 in
octave::tree_evaluator::visit_statement(tree_statement&) (this=0x1738,
stmt=...) at libinterp/parse-tree/pt-eval.cc:692
#45 0x00002aaaac805215 in
octave::tree_evaluator::visit_statement_list(tree_statement_list&)
(this=0x1738, lst=...) at libinterp/parse-tree/pt-eval.cc:734
#46 0x00002aaaac804f1c in
octave::tree_evaluator::visit_statement(tree_statement&) (this=0x1738,
stmt=...) at libinterp/parse-tree/pt-eval.cc:666
#47 0x00002aaaac805215 in
octave::tree_evaluator::visit_statement_list(tree_statement_list&)
(this=0x1738, lst=...) at libinterp/parse-tree/pt-eval.cc:734
#48 0x00002aaaac80552d in
octave::tree_evaluator::visit_try_catch_command(tree_try_catch_command&)
(this=0x1738, cmd=...) at libinterp/parse-tree/pt-eval.cc:841
#49 0x00002aaaac804f1c in
octave::tree_evaluator::visit_statement(tree_statement&) (this=0x1738,
stmt=...) at libinterp/parse-tree/pt-eval.cc:666
#50 0x00002aaaac805215 in
octave::tree_evaluator::visit_statement_list(tree_statement_list&)
(this=0x1738, lst=...) at libinterp/parse-tree/pt-eval.cc:734
#51 0x00002aaaac804f1c in
octave::tree_evaluator::visit_statement(tree_statement&) (this=0x1738,
stmt=...) at libinterp/parse-tree/pt-eval.cc:666
#52 0x00002aaaac805215 in
octave::tree_evaluator::visit_statement_list(tree_statement_list&)
(this=0x1738, lst=...) at libinterp/parse-tree/pt-eval.cc:734
#53 0x00002aaaac807320 in
octave::tree_evaluator::visit_unwind_protect_command(tree_unwind_protect_command&)
(this=0x1738, cmd=...) at libinterp/parse-tree/pt-eval.cc:974
#54 0x00002aaaac804f1c in
octave::tree_evaluator::visit_statement(tree_statement&) (this=0x1738,---Type
<return> to continue, or q <return> to quit---
 stmt=...) at libinterp/parse-tree/pt-eval.cc:666
#55 0x00002aaaac805215 in
octave::tree_evaluator::visit_statement_list(tree_statement_list&)
(this=0x1738, lst=...) at libinterp/parse-tree/pt-eval.cc:734
#56 0x00002aaaac7fff7b in
octave::tree_evaluator::visit_simple_for_command(tree_simple_for_command&)
(this=0x1738, cmd=...) at libinterp/parse-tree/pt-eval.cc:311
#57 0x00002aaaac804f1c in
octave::tree_evaluator::visit_statement(tree_statement&) (this=0x1738,
stmt=...) at libinterp/parse-tree/pt-eval.cc:666
#58 0x00002aaaac805215 in
octave::tree_evaluator::visit_statement_list(tree_statement_list&)
(this=0x1738, lst=...) at libinterp/parse-tree/pt-eval.cc:734
#59 0x00002aaaac2cdd6f in octave_user_function::do_multi_index_op(int,
octave_value_list const&, std::list<octave_lvalue,
std::allocator<octave_lvalue> > const*) (this=0x174a, nargout=6, _args=...,
lvalue_list=0x0) at libinterp/octave-value/ov-usr-fcn.cc:610
#60 0x00002aaaac2cbeb5 in octave_user_function::subsref(std::string const&,
std::list<octave_value_list, std::allocator<octave_value_list> > const&, int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (this=0x174a,
type=<error reading variable: Cannot access memory at address 0x6>, idx=<error
reading variable: Cannot access memory at address 0xffffffffffffffff>,
nargout=0, lvalue_list=0xc) at libinterp/octave-value/ov-usr-fcn.cc:431
#61 0x00002aaaac2f4cbd in
_ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi.A
(this=<optimized out>) at libinterp/octave-value/ov.cc:1447
#62 0x00002aaaac2f4cbd in
_ZN12octave_value7subsrefERKSsRKSt4listI17octave_value_listSaIS3_EEi.A
(this=0x174a, type=<error reading variable: Cannot access memory at address
0x6>, idx=<error reading variable: Cannot access memory at address
0xffffffffffffffff>, nargout=0)
    at libinterp/octave-value/ov.cc:1445
#63 0x00002aaaac81db4a in tree_index_expression::rvalue(int,
std::list<octave_lvalue, std::allocator<octave_lvalue> > const*) (this=0x174a,
nargout=6, lvalue_list=0xffffffffffffffff)
    at libinterp/parse-tree/pt-idx.cc:428
#64 0x00002aaaac81cbd1 in tree_index_expression::rvalue1(int) (this=0x174a,
nargout=6)
    at libinterp/parse-tree/pt-idx.cc:461
#65 0x00002aaaac804fd4 in
octave::tree_evaluator::visit_statement(tree_statement&) (this=0x1738,
stmt=...) at libinterp/parse-tree/pt-eval.cc:692
#66 0x00002aaaac805215 in
octave::tree_evaluator::visit_statement_list(tree_statement_list&)
(this=0x1738, lst=...) at libinterp/parse-tree/pt-eval.cc:734
#67 0x00002aaaad12d639 in _ZN6octave11interpreter9main_loopEv.A ()
    at libinterp/corefcn/interpreter.cc:889
#68 0x00002aaaad12d639 in _ZN6octave11interpreter9main_loopEv.A (this=0x1738)
    at libinterp/corefcn/interpreter.cc:880
#69 0x00002aaaad12a45f in octave::interpreter::execute() (this=0x1738)
    at libinterp/corefcn/interpreter.cc:756
#70 0x00002aaaaadebe80 in octave_interpreter::execute() (this=0x1738)
    at libgui/src/octave-interpreter.cc:50
#71 0x00002aaab3b5141e in QObject::event(QEvent*) () at
/lib64/libQt5Core.so.5
#72 0x00002aaab2e5dbec in QApplicationPrivate::notify_helper(QObject*,
QEvent*) ()
    at /lib64/libQt5Widgets.so.5
#73 0x00002aaab2e625b2 in QApplication::notify(QObject*, QEvent*) ()
    at /lib64/libQt5Widgets.so.5
#74 0x00002aaab3b27d86 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
()
    at /lib64/libQt5Core.so.5
#75 0x00002aaab3b29fca in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) () at /lib64/libQt5Core.so.5
#76 0x00002aaab3b75823 in postEventSourceDispatch(_GSource*, int (*)(void*),
void*) ()
    at /lib64/libQt5Core.so.5
#77 0x00002aaac0c597aa in g_main_context_dispatch () at
/lib64/libglib-2.0.so.0
#78 0x00002aaac0c59af8 in g_main_context_iterate.isra.24 () at
/lib64/libglib-2.0.so.0
#79 0x00002aaac0c59bac in g_main_context_iteration () at
/lib64/libglib-2.0.so.0
#80 0x00002aaab3b750bb in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
at /lib64/libQt5Core.so.5
#81 0x00002aaab3b268eb in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) ()
    at /lib64/libQt5Core.so.5
#82 0x00002aaab39811e8 in QThread::exec() () at /lib64/libQt5Core.so.5
#83 0x00002aaab398591d in QThreadPrivate::start(void*) () at
/lib64/libQt5Core.so.5
#84 0x00002aaabe732dc5 in start_thread (arg=0x2aaadb147700) at
pthread_create.c:308
Python Exception <type 'exceptions.RuntimeError'> Cannot locate object file
for block.:
#85 0x00002aaabf665ced in clone




    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?49235>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]