1
0
Fork 0
mirror of https://github.com/VSadov/Satori.git synced 2025-06-10 01:50:53 +09:00

fix hang in failure case (#103386)

when prepare_to_change_heap_count fails, we need to make sure to restart the EE otherwise the GC thread still holds the thread store lock
This commit is contained in:
Maoni Stephens 2024-06-12 19:23:18 -07:00 committed by GitHub
parent 2c540e5c55
commit bfb028b80f
Signed by: github
GPG key ID: B5690EEEBB952194

View file

@ -25621,8 +25621,6 @@ void gc_heap::check_heap_count ()
// background GC is running - reset the new heap count // background GC is running - reset the new heap count
dynamic_heap_count_data.new_n_heaps = n_heaps; dynamic_heap_count_data.new_n_heaps = n_heaps;
dprintf (6666, ("can't change heap count! BGC in progress")); dprintf (6666, ("can't change heap count! BGC in progress"));
GCToEEInterface::RestartEE(TRUE);
} }
#endif //BACKGROUND_GC #endif //BACKGROUND_GC
} }
@ -25646,6 +25644,8 @@ void gc_heap::check_heap_count ()
dprintf (6666, ("heap count stays the same %d, no work to do, set processed sample count to %Id", dprintf (6666, ("heap count stays the same %d, no work to do, set processed sample count to %Id",
dynamic_heap_count_data.new_n_heaps, dynamic_heap_count_data.current_samples_count)); dynamic_heap_count_data.new_n_heaps, dynamic_heap_count_data.current_samples_count));
GCToEEInterface::RestartEE(TRUE);
return; return;
} }