]> Cypherpunks repositories - gostls13.git/commit
runtime, testing/synctest: verify cleanups/finalizers run outside bubbles
authorDamien Neil <dneil@google.com>
Wed, 21 May 2025 22:08:08 +0000 (15:08 -0700)
committerGopher Robot <gobot@golang.org>
Tue, 27 May 2025 21:47:13 +0000 (14:47 -0700)
commitfce9d4515defec0473ca3a685408ef5304d23aa9
tree9c6486a05682e82f885896dfe586612dac44f4fc
parentb78e38065efd5f4079564b9e8e3529950ba0dd52
runtime, testing/synctest: verify cleanups/finalizers run outside bubbles

Cleanup functions and finalizers must not run in a synctest bubble.
If they did, a function run by the GC at an unpredictable time
could unblock a bubble that synctest believes is durably
blocked.

Add a test verifying that cleanups and finalizers are always
run by non-bubbled goroutines. (This is already the case because
we never add system goroutines to a bubble.)

For #67434

Change-Id: I5a48db2b26f9712c3b0dc1f425d99814031a2fc1
Reviewed-on: https://go-review.googlesource.com/c/go/+/675257
Reviewed-by: Michael Pratt <mpratt@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Auto-Submit: Damien Neil <dneil@google.com>
src/runtime/testdata/testsynctest/main.go
src/testing/synctest/synctest.go