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

intermittent sigsegv in text_util unit tests #20756

Open
jdm opened this issue May 6, 2018 · 13 comments
Open

intermittent sigsegv in text_util unit tests #20756

jdm opened this issue May 6, 2018 · 13 comments

Comments

@jdm
Copy link
Member

@jdm jdm commented May 6, 2018

http://build.servo.org/builders/mac-dev-unit/builds/11840/steps/test/logs/stdio

I've run the binary under a debugger and it appears to be a rustc problem, since it crashes in standard library code before actually running any test code.

@jdm jdm mentioned this issue May 7, 2018
6 of 7 tasks complete
@jdm jdm added the I-intermittent label May 8, 2018
@jdm
Copy link
Member Author

@jdm jdm commented May 8, 2018

FYI @KiChjang

@mbrubeck
Copy link
Contributor

@mbrubeck mbrubeck commented May 8, 2018

This has happened at least four times (in builds from both #20754 and #20615). All the instances I've seen are from the same machine, servo-mac2. cc @edunham

@jdm
Copy link
Member Author

@jdm jdm commented May 8, 2018

I pulled the binary off of the machine and it continued to segfault. I'm not sure if that means anything.

@mbrubeck
Copy link
Contributor

@mbrubeck mbrubeck commented May 8, 2018

Maybe the rlib for one of the standard libraries on this machine is corrupt. Since it's statically linked to the binary, that would make the binary fail everywhere. We could try rustup toolchain uninstall nightly-2018-05-03 to force a re-install of the maybe-corrupt files.

@nox
Copy link
Member

@nox nox commented May 9, 2018

Seems like a perma failure to me.

@jdm
Copy link
Member Author

@jdm jdm commented May 9, 2018

This has now been observed on servo-mac4 as well (#20766 (comment)).

@highfive
Copy link

@highfive highfive commented May 10, 2018

@jdm
Copy link
Member Author

@jdm jdm commented May 12, 2018

One possibility to work around this and allow merges to continue would be removing servo-mac2 and servo-mac4 from the pool of builders for mac-dev-unit at https://github.com/servo/saltfs/blob/master/buildbot/master/files/config/master.cfg#L178.

@jdm
Copy link
Member Author

@jdm jdm commented May 12, 2018

If the issue is nondeterministic codegen in rustc, we could try disabling codegen-units to see if it affects the output.

bors-servo added a commit that referenced this issue May 17, 2018
Disable codegen-units on macOS

If this makes #20756 go away, it suggests a rustc non-deterministic compilation bug.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20795)
<!-- Reviewable:end -->
bors-servo added a commit that referenced this issue May 17, 2018
Disable codegen-units on macOS

If this makes #20756 go away, it suggests a rustc non-deterministic compilation bug.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20795)
<!-- Reviewable:end -->
bors-servo added a commit that referenced this issue May 17, 2018
Disable codegen-units on macOS

If this makes #20756 go away, it suggests a rustc non-deterministic compilation bug.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20795)
<!-- Reviewable:end -->
@jdm
Copy link
Member Author

@jdm jdm commented May 18, 2018

@jdm jdm mentioned this issue May 18, 2018
3 of 6 tasks complete
@jdm
Copy link
Member Author

@jdm jdm commented May 18, 2018

I can reproduce the exact same issue on servo-mac2 with the following testcase:

#[test]
fn foo() {}

and running rustc --test foo.rs. This appears with the 2018-05-14 nightly; it does not appear with the 2018-04-14 (our previous pinned rust version). I'm going to get a regression range and file a bug upstream; we should revert our last rustc update to allow our CI to make progress.

@jdm
Copy link
Member Author

@jdm jdm commented May 18, 2018

bors-servo added a commit that referenced this issue May 18, 2018
Revert "Upgrade to rustc 1.27.0-nightly (8a37c75a3 2018-05-02)"

This is causing us to hit a mac bug in rustc that I'm still tracking down and ruining our ability to merge PRs. This works around #20756 until the problem is fixed upstream.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20820)
<!-- Reviewable:end -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
4 participants
You can’t perform that action at this time.