From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: AS4713 221.184.0.0/13 X-Spam-Status: No, score=-3.7 required=3.0 tests=AWL,BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,SPF_PASS shortcircuit=no autolearn=ham autolearn_force=no version=3.4.1 Received: from neon.ruby-lang.org (neon.ruby-lang.org [221.186.184.75]) by dcvr.yhbt.net (Postfix) with ESMTP id 872371F404 for ; Fri, 10 Aug 2018 09:33:20 +0000 (UTC) Received: from neon.ruby-lang.org (localhost [IPv6:::1]) by neon.ruby-lang.org (Postfix) with ESMTP id 42870120C11; Fri, 10 Aug 2018 18:33:18 +0900 (JST) Received: from o1678948x4.outbound-mail.sendgrid.net (o1678948x4.outbound-mail.sendgrid.net [167.89.48.4]) by neon.ruby-lang.org (Postfix) with ESMTPS id C16F6120BFC for ; Fri, 10 Aug 2018 18:33:15 +0900 (JST) Received: by filter0001p3iad2.sendgrid.net with SMTP id filter0001p3iad2-3733-5B6D5BD8-17 2018-08-10 09:33:12.45984667 +0000 UTC m=+20534.418866247 Received: from herokuapp.com (ec2-54-161-242-130.compute-1.amazonaws.com [54.161.242.130]) by ismtpd0044p1mdw1.sendgrid.net (SG) with ESMTP id PuHnd_evS3iSCxwp89nuBw Fri, 10 Aug 2018 09:33:12.347 +0000 (UTC) Date: Fri, 10 Aug 2018 09:33:13 +0000 (UTC) From: ko1@atdot.net To: ruby-core@ruby-lang.org Message-ID: References: Mime-Version: 1.0 X-Redmine-MailingListIntegration-Message-Ids: 63822 X-Redmine-Project: ruby-trunk X-Redmine-Issue-Id: 13618 X-Redmine-Issue-Author: normalperson X-Redmine-Issue-Assignee: normalperson X-Redmine-Sender: ko1 X-Mailer: Redmine X-Redmine-Host: bugs.ruby-lang.org X-Redmine-Site: Ruby Issue Tracking System X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-SG-EID: ync6xU2WACa70kv/Ymy4QrNMhiuLXJG8OTL2vJD1yS6+Ctcj5Bvn0y6whf0RJwXTP1hQE41bo4lN0O lQ2cKADAr0+hp5nBI+O+lELQPDnjspGSYqJk4yKasvcyZLJBYLZ7ZVrMucj+wpcxPDeZoIQnXV9IL1 1F129HDX5IGqiNCztmEvcjFIFiwHwQrNemcm X-ML-Name: ruby-core X-Mail-Count: 88433 Subject: [ruby-core:88433] [Ruby trunk Feature#13618] [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid X-BeenThere: ruby-core@ruby-lang.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: Ruby developers List-Id: Ruby developers List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ruby-core-bounces@ruby-lang.org Sender: "ruby-core" SXNzdWUgIzEzNjE4IGhhcyBiZWVuIHVwZGF0ZWQgYnkga28xIChLb2ljaGkgU2FzYWRhKS4KCgpX ZSBkaXNjdXNzZWQgYWJvdXQgbmFtaW5nLgoKYGBgClggSW9UaHJlYWQubmV3e30KWCBHcmVlblRo cmVhZC5uZXd7fQpYIFRocmVhZDo6R3JlZW4ubmV3e30gICMxMjQg4oCcbW9zdCBsaWtlbHkgY2Fu ZGlkYXRlc+KAnSh2b3RlOiBoc2J0KQpYIFRocmVhZC5ncmVlbnt9ICAgICAgICAgICAjMTI0IOKA nG1vc3QgbGlrZWx5IGNhbmRpZGF0ZXPigJ0KWCBUaHJlYWQuY3JlYXRlKHNjaGVkdWxlcjog4oCm LCBhcmdzOiAuLi4pICMxMjQg4oCcbW9zdCBsaWtlbHkgY2FuZGlkYXRlc+KAnQpUaHJlYWQ6OkNv b3AubmV3e30KVGhyZWFkOjpDb29wZXJhdGl2ZS5uZXd7fSAjICh1c2EpClRocmVhZDo6Tm9ucHJl ZW1wdGl2ZS5uZXd7fSAjICh1c2E7IHRoZXNlIDIgbmFtZXMgYXJlIHZlcnkgbG9uZywgdGhlbiB0 aGV5IGFyZSBnb29kIF5eKQpYIE5vbnByZWVtcHRpdmVUaHJlYWQubmV3IHt9ICMgKG1ya24pClgg TlBUaHJlYWQubmV3IHt9ICMgKG1ya24pClggVGhyZWFkOjpMaWdodCAoa28xKQpgYGAKClg6IHJl amVjdGVkLgoKRGlzY3Vzc2lvbiBpcyBmb2xsb3c6CgoqICgxKSBBdCBmaXJzdCwgImdyZWVuIiBp cyByZWplY3RlZCBiZWNhdXNlICJncmVlbiIgaXMgaG93IHRvIGltcGxlbWVudCBhbmQgdGhlcmUg YXJlIHNldmVyYWwgImdyZWVuIHRocmVhZHMiIGNhbiBzdXBwb3J0IHByZWVtcHRpb24gKHN1Y2gg YXMgUnVieSAxLjgpLgoqICgyKSBOZXcgdG9wbGV2ZWwgbmFtZSBpcyByZWplY3RlZCBiZWNhdXNl IGlzIHNob3VsZCBiZSB1bmRlciBgVGhyZWFkYCBuYW1pbmcuCiogKDMpYFRocmVhZC5jcmVhdGVg IGlzIHJlamVjdGVkIGJlY2F1c2UgaXQgc2VlbXMgdG8gbWFrZSBgVGhyZWFkYCBjbGFzcyBvYmpl Y3QgYW5kIGF1dG8tZmliZXIgc2hvdWxkIGJlIGRpZmZlcmVudCBjbGFzcy4KKiAoNCkgQ29vcGVy YXRpdmUgaXMgcmVqZWN0ZWQgYmVjYXVzZSBpdCBpcyBhbHNvIGFtYmlndW91cy4KKiAoNSkgTm9u cHJlZW1wdGl2ZSBpcyBjb25zaWRlcmFibGUgYmVjYXVzZSBpdCBpcyBkaWZmZXJlbnQgZnJvbSB3 aGF0IHRoZSBhcHBsaWNhdGlvbiBwcm9ncmFtbWVycyAodXNlcnMpIHdhbnQuCiogKDYpIFRocmVh ZDo6TGlnaHQgaXMgcmVqZWN0ZWQgYmVjYXVzZSB0aGlzIG5hbWUgZG9lcyBub3QgbWFrZSBzZW5z ZSB3aGF0IHRoZSBjbGFzcyBpcy4KClNvIGxhc3QgZGV2bWVldGluZywgd2UgY2FuJ3QgY29uY2x1 ZGUgdGhlIG5hbWluZyBpc3N1ZS4KCkJUVywgSSB0aGluayB0aGlzIGNsYXNzIHNob3VsZCBiZSAi VGhyZWFkIiAoSSdtIGFnYWluc3QgKDMpLCB3aGljaCBieSBNYXR6KS4KCkkgdGhpbmsgYXV0by1m aWJlcnMgYXJlIFRocmVhZHMgd2hpY2ggaGF2ZSBzcGVjaWFsIGF0dHJpYnV0ZSAoc2NoZWR1bGVy KS4gYXV0by1maWJlcnMgc2hvdWxkIGhhdmUgc2FtZSBtZXRob2RzIGluIGBUaHJlYWRgLgpJJ20g bm90IHN1cmUgd2h5IE1hdHogZG9lcyBub3QgbGlrZSB0aGlzIGlkZWEsIHRob3VnaC4KClRoZXJl IGFyZSBzZXZlcmFsIHNpbWlsYXIgZXhhbXBsZXM6CgoqIFByb2MgKHByb2MgYW5kIGxhbWJkYSkK KiBGaWJlciAoc2VtaS1jb3JvdXRpbmUgYW5kIGNvcm91dGluZSAoYWZ0ZXIgYEZpYmVyI3RyYW5z ZmVyYCkKCldlYWsgZXhhbXBsZXM6CiogSGFzaCAoY29tcGFyZV9ieV9pZGVudGl0eSkKKiBTdHJ1 Y3QgKGtleXdvcmRfaW5pdCkKKiBFbnVtZXJhdG9yIChzdXBwb3J0IHNpemUgb3Igbm90KQoKCi0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KRmVhdHVyZSAjMTM2MTg6IFtQ QVRDSF0gYXV0byBmaWJlciBzY2hlZHVsZSBmb3IgcmJfd2FpdF9mb3Jfc2luZ2xlX2ZkIGFuZCBy Yl93YWl0cGlkCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8xMzYxOCNjaGFuZ2Ut NzM0ODgKCiogQXV0aG9yOiBub3JtYWxwZXJzb24gKEVyaWMgV29uZykKKiBTdGF0dXM6IEFzc2ln bmVkCiogUHJpb3JpdHk6IE5vcm1hbAoqIEFzc2lnbmVlOiBub3JtYWxwZXJzb24gKEVyaWMgV29u ZykKKiBUYXJnZXQgdmVyc2lvbjogCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KYGBgCmF1dG8gZmliZXIgc2NoZWR1bGUgZm9yIHJiX3dhaXRfZm9yX3NpbmdsZV9mZCBh bmQgcmJfd2FpdHBpZAoKSW1wbGVtZW50IGF1dG9tYXRpYyBGaWJlciB5aWVsZCBhbmQgcmVzdW1l IHdoZW4gcnVubmluZwpyYl93YWl0X2Zvcl9zaW5nbGVfZmQgYW5kIHJiX3dhaXRwaWQuCgpUaGUg UnVieSBBUEkgY2hhbmdlcyBmb3IgRmliZXIgYXJlIG5hbWVkIGFmdGVyIGV4aXN0aW5nIFRocmVh ZAptZXRob2RzLgoKbWFpbiBSdWJ5IEFQSToKCiAgICBGaWJlciNzdGFydCAtPiBlbmFibGUgYXV0 by1zY2hlZHVsaW5nIGFuZCBydW4gRmliZXIgdW50aWwgaXQKCQkgICBhdXRvbWF0aWNhbGx5IHlp ZWxkcyAoZHVlIHRvIEVBR0FJTi9FV09VTERCTE9DSykKClRoZSBmb2xsb3dpbmcgYmVoYXZlIGxp a2UgdGhlaXIgVGhyZWFkIGNvdW50ZXJwYXJ0czoKCiAgICBGaWJlci5zdGFydCAtIEZpYmVyLm5l dyArIEZpYmVyI3N0YXJ0IChwcmVsdWRlLnJiKQogICAgRmliZXIjam9pbiAtIHJ1biBpbnRlcm5h bCBzY2hlZHVsZXIgdW50aWwgRmliZXIgaXMgdGVybWluYXRlZAogICAgRmliZXIjdmFsdWUgLSBk aXR0bwogICAgRmliZXIjcnVuIC0gbGlrZSBGaWJlciNzdGFydCAocHJlbHVkZS5yYikKClJpZ2h0 IG5vdywgaXQgdGFrZXMgb3ZlciByYl93YWl0X2Zvcl9zaW5nbGVfZmQoKSBhbmQKcmJfd2FpdHBp ZCgpIGZ1bmN0aW9uIGlmIHRoZSBydW5uaW5nIEZpYmVyIGlzIGF1dG8tZW5hYmxlZAooY29udC5j OjpyYl9maWJlcl9hdXRvX3NjaGVkX3ApCgpDaGFuZ2VzIHRvIGV4aXN0aW5nIGZ1bmN0aW9ucyBh cmUgbWluaW1hbC4KCk5ldyBmaWxlcyAoYWxsIG5ldyBzdHJ1Y3RzIGFuZCByZWxhdGlvbnMgc2hv dWxkIGJlIGRvY3VtZW50ZWQpOgoKICAgIGlvbS5oIC0gaW50ZXJuYWwgQVBJIGZvciB0aGUgcmVz dCBvZiBSdWJ5Vk0gKGluY29tcGxldGU/KQogICAgaW9tX2ludGVybmFsLmggLSBpbnRlcm5hbCBo ZWFkZXIgZm9yIGlvbV8oc2VsZWN0fGVwb2xsfGtxdWV1ZSkuaAogICAgaW9tX2Vwb2xsLmggLSBl cG9sbC1zcGVjaWZpYyBwaWVjZXMKICAgIGlvbV9rcXVldWUuaCAtIGtxdWV1ZS1zcGVjaWZpYyBw aWVjZXMKICAgIGlvbV9zZWxlY3QuaCAtIHNlbGVjdC1zcGVjaWZpYyBwaWVjZXMKICAgIGlvbV9w aW5nYWJsZV9jb21tb24uaCAtIGNvbW1vbiBjb2RlIGZvciBpb21fKGVwb2xsfGtxdWV1ZSkuaAog ICAgaW9tX2NvbW1vbi5oIC0gY29tbW9uIGZvb3RlciBmb3IgaW9tXyhzZWxlY3R8ZXBvbGx8a3F1 ZXVlKS5oCgpDaGFuZ2VzIHRvIGV4aXN0aW5nIGRhdGEgc3RydWN0dXJlczoKCiAgICByYl90aHJl YWRfdC5hZnJ1bnEgICAtIGxpc3Qgb2YgZmliZXJzIHRvIGF1dG8tcmVzdW1lCiAgICByYl92bV90 LmlvbSAgICAgICAgICAtIFJ1YnkgSS9PIE1hbmFnZXIgKHJiX2lvbV90KSA6KQoKQmVzaWRlcyBy Yl9pb21fdCwgYWxsIHRoZSBuZXcgc3RydWN0cyBhcmUgc3RhY2stb25seSBhbmQgcmVsaWVzCmV4 dGVuc2l2ZWx5IG9uIGNjYW4vbGlzdCBmb3IgYnJhbmNoLWxlc3MsIE8oMSkgaW5zZXJ0L2RlbGV0 ZS4KCkFzIHVzdWFsLCB1bmRlcnN0YW5kaW5nIHRoZSBkYXRhIHN0cnVjdHVyZXMgZmlyc3Qgc2hv dWxkIGhlbHAKeW91IHVuZGVyc3RhbmQgdGhlIGNvZGUuCgpSaWdodCBub3csIEkgcmV1c2Ugc29t ZSBzdGF0aWMgZnVuY3Rpb25zIGluIHRocmVhZC5jLApzbyB0aHJlYWQuYyBpbmNsdWRlcyBpb21f KHNlbGVjdHxlcG9sbHxrcXVldWUpLmgKClRPRE86CgogICAgSGlqYWNrIG90aGVyIGJsb2NraW5n IGZ1bmN0aW9ucyAoSU8uc2VsZWN0LCAuLi4pCgpJIGFtIHVzaW5nICJkb3VibGUiIGZvciB0aW1l b3V0IHNpbmNlIGl0IGlzIG1vcmUgY29udmVuaWVudCBmb3IKYXJpdGhtZXRpYyBsaWtlIHBhcnRz IG9mIHRocmVhZC5jLiAgIE1vc3QgcGxhdGZvcm1zIGhhdmUgZ29vZCBGUCwKSSB0aGluay4gIEFs c28sIGFsbCAiYmxvY2tpbmciIGZ1bmN0aW9ucyAocmJfaW9tX3dhaXQqKSB3aWxsCmhhdmUgdGlt ZW91dCBzdXBwb3J0LgoKLi9jb25maWd1cmUgZ2FpbnMgYSBuZXcgLS13aXRoLWlvbT0oc2VsZWN0 fGVwb2xsfGtxdWV1ZSkgc3dpdGNoCgpsaWJrcXVldWU6CgogIGxpYmtxdWV1ZSBzdXBwb3J0IGlz IGluY29tcGxldGU7IGNvcm5lciBjYXNlcyBhcmUgbm90IGhhbmRsZWQgd2VsbDoKCiAgICAxKSBt dWx0aXBsZSBmaWJlcnMgd2FpdGluZyBvbiB0aGUgc2FtZSBGRAogICAgMikgd2FpdGluZyBmb3Ig Ym90aCByZWFkIGFuZCB3cml0ZSBldmVudHMgb24gdGhlIHNhbWUgRkQKCiAgQnVnZml4ZXMgdG8g bGlia3F1ZXVlIG1heSBiZSBuZWNlc3NhcnkgdG8gc3VwcG9ydCBhbGwgY29ybmVyIGNhc2VzLgog IFN1cHBvcnRpbmcgdGhlc2UgY29ybmVyIGNhc2VzIGZvciBuYXRpdmUga3F1ZXVlIHdhcyBjaGFs bGVuZ2luZywKICBldmVuLiAgU2VlIGNvbW1lbnRzIG9uIGlvbV9rcXVldWUuaCBhbmQgaW9tX2Vw b2xsLmggZm9yCiAgbnVhbmNlcy4KCkxpbWl0YXRpb25zCgpUZXN0IHNjcmlwdCBJIHVzZWQgdG8g ZG93bmxvYWQgYSBmaWxlIGZyb20gbXkgc2VydmVyOgotLS0tODwtLS0KcmVxdWlyZSAnbmV0L2h0 dHAnCnJlcXVpcmUgJ3VyaScKcmVxdWlyZSAnZGlnZXN0L3NoYTEnCnJlcXVpcmUgJ2ZpYmVyJwoK dXJsID0gJ2h0dHA6Ly84MHgyNC5vcmcvZ2l0LWktZm9yZ290LXRvLXBhY2svb2JqZWN0cy9wYWNr L3BhY2stOTdiMjVhNzZjMDNiNDg5ZDRjYmJkODViMTJkMGUxYWQyODcxN2U1NS5pZHgnCgp1cmkg PSBVUkkodXJsKQp1c2Vfc3NsID0gImh0dHBzIiA9PSB1cmkuc2NoZW1lCmZpYnMgPSAxMC50aW1l cy5tYXAgZG8KICBGaWJlci5zdGFydCBkbwogICAgY3VyID0gRmliZXIuY3VycmVudC5vYmplY3Rf aWQKICAgICMgWFhYIGdldGFkZHJpbmZvKCkgYW5kIGNvbm5lY3QoKSBhcmUgYmxvY2tpbmcKICAg ICMgWFhYIHJlc29sdi9yZXBsYWNlICsgY29ubmVjdF9ub25ibG9jawogICAgTmV0OjpIVFRQLnN0 YXJ0KHVyaS5ob3N0LCB1cmkucG9ydCwgdXNlX3NzbDogdXNlX3NzbCkgZG8gfGh0dHB8CiAgICAg IHJlcSA9IE5ldDo6SFRUUDo6R2V0Lm5ldyh1cmkpCiAgICAgIGh0dHAucmVxdWVzdChyZXEpIGRv IHxyZXN8CiAgICBkaWcgPSBEaWdlc3Q6OlNIQTEubmV3CiAgICByZXMucmVhZF9ib2R5IGRvIHxi dWZ8CiAgICAgIGRpZy51cGRhdGUoYnVmKQogICAgICAjd2FybiAiI3tjdXJ9ICN7YnVmLmJ5dGVz aXplfVxuIgogICAgZW5kCiAgICB3YXJuICIje2N1cn0gI3tkaWcuaGV4ZGlnZXN0fVxuIgogICAg ICBlbmQKICAgIGVuZAogICAgd2FybiAiZG9uZVxuIgogICAgOmRvbmUKICBlbmQKZW5kCgp3YXJu ICJqb2luaW5nICN7VGltZS5ub3d9XG4iCmZpYnNbLTFdLmpvaW4oNCkKd2FybiAiam9pbmVkICN7 VGltZS5ub3d9XG4iCmFsbCA9IGZpYnMuZHVwCgp3YXJuICIxIGpvaW5lZCwgd2FpdCBmb3IgdGhl IHJlc3RcbiIKdW50aWwgZmlicy5lbXB0eT8KICBmaWJzLmVhY2goJjpqb2luKQogIGZpYnMua2Vl cF9pZigmOmFsaXZlPykKICB3YXJuIGZpYnMuaW5zcGVjdAplbmQKCnAgYWxsLm1hcCgmOnZhbHVl KQoKRmliZXIubmV3IGRvCiAgcHV0cyAnSEknCmVuZC5ydW4uam9pbgpgYGAKCgotLS1GaWxlcy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCjAwMDEtYXV0by1maWJlci1zY2hlZHVsZS1m b3ItcmJfd2FpdF9mb3Jfc2luZ2xlX2ZkLWFuZC1yYi5wYXRjaCAoODIuOCBLQikKCgotLSAKaHR0 cHM6Ly9idWdzLnJ1YnktbGFuZy5vcmcvCg==