[#120465] [Ruby master Bug#20998] rb_str_locktmp() changes flags of frozen strings and string literals — "Eregon (Benoit Daloze) via ruby-core" <ruby-core@...>
Issue #20998 has been reported by Eregon (Benoit Daloze).
17 messages
2025/01/03
[ruby-core:120641] [Ruby master Bug#20816] Potential regression in Ruby 3.3.x (compared with 3.1 and 3.2) regarding fast syscalls and multi-threading.
From:
"luke-gru (Luke Gruber) via ruby-core" <ruby-core@...>
Date:
2025-01-13 22:37:08 UTC
List:
ruby-core #120641
SXNzdWUgIzIwODE2IGhhcyBiZWVuIHVwZGF0ZWQgYnkgbHVrZS1ncnUgKEx1a2UgR3J1YmVyKS4N Cg0KDQpJIHRoaW5rIHRoaXMgaXMgZHVlIHRvIHRoZSByZWZhY3RvciBmb3IgTTpOIHRocmVhZHMu IEluIHRoZSAzLjIgcmVsZWFzZSwgd2hpY2ggaXMgZmFzdCBldmVuIHRob3VnaCBpdCBzdGlsbCB1 c2VzIGNvbmRpdGlvbiB2YXJpYWJsZXMgaW4gYHRocmVhZF9zY2hlZF90b19ydW5uaW5nX2NvbW1v bmAsIHRoZSBjaGFuZ2luZyBvZiB0aHJlYWRzIHdhcyBuZXZlciBmb3JjZWQgZHVyaW5nIGEgYmxv Y2tpbmcgb3BlcmF0aW9uLg0KDQpUaGF0IGlzLCBpbiBCTE9DS0lOR19SRUdJT04gKGB0aHJlYWQu Y2ApLCBpdCBnb2VzOg0KDQoxLiBgdGhyZWFkX3NjaGVkX3RvX3dhaXRpbmcodGgpYCAtLSB0aGlz IHJlbGVhc2VzIHBlci1yYWN0b3IgR1ZMIChgVEhfU0NIRUQodGgpLT5ydW5uaW5nYCBjaGFuZ2Vz IGZyb20gY3VycmVudCBydWJ5IHRocmVhZCAoYEdFVF9USFJFQUQoKWApIHRvIE5VTEwpLiBUaGVu LCBzaWduYWwgdGhlIG5leHQgcnVieSB0aHJlYWQgaW4gdGhpcyByYWN0b3IncyByZWFkeXEsIGlm IGFueS4NCjIuIGV4ZWN1dGUgYmxvY2tpbmcgb3BlcmF0aW9uLCBsaWtlIGBGaWxlLm10aW1lYA0K My4gYHRocmVhZF9zY2hlZF90b19ydW5uaW5nKHRoKWAgLS0gQmxvY2tzIHVudGlsIGFub3RoZXIg dGhyZWFkIHNpZ25hbHMgaXQgaWYgYW5vdGhlciB0aHJlYWQgaXMgcnVubmluZyBhbmQgaGFzIHRo ZSBHVkwsIG90aGVyd2lzZSBjb250aW51ZXMgd2l0aG91dCBibG9ja2luZw0KDQpMb3RzIG9mIHRp bWVzLCBzaW5jZSAjMiBjYW4gYmUgc28gZmFzdCwgd2hlbiB3ZSBnZXQgdG8gIzMsIGBzY2hlZC0+ cnVubmluZ2AgaXMgc3RpbGwgTlVMTCBmcm9tICMxIGJlY2F1c2UgdGhlIG90aGVyIHRocmVhZCB3 ZSBzaWduYWxsZWQgaGFzbid0IHdva2VuIHVwIHlldCBhbmQgdGFrZW4gY29udHJvbCBvZiBgc2No ZWQtPnJ1bm5pbmdgLiBUaGUgT1Mgc2NoZWR1bGVyIGhhc24ndCBzd2l0Y2hlZCwgc28gdGhlcmUg YXJlIGxlc3MgY29udGV4dCBzd2l0Y2hlcy4gSSBzZWUgdGhpcyBpbiBzb21lIGN1c3RvbSBwcmlu dGYgbG9nZ2luZyBJIG1hZGUsIHdoZXJlIDEgdGhyZWFkIHJ1bnMgbWFueSBpdGVyYXRpb25zIG9m IHRoZSBzeXNjYWxsLCB0aGVuIGFub3RoZXIgdGhyZWFkIHJ1bnMgbWFueSwgZXRjLg0KDQpJbiB0 aGUgbmV3IHN5c3RlbSwNCg0KMS4gU2ltaWxhciB0byBiZWZvcmUsIGJ1dCBpZiB0aGVyZSdzIGEg bmV4dCB0aHJlYWQgcmVhZHkgKGluIHJlYWR5cSkgd2UgYWN0dWFsbHkgZm9yY2UgaXQgdG8gaG9s ZCB0aGUgR1ZMICh3ZSBzZXQgYHNjaGVkLT5ydW5uaW5nID0gbmV4dF90aGApLCB0aGVuIHdlIHNp Z25hbCBpdCdzIGNvbmR2YXIgdGVsbGluZyBpdCB0byBydW4NCjIuIEV4ZWN1dGUgYmxvY2tpbmcg b3BlcmF0aW9uDQozLiBQdXQgb3Vyc2VsdmVzIGluIHRoZSBiYWNrIG9mIHRoZSByZWFkeXEsIGFu ZCB3YWl0IHVudGlsIHdlJ3JlIHNpZ25hbGxlZA0KDQpTbyBpbiBzdW1tYXJ5LCB0aGVyZSBpcyBt b3JlIGNvbnRleHQgc3dpdGNoaW5nLCB3aGljaCBpcyB0aGUgbWFpbiBzbG93ZG93biBJIGJlbGll dmUuIFRoZXJlIGlzIGFsc28gbW9yZSBvdmVyaGVhZCBub3cgZHVlIHRvIHRpbWVzbGljZSBib29r a2VlcGluZyB3aGljaCBJIHRoaW5rIGNhbiBiZSByZWR1Y2VkLg0KDQpUaGUgbmV3IHJhY3Rvci90 aHJlYWQgc2NoZWR1bGluZyBzeXN0ZW0gaXMgbW9yZSBjb21wbGV4IHRoYW4gdGhlIG9sZCBvbmUs IGJ1dCBJIHRoaW5rIHdlIGNhbiBmaXggdGhpcyBpc3N1ZS4gSSByZWFkIHRoYXQgR28gZG9lcyBz b21lIGZhbmN5IHRoaW5ncyB3aXRoIGZhc3Qgc3lzY2FsbHMgd2hlcmUgaWYgYSBrbm93bi1mYXN0 IHN5c2NhbGwgaXMgbWFkZSwgdGhlIGdvcm91dGluZSBzY2hlZHVsZXIgZG9lc24ndCBzaWduYWwg dGhlIG5leHQgZ29yb3V0aW5lIGJ1dCBwb3N0cyB0byBhIG1vbml0b3JpbmcgdGhyZWFkIHdpdGgg YSBzbWFsbCB0aW1lb3V0IHZhbHVlIGFuZCBpZiB0aGlzIHZhbHVlIGlzIGV4Y2VlZGVkIGJ5IHRo ZSBzeXNjYWxsIHRoZW4gdGhlIG5leHQgZ29yb3V0aW5lIGlzIHNjaGVkdWxlZCwgb3RoZXJ3aXNl IGl0IG5ldmVyIHNpZ25hbHMgdGhlIG5leHQgZ29yb3V0aW5lIGF0IGFsbCwgdGFrZXMgaXRzZWxm IG9mZiB0aGUgbW9uaXRvcmluZyB0aHJlYWQgYW5kIGNvbnRpbnVlcy4gVGhlcmUncyBzb21lIGlu Zm9ybWF0aW9uIGhlcmUgYWJvdXQgdGhhdDogaHR0cHM6Ly91dGNjLnV0b3JvbnRvLmNhL35ja3Mv c3BhY2UvYmxvZy9wcm9ncmFtbWluZy9Hb1NjaGVkdWxlckFuZFN5c2NhbGxzLg0KDQpXZSBjb3Vs ZCBkbyBzb21ldGhpbmcgc2ltaWxhciB0byBHbyBvciB0cnkgdG8gaW5jb3Jwb3JhdGUgbW9yZSBv ZiBob3cgaXQgdXNlZCB0byB3b3JrIGludG8gdGhlIG5ldyBzeXN0ZW0uIEkgdGhpbmsgZG9pbmcg c29tZXRoaW5nIHNpbWlsYXIgdG8gR28gbWFrZXMgc2Vuc2Ugd2l0aCBob3cgdGhlIG5ldyBzY2hl ZHVsZXIgd29ya3MuDQoNCg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQ0KQnVnICMyMDgxNjogUG90ZW50aWFsIHJlZ3Jlc3Npb24gaW4gUnVieSAzLjMueCAoY29tcGFy ZWQgd2l0aCAzLjEgYW5kIDMuMikgcmVnYXJkaW5nIGZhc3Qgc3lzY2FsbHMgYW5kIG11bHRpLXRo cmVhZGluZy4NCmh0dHBzOi8vYnVncy5ydWJ5LWxhbmcub3JnL2lzc3Vlcy8yMDgxNiNjaGFuZ2Ut MTExNDcwDQoNCiogQXV0aG9yOiBhZHJpZW5qYXJ0aG9uIChBZHJpZW4gSmFydGhvbikNCiogU3Rh dHVzOiBPcGVuDQoqIHJ1YnkgLXY6IDMuMy41DQoqIEJhY2twb3J0OiAzLjE6IERPTlRORUVELCAz LjI6IERPTlRORUVELCAzLjM6IFJFUVVJUkVEDQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tDQpPayBJJ20gc29ycnkgaW4gYWR2YW5jZSBpZiB0aGlzIGlzIG5vdCByZWFs bHkgYSByZWdyZXNzaW9uIChtYXliZSBpdCdzIHRoZSBjb3N0IHRvIHBheSBmb3Igb3RoZXIgaW1w cm92ZW1lbnRzKSBidXQgaXQgc3RpbGwgc2hvd2VkIGFzIGEgMzAlIHBlcmZvcm1hbmNlIGRyb3Ag aW4gbXkgYmVuY2htYXJrIHNvIEkgdGhpbmsgaXQgbWF5IGJlIHdvcnRoIGEgbG9vay4NCg0KRm9y IHRoZSBmdWxsIHN0b3J5IGFib3V0IGhvdyBJIGNhbWUgZG93biB0aGlzIHJhYmJpdCBob2xlIEkg anVzdCB3cm90ZSBhIGJsb2cgcG9zdCB0byBhdm9pZCBjbHV0dGVyaW5nIHRoZSBpc3N1ZTogaHR0 cHM6Ly91cGRvd24uaW8vYmxvZy93ZWlyZC1yZXN1bHRzLWNvbXBhcmluZy1ydWJ5LTMtMS0zLTIt My0zLXdpdGgtamVtYWxsb2MtYW5kLXlqaXQgKHBsZWFzZSByZWFkIGl0IGZpcnN0KQ0KDQpIZXJl IEknbSBnb25uYSBwdXQgbXkgbGFzdCBmaW5kaW5ncyBhbmQgdGhlIHNtYWxsZXN0IHJlcHJvZHVj aWJsZSBleGFtcGxlIEkgd2FzIGFibGUgdG8gd3JpdGUuDQoNClNvIGJhc2ljYWxseSBJIG5vdGlj ZWQgdGhhdCBxdWljayBzeXNjYWxscyAoYXQgbGVhc3Qgd2l0aCBhIGdvb2QgU1NEKSBsaWtlIGBG aWxlLmV4aXN0cz9gIG9yIGBGaWxlLm10aW1lYCwgd2hlbiB1c2VkIGluIGEgbXVsdGktdGhyZWFk ZWQgZW52aXJvbmVtZW50IChTaWRla2lxIGluIG15IGluaXRpYWwgdGVzdGluZyBidXQgSSByZWR1 Y2VkIGl0IHRvIGEgZmV3IFRocmVhZC5uZXcpIGFyZSBzaWduaWZpY2FudGx5IHNsb3dlciBpbiAz LjMueCAodGVzdGVkIHdpdGggdGhlIHNhbWUgcmVzdWx0cyBvbiAzLjMuMCwgMy4zLjIgYW5kIDMu My41IGZvciB0aGUgbW9tZW50KSBpbiBjb21wYXJpc29uIHdpdGggMy4xLjIgb3IgMy4yLjU6IGFi b3V0IHR3aWNlIGFzIHNsb3cuDQoNClRoZXNlIHN5c2NhbGxzIGFyZSBoZWF2aWx5IHVzZWQgYnkg dGhlIFJhaWxzIFJlbG9hZGVyIHdoaWNoIGlzIGhvdyBpdCBoYWQgc3VjaCBhIGh1Z2UgaW1wYWN0 ICgzMCUpIGluIG15IHRlc3RpbmcuDQoNCkhlcmUgaXMgdGhlIHNtYWxsIHJlcHJvZHVjdGlvbiBz Y3JpcHQgSSB3cm90ZToNCg0KYGBgIHJ1YnkNCiMhL3Vzci9iaW4vZW52IHJ1YnkNCg0KR0MuZGlz YWJsZSAjIGp1c3QgdG8gbWFrZSBzdXJlIGl0IGRvZXNuJ3Qgc2tldyByZXN1bHRzDQpUSFJFQURT ID0gKEFSR1YuZmlyc3QgfHwgMTApLnRvX2kgICMgY2hvb3NlIHRocmVhZCBjb3VudCBmcm9tIENM SQ0KTiA9IDEwXzAwMF8wMDAgIyB0byBtYWtlIHRoZSB0ZXN0IGxvbmdlciBvciBzaG9ydGVyDQoN CnB1dHMgIlJ1YnkgI3tSVUJZX1ZFUlNJT059IC8gWUpJVDogI3tSdWJ5Vk06OllKSVQuZW5hYmxl ZD99IC8gI3tUSFJFQURTfSBUaHJlYWRzIg0KDQpBcnJheS5uZXcoVEhSRUFEUykubWFwIGRvDQog IFRocmVhZC5uZXcgZG8NCiAgICAoTi9USFJFQURTKS50aW1lcyB7IEZpbGUubXRpbWUoX19GSUxF X18pIH0NCiAgZW5kDQplbmQuZWFjaCgmOmpvaW4pDQoNCnB1dHMgIiN7Tn0gY2FsbHMgY29tcGxl dGVkIg0KYGBgDQoNClRoZSBnb2FsIGlzIGp1c3QgdG8gcnVuIGEgbG90IG9mIGZhc3Qgc3lzY2Fs bHMsIGluIHZhcmlvdXMgbnVtYmVyIG9mIHRocmVhZHMsIGFuZCBoZXJlIGFyZSB0aGUgbnVtYmVy cyBvbiBteSBtYWNoaW5lOg0KfFRocmVhZHNcUnVieXwzLjEuMiB8My4zLjUgfA0KfC0tfC0tfC0t fA0KfDEgfCAxMy43cyB8IOKchSAxNC4ycyB8DQp8MiB8IDkuN3MgfCDimqDvuI8gMzMuNHMgfA0K fDQgfCAyMy4ycyB8IOKaoO+4jyAzNy4wcyB8DQp8OCB8IDIxLjhzIHwg4pqg77iPIDM5LjdzIHwN CnwxNiB8IDIzLjFzIHwg4pqg77iPIDQxLjVzIHwNCg0KKG1vcmUgbnVtYmVycyBpbiB0aGUgW2Js b2cgcG9zdF0oaHR0cHM6Ly91cGRvd24uaW8vYmxvZy93ZWlyZC1yZXN1bHRzLWNvbXBhcmluZy1y dWJ5LTMtMS0zLTItMy0zLXdpdGgtamVtYWxsb2MtYW5kLXlqaXQpKQ0KDQpJIHN1c3BlY3RlZCB0 aGUgW25ldyBOOk0gdGhyZWFkIHNjaGVkdWxlciBpbnRyb2R1Y2VkIGluIDMuM10oaHR0cHM6Ly9n aXRodWIuY29tL3J1YnkvcnVieS9wdWxsLzg2MjkpLCBldmVuIHRob3VnaCBpdCdzICJkaXNhYmxl ZCIgYnkgZGVmYXVsdCBvbiB0aGUgbWFpbiBSYWN0b3IsIHRoaW5raW5nIG1heWJlIHRoZXNlIGNo YW5nZXMgZGVncmFkZWQgYSBiaXQgdGhpcyAocXVpdGUgc3BlY2lmaWMgc2NlbmFyaW8pLiBTbyBJ IGdhdmUgYSBxdWljayB0cnkgd2l0aCB0aGUgZmVhdHVyZSBFTkFCTEVELCB0byBzZWUgaWYgaXQg d291bGQgYXQgbGVhc3QgY2hhbmdlIGFueXRoaW5nIGFuZCBpdCBkaWQgISAodGhvdWdoIG5vdCB3 YXMgSSBleHBlY3RlZCk6DQoNCnxUaHJlYWRzXFJ1Ynl8My4xLjIgfDMuMy41IHwgMy4zLjUgd2l0 aCBSVUJZX01OX1RIUkVBRFM9MSB8DQp8LS18LS18LS18LS18DQp8MSB8IDEzLjdzIHwgMTQuMnMg fCAxNC41cyDinIUgfA0KfDIgfCA5LjdzIHwg4pqg77iPIDMzLjRzIHwgMTIuM3Mg8J+OiSB8DQp8 NCB8IDIzLjJzIHwg4pqg77iPIDM3LjBzIHwgNDAuNXMg8J+nkCB8DQp8OCB8IDIxLjhzIHwg4pqg 77iPIDM5LjdzIHwgMzcuOXMg8J+nkCB8DQp8MTYgfCAyMy4xcyB8IOKaoO+4jyA0MS41cyB8IDM2 LjNzIPCfp5AgfA0KDQoNCihJIGNhbiBtYWtlIGdyYXBocyBmb3IgdGhlc2UgbnVtYmVycyBpZiBp dCBoZWxwcykNCg0KTm93IEknbSBhIGJpdCBzdHVjayBpbiBteSBpbnZlc3RpZ2F0aW9uLCBJJ20g bm90IHN1cmUgd2hhdCBjaGFuZ2UgaW4gMy4zIGNhdXNlZCB0aGlzICh0aGUgbmV3IHRocmVhZCBz Y2hlZHVsZXIgaXMgYSBnb29kIGxlYWQgSU1PKSBvciBpZiBpdCBldmVuIGlzIGEgcmVncmVzc2lv bi4gTWF5YmUgdGhpcyBkb3duc2lkZSBpcyBpbm5ldml0YWJsZSBmb3Igb3RoZXIgYmVuZWZpdHM/ IEkgYW0gaGFwcHkgdG8gY29udHJpYnV0ZSBtb3JlIHRpbWUgdG8gdGhpcyBpc3N1ZSBhbmQgcGVy Zm9ybSBtb3JlIHRlc3RzIGJ1dCBJIHdvdWxkIG5lZWQgc29tZSBndWlkYW5jZSBvbiB3aGF0IGNv dWxkIGJlIGludGVyZXN0aW5nIHRvIHRlc3QsIGZyb20gcGVvcGxlIHdobyB1bmRlcnN0YW5kIGEg Yml0IGJldHRlciB0aGFuIG1lIGhvdyB0aGlzIHdvcmtzIGludGVybmFsbHkuDQoNClRoYW5rcyAh IChhbmQgc29ycnkgZm9yIHRoZSBsb25nIHJlYWQpDQoNCi0tLUZpbGVzLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCkNhcHR1cmUgZOKAmWXMgWNyYW4gMjAyNC0xMC0yNiBhzIAgMTIu MTAuNDUucG5nICgxMzMgS0IpDQpDYXB0dXJlIGTigJllzIFjcmFuIDIwMjQtMTAtMjYgYcyAIDEy LjEwLjU1LnBuZyAoMTA5IEtCKQ0KQ2FwdHVyZSBk4oCZZcyBY3JhbiAyMDI0LTEwLTI2IGHMgCAx Mi4xNC40NC5wbmcgKDEyNyBLQikNCkNhcHR1cmUgZOKAmWXMgWNyYW4gMjAyNC0xMC0yNiBhzIAg MTIuMTQuNTEucG5nICgxMzkgS0IpDQoNCg0KLS0gDQpodHRwczovL2J1Z3MucnVieS1sYW5nLm9y Zy8NCiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCiBydWJ5 LWNvcmUgbWFpbGluZyBsaXN0IC0tIHJ1YnktY29yZUBtbC5ydWJ5LWxhbmcub3JnCiBUbyB1bnN1 YnNjcmliZSBzZW5kIGFuIGVtYWlsIHRvIHJ1YnktY29yZS1sZWF2ZUBtbC5ydWJ5LWxhbmcub3Jn CiBydWJ5LWNvcmUgaW5mbyAtLSBodHRwczovL21sLnJ1YnktbGFuZy5vcmcvbWFpbG1hbjMvbGlz dHMvcnVieS1jb3JlLm1sLnJ1YnktbGFuZy5vcmcv