ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
From: Takashi Kokubun <takashikkbn@gmail.com>
To: Ruby developers <ruby-core@ruby-lang.org>
Subject: [ruby-core:90908] Re: [ruby-alerts:11680] failure alert on trunk-mjit@silicon-docker (NG (r66707))
Date: Sun, 6 Jan 2019 09:58:23 +0900	[thread overview]
Message-ID: <CAOM42Uf6n7k3VWd2WK3hJGtGy83CVVEfy2LKOLTww-jCLqmsxQ@mail.gmail.com> (raw)
In-Reply-To: <20190105200402.vkbainkky7p2gh5x@dcvr>

> exec will already close because of FD_CLOEXEC, so this only happens in short window between vfork+exec.  Not worth closing ourselves because it only delays exec.

I see.

> So MJIT thread should become a Ruby thread which can acquire GVL on vfork (or evented/thread-less MJIT can happen).

Okay, I'll consider acquiring GVL from MJIT thread for a short term (I
guess evented one would take more time, similar to killing
timer-thread), also for enabling JIT during blocking IO.

2019年1月6日(日) 5:04 Eric Wong <normalperson@yhbt.net>:
>
> Takashi Kokubun <takashikkbn@gmail.com> wrote:
> > Thanks to explain that.
> >
> > > I suspect there is another thread which forks
> >
> > Maybe it's MJIT worker thread and it forks for spawning GCC?
> > If so, should we close inherited fds between fork and exec to prevent
> > impact for applications?
>
> Probably; because vfork only pauses MJIT thread; not any Ruby threads.
>
> exec will already close because of FD_CLOEXEC, so this only
> happens in short window between vfork+exec.  Not worth closing
> ourselves because it only delays exec.
>
> So MJIT thread should become a Ruby thread which can acquire GVL
> on vfork (or evented/thread-less MJIT can happen).  But no time
> for me.
>
> Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

      reply	other threads:[~2019-01-06  0:58 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20190104115414.CE64B3BED45@mail.atdot.net>
2019-01-05  9:27 ` [ruby-core:90895] Re: [ruby-alerts:11680] failure alert on trunk-mjit@silicon-docker (NG (r66707)) Eric Wong
2019-01-05 12:38   ` [ruby-core:90896] " Takashi Kokubun
2019-01-05 20:04     ` [ruby-core:90902] " Eric Wong
2019-01-06  0:58       ` Takashi Kokubun [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.ruby-lang.org/en/community/mailing-lists/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAOM42Uf6n7k3VWd2WK3hJGtGy83CVVEfy2LKOLTww-jCLqmsxQ@mail.gmail.com \
    --to=ruby-core@ruby-lang.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).