[Mono-dev] s390x - delegate-async-exit
Neale Ferguson
neale at sinenomine.net
Wed Aug 5 21:47:15 UTC 2015
Further investigation shows the value being set here:
0x80200bb2 is in mono_gc_wbarrier_set_arrayref (sgen-mono.c:171).
166 void
167 mono_gc_wbarrier_set_arrayref (MonoArray *arr, gpointer slot_ptr,
MonoObject* value)
168 {
169 HEAVY_STAT (++stat_wbarrier_set_arrayref);
170 if (sgen_ptr_in_nursery (slot_ptr)) {
171 *(void**)slot_ptr = value;
172 return;
173 }
174 SGEN_LOG (8, "Adding remset at %p", slot_ptr);
175 if (value)
This is called from:
0x801a5c22 is in mono_threadpool_ms_end_invoke (threadpool-ms.c:1310).
1305 }
1306
1307 MONO_OBJECT_SETREF (ares, endinvoke_called, 1);
1308
1309 /* wait until we are really finished */
1310 if (ares->completed) {
1311 mono_monitor_exit ((MonoObject *) ares);
1312 } else {
1313 gpointer wait_event;
1314 if (ares->handle) {
Now the fact that the scan is pulling the value 0x1000000000000 this would
indicate that the slot_ptr (ares) is not aligned on a pointer boundary so
the calculation of this location must be incorrect.
Neale
More information about the Mono-devel-list
mailing list