-
Notifications
You must be signed in to change notification settings - Fork 230
segv under heavy load #161
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
Comments
I see similar signs of memory corruption with master.
Not sure what's causing the glib error. |
Hi John, Can you try building with asan? Try adding this gcc flag: |
You can also do tsan (it may need to be in a separate run): For both of these, you have to pass the flag during both the compile and link steps. |
Hi John, thanks for your report. I can't reproduce the segfault on Fedora 21 x86_64, with either 3.4.0 or master, but I am seeing the SIGTRAP (from inside glib, on a failed Your test program is leaking |
Oop, you're right. I've updated the test program to remove the vips dependency and clean up. It fixes the glib errors, but I still see random heap corruption:
Roughly one run in three. That's with git master openslide. The crashes go if I comment out I'll try with asan, as you suggested @agoode. |
I got an error from asan:
Not sure how helpful that is. |
I forgot to say, I'm on Ubuntu 14.04, the current long-term support release. |
I tried with valgrind, but that ran cleanly, it's not very good with threads. |
Reproduced on Fedora 21; thanks for the update. The problem is inside |
Oh, possibly a glib error? That's interesting. It took me a week to track it down this far :-( good luck. |
It turns out that a helper function of |
works around a crash under heavy load, see openslide/openslide#161
I've added a |
glib 2.48.1 fixes the thread safety of |
Hi, I'm seeing a segv with 3.4.0 under heavy load. This is 50 threads all calling openslide_detect_vendor() in parallel:
https://gist.github.com/jcupitt/8ec613adcd6c000e82d7
I'm seeing:
I'll try with master as well.
The text was updated successfully, but these errors were encountered: