[#48582] Fwd: [ruby-changes:35635] nobu:r47717 (trunk): ruby.h: deprecate plain Data — SASADA Koichi <ko1@...>
ちょっといきなりこれは無いんじゃ無いでしょうか。
3 messages
2014/09/27
[#48586] Re: [ruby-cvs:54890] nobu:r47742 (trunk): common.mk: update only non-existing files — "Martin J. Dürst" <duerst@...>
gitweb が Last-Modified を送信しないのはちょっと残念です。誰に報告すれば
4 messages
2014/09/30
[#48589] Re: [ruby-cvs:54890] nobu:r47742 (trunk): common.mk: update only non-existing files
— Nobuyoshi Nakada <nobu@...>
2014/10/01
On 2014/09/30 15:18, "Martin J. Dürst" wrote:
[ruby-dev:48525] Re: [ruby-cvs:54587] nobu:r47439 (trunk): process.c: vfork may not work with pthread
From:
Tanaka Akira <akr@...>
Date:
2014-09-07 01:36:13 UTC
List:
ruby-dev #48525
2014-09-07 10:10 GMT+09:00 <nobu@ruby-lang.org>:
> nobu 2014-09-07 10:10:43 +0900 (Sun, 07 Sep 2014)
>
> New Revision: 47439
>
> http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=47439
>
> Log:
> process.c: vfork may not work with pthread
>
> * process.c (retry_fork_async_signal_safe): vfork may not work
> with pthread always even if fork works with it.
この変更ですが、vfork で作った子プロセスの中で pthread が動かないかぎり
vfork を使わないことになっていると思います。
それはコマンドを動かすには不要ですし、そんなことを要求されると
GNU/Linux でも vfork を使えなくなってしまいます。
実際この変更で、vfork を使わなくなってしまいます。
% strace -e vfork,clone ./ruby -e 'system("true")'
clone(child_stack=0x7fb5a6f17ff0,
flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID,
parent_tidptr=0x7fb5a6f189d0, tls=0x7fb5a6f18700,
child_tidptr=0x7fb5a6f189d0) = 20914
clone(child_stack=0,
flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0x7fb5a6eee9d0) = 20915
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=20915,
si_uid=1000, si_status=0, si_utime=0, si_stime=0} ---
+++ exited with 0 +++
--
[田中 哲][たなか あきら][Tanaka Akira]