Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Core Dump on function save_png_file #430

Closed
juvinski opened this issue May 23, 2018 · 6 comments
Closed

Core Dump on function save_png_file #430

juvinski opened this issue May 23, 2018 · 6 comments
Assignees

Comments

@juvinski
Copy link

Hi,

I was testing mvs-texturing and it's using mve and in one of my machines I'm getting a core dump on mvs-texturing call for save_png_file:

Program terminated with signal SIGILL, Illegal instruction.
#0 0x00000000004f1e57 in mve::image::save_png_file (image=..., filename=..., compression_level=compression_level@entry=1) at image_io.cc:411
411 &data[i * image->width() * image->channels()]);
[Current thread is 1 (Thread 0x7f87201aa700 (LWP 30159))]
(gdb) backtrace
#0 0x00000000004f1e57 in mve::image::save_png_file (image=std::shared_ptr (count 2, weak 0) 0x7f86e00008c0,
filename="/home/agroraptor/node-OpenDroneMap/data/03f9d352-546a-470c-b206-8869df59e78b/odm_texturing/tmp/2018_0509_135751_035_geotag.JPG.png",
compression_level=compression_level@entry=1) at image_io.cc:411

any clue what are happening ?

@simonfuhrmann
Copy link
Owner

#368

@simonfuhrmann
Copy link
Owner

I have seen this before, but on Windows. Not sure if this is related. Maybe @andre-schulz knows more?

@juvinski
Copy link
Author

I ran the same code on a google cloud machine with success but in my production server (4x Xeon 2.93 with 4 cores each).
I'm suspecting is something about threads like the other issue. I'm testing a simple change, a delay inside the for like that:
for (int i = 0; i < image->height(); ++i)
{
row_pointers[i] = const_cast<png_bytep>(&data[i * image->width() * image->channels()]);
usleep(1);
}
and the problem is gone, I didn't have more crashes and the program ran successfully.
I'm still digging a little more.
BTW I', running on a ubuntu 16.04 lts with kernel 4.13.0

@simonfuhrmann
Copy link
Owner

simonfuhrmann commented May 25, 2018

You can try to remove the #pragma omp statements if you think it's the multi-threading, and see if that works for you.

@andre-schulz
Copy link
Collaborator

@juvinski, does the SIGILL happen reliably?
When the SIGILL happens when you run the program with gdb, can you please post the output of disassemble?

@andre-schulz
Copy link
Collaborator

Closing this due to inactivity. If you encounter this issue again or have more information, feel free to reopen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants