< :前の番号
^ :番号順リスト
> :次の番号
P :前の記事(スレッド移動)
N :次の記事(スレッド移動)
|<:前のスレッド
>|:次のスレッド
^ :返事先
_:自分への返事
>:同じ返事先を持つ記事(前)
<:同じ返事先を持つ記事(後)
---:分割してスレッド表示、再表示
| :分割して(縦)スレッド表示、再表示
~ :スレッドのフレーム消去
.:インデックス
..:インデックスのインデックス
Issue #15809 has been updated by wanabe (_ wanabe).
gc_update_references() updates finalizer_table after https://git.ruby-lang.org/ruby.git/commit/?id=3cf767ee.
Therefore, "[BUG] ROOT finalizers points to MOVED" error seems to be suppressed.
I guess the [BUG] of [ruby-core:92665] is caused by T_IMEMO env, not by finalizer_table.
Values of `env->env[]` are pinned normally, but finalizer can create imemo_env objects and they have unpinned `env->env[]` as I said in [ruby-core:92615].
```
diff --git a/gc.c b/gc.c
index b71c501a5b..ec90416672 100644
--- a/gc.c
+++ b/gc.c
@@ -7721,7 +7721,12 @@ gc_ref_update_imemo(rb_objspace_t *objspace, VALUE obj)
case imemo_env:
{
rb_env_t *env = (rb_env_t *)obj;
+ VALUE *envp = (VALUE*)env->env;
+ unsigned int i;
TYPED_UPDATE_IF_MOVED(objspace, rb_iseq_t *, env->iseq);
+ for (i = 0; i < env->env_size; i++) {
+ UPDATE_IF_MOVED(objspace, envp[i]);
+ }
}
break;
break;
```
----------------------------------------
Bug #15809: GC.verify_compaction_references - intermittent SEGV's on multiple platforms
https://bugs.ruby-lang.org/issues/15809#change-78037
* Author: MSP-Greg (Greg L)
* Status: Assigned
* Priority: Normal
* Assignee: tenderlovemaking (Aaron Patterson)
* Target version:
* ruby -v: ruby 2.7.0dev (2019-05-06 trunk c3cf1ef9bb) [x64-mingw32
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
See
https://travis-ci.org/ruby/ruby/jobs/525627187#L2684
https://ci.appveyor.com/project/ruby/ruby/builds/24138134/job/i7e441u7se11w7ey#L3402
Both have an error similar to:
```
/ruby/test/ruby/test_gc_compact.rb:128: [BUG] ROOT finalizers points to MOVED:
0x0000000004679c20 -> 0x00000000089367c0 [0 ] T_ARRAY [E ] len: 1 (embed)
```
ruby-loco has also failed with a similar error. Attached STDERR output.
---Files--------------------------------
test_all_err.log (42 KB)
--
https://bugs.ruby-lang.org/
Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>