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

Segfaults #321

Closed
simendsjo opened this issue Sep 21, 2013 · 6 comments
Closed

Segfaults #321

simendsjo opened this issue Sep 21, 2013 · 6 comments

Comments

@simendsjo
Copy link
Contributor

I seem to get segfaults at various locations again when remote connections are hanging up. Haven't tried a minimal example, but just holding F5 pressed in a browser does the trick for me.

libevent2 -> lev_unlock_mutex -> mtx.mutex.unlock

tried adding some asserts, and then I got some errors here

Program received signal SIGSEGV, Segmentation fault.
0x0000000000715000 in rt.deh2.terminate() ()
@mihails-strasuns
Copy link
Contributor

Please always mention vibe.d and dmd version in question - I have been recently tracking down some stuff and feels like that any combo of [last dmd release, dmd master] [last vibe.d release, vibe.d master] can produce its own quirks.

@simendsjo
Copy link
Contributor Author

vibe.d master, dmd 2.063.2, linux x64.

I tested a bit here, and it might seem like some corruption bug of some sort.
Adding assert(mtx !is null) after casting from lock succeeds. adding assert(mtx.mutex !is null) in the else block in question throws.
But if I change the else to else if(mtx.mutex !is null) it gives segfault at that line.

@s-ludwig
Copy link
Member

Fixed by d041fd4 as far as I could reproduce it. It's strange that didn't occur more often as it must have been there quite from the beginning and was quite easy to trigger now.

@simendsjo
Copy link
Contributor Author

I'll test this later. BTW, vibe has always triggered segfaults here - think I even reported a very similar report this spring.

@s-ludwig
Copy link
Member

Yeah, it may be the same as the concurrent requests/mysql-native bug, but I could never reproduce that one. But now it failed instantly with the help of a little sleep() - something that didn't help back then.

@s-ludwig
Copy link
Member

Closing for now.

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