-
Notifications
You must be signed in to change notification settings - Fork 448
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
Fix make resource failure when cc parallel is enabled #985
Conversation
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
And `rm -r job_token` Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Attempt to fix CI msrv failure Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Since we uses a function from 0.1.20 Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
ea3bc1a
to
5aecc4b
Compare
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Change it to an async function that returns `Result<JobToken, Error>` Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Verified locally by building |
Thank you for your hard work chasing this down! Just fly-by. Could we have one or two simple paragraphs describing what was wrong and how this PR gets it correct? |
Yes, so the problem is that make < 4.3 pass jobserver using annoymous pipe fd, and thus they share the file description between parent and child processes, e.g. flags When Since make < 4.3 is not able to handle jobserver pipe with make >= 4.3 uses Edit: This PR fixed this, by reverting to use crate |
Signed-off-by: Jiahao XU <Jiahao_XU@outlook.com>
Note that jobserver currently has a problem: It doesn't clone the anonymous pipe passed via env. So if someone calls Since fd is reused, this end up creates some really strange bug (this happened in opencv before twistedfall/opencv-rust#480 , they fixed it by using jobslot, which does clone the annoymous pipe fd) I've created rust-lang/jobserver-rs#57 but it has not been merged yet Plus jobserver now has msrv 1.63, and cc is still on 1.56 |
Confirmed this fixes the issue on our side, both for MacOS and iOS targets. Thanks @NobodyXu ! Looking forward to the next release |
Fixed #962