Issue #14867 has been updated by MSP-Greg (Greg L).


normalperson (Eric Wong) wrote:

>  Is that with the SIGCHLD_LOSSY (polling) patch applied on top of r63794?
>  JIT-test-all.log only says r63794.

Yes.  I added the patch file to the build.  Since removed for r64795.

>  I committed the the SIGCHLD_LOSSY (polling) patch as r64795
>  after your previous message.

Again, sorry for that.  I saw the green, and forgot that I left some code that subtracted only NJIT failures from the total to determine green/red.  IOW, it ran the tests, but disregarded them.

>  I'm not sure if the defined(__WIN32__) guard is correct or if defined(_WIN32)
>  also needs to be there

I suspect that mjit.c is some of the newest code in the repo, and quick search seemed to show
`#ifdef _WIN32` or `defined(_WIN32)`, but I have no idea.

> or if the waitpid() implementation in win32/win32.c works in timer thread...

All I know is config shows `checking for waitpid... (cached) yes`

Wish I could be of more help, and again, sorry for the incorrect info, Greg



----------------------------------------
Bug #14867: Process.wait can wait for MJIT compiler process
https://bugs.ruby-lang.org/issues/14867#change-72732

* Author: k0kubun (Takashi Kokubun)
* Status: Closed
* Priority: Normal
* Assignee: normalperson (Eric Wong)
* Target version: 
* ruby -v: 
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
If Ruby tries to wait for any child process, MJIT's gcc/clang process could be caught by the method call. It's not convenient for both Ruby's user and MJIT worker thread, so Process.wait and its families should somehow avoid waiting for it.

---Files--------------------------------
0001-hijack-SIGCHLD-handler-for-internal-use.patch (13.8 KB)
JIT-test-all.log (39.9 KB)


-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>