https://github.com/rust-lang/rust/issues/55005
ArcにまたUBが発見された。これは実効的なやつではなさそう。
あるスレッドでArcが不要になり参照カウントを減らしたとする。減らした命令のすぐ直後で割り込みが入り、次に目覚めたときには他スレッドがArcInnerを解放した後かもしれない。その「直後」のわずかな期間が問題
Conversation
Notices
-
Masaki Hara (qnighy@qnmd.info)'s status on Friday, 12-Oct-2018 20:14:49 JST
Masaki Hara
- 金具✅ repeated this.
-
Masaki Hara (qnighy@qnmd.info)'s status on Friday, 12-Oct-2018 20:19:09 JST
Masaki Hara
→問題になる。気持ち的には参照カウントを減らしてからArcInnerを触ることはない。しかしLLVMの規約上、参照は関数の最後まで生き延びないとUBになってしまう。fetch_subがその内部実装を呼び終えてからのわずかな時間が事故に繋がりうるという話である。
In conversation permalink 金具✅ repeated this.