Skip to content

rusti segfaults when spawning a new task #5803

New issue

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

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

Already on GitHub? # to your account

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!
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants