-
Notifications
You must be signed in to change notification settings - Fork 18k
runtime: non-cooperative goroutine preemption does not work when built using c-archive or c-shared #49288
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Change https://golang.org/cl/360861 mentions this issue: |
@ianlancetaylor The signal _SIGPROF may also need to be added because CPUProfile depends on it. |
Please always write plain text as plain text, never as an image. Plain text is much easier to read and it is possible to cut and paste it. Thanks. If Go profiling is requested a signal handler will be installed for |
@ianlancetaylor Um, sorry. Because I didn't have permission to comment directly on the go/src/runtime/sys_linux_amd64.s Lines 436 to 440 in 6b3f4d3
|
The Further discussion of these points should take place in a forum, not here on the issue tracker. See https://golang.org/wiki/Questions. Thanks. |
Non-cooperative goroutine preemption does not work when built using c-archive or c-shared, because of this PR not install signal go handler and cause signal preemption disabled.
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
yeah.
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
test.c
cgo.go
run:
go build -o cgo.so -buildmode=c-shared cgo.go
gcc -o main main.c cgo.so
What did you expect to see?
./main
What did you see instead?
./main
The text was updated successfully, but these errors were encountered: