Bug 911807 - octave Segmentation fault after loading png image
Summary: octave Segmentation fault after loading png image
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: octave
Version: 20
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Jaromír Cápík
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-02-16 03:00 UTC by Matt Hirsch
Modified: 2016-02-01 01:57 UTC (History)
8 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2015-06-08 15:53:24 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Example png image that causes the problem (297 bytes, image/png)
2013-02-16 03:00 UTC, Matt Hirsch
no flags Details
octave imread crash - gdb session log (28.17 KB, text/plain)
2013-06-06 17:32 UTC, Jaromír Cápík
no flags Details

Description Matt Hirsch 2013-02-16 03:00:12 UTC
Created attachment 698067 [details]
Example png image that causes the problem

Description of problem: If a png image is loaded using imread in octave, octave receives a Segmentation fault error on exit.


Version-Release number of selected component (if applicable):
octave-3.6.3-2.fc18.2.x86_64

How reproducible:
Always

Steps to Reproduce:
1. run: octave
2. type: In = imread('img.png')
3. type: exit
  
Actual results:
Error message:

panic: Segmentation fault -- stopping myself...
panic: attempted clean up apparently failed -- aborting...
Aborted

Expected results:
Normal exit

Additional info:
I have attached an example image

Comment 1 Jaromír Cápík 2013-06-06 17:30:12 UTC
Hello Matt.

In my case it's an inverted Heisenbug. I can only reproduce it when running octave in gdb.

I'm going to attach my gdb session log to this bug for a later analysis.

Regards,
Jaromir.

Comment 2 Jaromír Cápík 2013-06-06 17:32:30 UTC
Created attachment 757784 [details]
octave imread crash - gdb session log

Comment 3 Jaromír Cápík 2013-06-06 17:38:31 UTC
The log contains 2 testing runs. Each of them resulted in a different stacktrace. In both cases the issue appeared in LWPs. Such kind of issues is sometimes pretty difficult to debug.

Comment 4 Orion Poplawski 2013-06-10 21:16:33 UTC
I've managed I think to trace it to here:

 symbol_table::cleanup () at symtab.cc:
1432      fcn_table.clear ();

And then:


(gdb)
1082              _M_erase(_S_right(__x));
2: *__x = {<std::_Rb_tree_node_base> = {_M_color = std::_S_red, _M_parent = 0x64bbc0,
    _M_left = 0x69f140, _M_right = 0x6a62c0}, _M_value_field = {first =
    "__is_handle_visible__", second = {rep = 0x6a08e0}}}
1: __x = (
    std::_Rb_tree_node<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, symbol_table::fcn_info> > *) 0x6a0b80
(gdb)
Program received signal SIGSEGV, Segmentation fault.

Which I think is in /usr/include/c++/4.7.2/bits/stl_tree.h

valgrind didn't report anything.  Ick.

Comment 5 Jaromír Cápík 2013-06-11 11:09:43 UTC
Hi Orion.

Yeah. It always happens after entering the cleanup. I believe it cleans some stuff that is still being used by the LWPs and consequently one of the LWPs causes the segmentation fault. But like I said, it needs a deeper analysis.

Regards,
Jaromir.

Comment 6 Fedora End Of Life 2013-12-21 15:22:56 UTC
This message is a reminder that Fedora 18 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 18. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '18'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 18's end of life.

Thank you for reporting this issue and we are sorry that we may not be 
able to fix it before Fedora 18 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior to Fedora 18's end of life.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 7 Matt Hirsch 2013-12-31 20:54:31 UTC
Seems to still happen in the Fedora 20 version of octave.

octave-3.6.4-6.fc20.x86_64

Comment 8 Fedora End Of Life 2015-05-29 08:53:49 UTC
This message is a reminder that Fedora 20 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 20. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora  'version'
of '20'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 20 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 9 Matt Hirsch 2015-05-30 15:26:09 UTC
This doesn't seem to happen in octave-3.8.2-11.fc21.x86_64 anymore, even running in gdb. At least it doesn't happen on the computer I'm currently using. It's not clear if it's been fixed for all versions or it just doesn't show up here, but I'm ok to let this bug die.


Note You need to log in before you can comment on or make changes to this bug.