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

rusti segfaults when spawning a new task #5803

Closed
danluu opened this issue Apr 9, 2013 · 0 comments
Closed

rusti segfaults when spawning a new task #5803

danluu opened this issue Apr 9, 2013 · 0 comments

Comments

@danluu
Copy link
Contributor

danluu commented Apr 9, 2013

rusti> spawn( || println("Please don't segfault") ); () Segmentation fault: 11

rusti> do spawn { println("Please?"); } () Segmentation fault: 11

Reason: KERN_PROTECTION_FAILURE at address: 0x00000001038074b8
[Switching to process 89585 thread 0x1d03]
0x00000001038074b8 in ?? ()
(gdb) bt
#0  0x00000001038074b8 in ?? ()
#1  0x0000000100105112 in __morestack ()
#2  0x00000001000847dc in task::spawn::spawn_raw::make_child_wrapper::anon::expr_fn_11924 ()```
bors added a commit that referenced this issue May 14, 2013
These few commits address a few existing issues:

* #5469 - adding regression tests for `rusti`. This adds unit tests to the `rusti.rc` file (which needed some reorganization of the Makefile, see the first commit message). These are super-simple right now, and sadly can't test the output of the tests. I worked for a bit on making a compiletest version of the rusti tests, but I ended up hitting something which blocked me, although I've forgotten it by this point.
* #5937 - regression test added, and it's fixed
* #5803 - just doesn't appear to happen any more
* #5784 - it's no longer broken, and it no longer spits out warnings about unused variables.

I also did some investigation into #5774, and you may want to read the comment I left on the bug. The gist of the situation is that C++ exceptions across JIT code don't look like they're working, even though they [should be working](https://github.com/mozilla/rust/blob/3aa1122ec25d15a2a73a295f8298ad9c38b09a10/src/rustllvm/RustWrapper.cpp#L387). If anyone has any insight on this, that would be awesome!
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

2 participants