From: ian Date: Thu, 24 Jan 2019 05:31:14 +0000 (+0000) Subject: runtime: install SIGURG handler on C created threads X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=80a091563bc802b373cb3e350b081c6454726b85;p=thirdparty%2Fgcc.git runtime: install SIGURG handler on C created threads Precise stack scan uses SIGURG to trigger a stack scan. We need to have Go signal handler installed for SIGURG. Reviewed-on: https://go-review.googlesource.com/c/159097 git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@268230 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index 95604f851dde..faab230d3ecb 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -e3271f3e09337b951822ba5c596d8cfe3b94508e +d67c4bf0c42b79d54925ba8c5f23278ee6c3efb6 The first line of this file holds the git revision number of the last merge done from the gofrontend repository. diff --git a/libgo/go/runtime/signal_unix.go b/libgo/go/runtime/signal_unix.go index 2f89c7cbf43e..12e4315d7e17 100644 --- a/libgo/go/runtime/signal_unix.go +++ b/libgo/go/runtime/signal_unix.go @@ -142,8 +142,8 @@ func sigInstallGoHandler(sig uint32) bool { } // When built using c-archive or c-shared, only install signal - // handlers for synchronous signals and SIGPIPE. - if (isarchive || islibrary) && t.flags&_SigPanic == 0 && sig != _SIGPIPE { + // handlers for synchronous signals, SIGPIPE, and SIGURG. + if (isarchive || islibrary) && t.flags&_SigPanic == 0 && sig != _SIGPIPE && sig != _SIGURG { return false }