cherrymui
cherrymui
Dup of #66474
I wrote CL https://go.dev/cl/581721 to check errno at various stages in the signal handler. Here is one of the failure https://ci.chromium.org/ui/p/golang/builders/try/gotip-linux-amd64/b8749565669963801361/test-results?q=ExactID%3Acmd%2Fcgo%2Finternal%2Ftestsanitizers.TestTSAN%2Ftsan14+VHash%3A59d5ef073852df4a+&sortby=&groupby= ``` tsan_test.go:78: /home/swarming/.swarming/w/ir/x/t/TestTSAN4105666902/tsan14 exited with exit status 2 errno...
More debugging indicates that errno changes when we uninstall our signal handler before re-raising the signal https://cs.opensource.google/go/go/+/master:src/runtime/signal_unix.go;l=971 . This will call the TSAN-intercepted `sigaction`. I'm not sure why it would...
I tried `strace` and didn't see anything helpful. I wonder that it may be the TSAN interceptor that changes errno to EINVAL before actually making a syscall? Although by reading...
@jba @rsc is there anything else that needs to be done for this? Thanks.
In C, static symbols are not accessible outside of the compilation unit, full stop. There is no way to pull a static symbol from a C library. A number of...
> Is there any way the symbols defined in the runtime that hook into that package also get comments to avoid breaking us? Push linknames are still allowed. If they...
Thanks. > I'm wondering if there is any plans for Pushes as changes to those would break Purego? I don't think there is any plan to break the use case...
I think the linker flag will probably stay. > performance issues with reflect We have been (slowly) improving the performance of reflect. If there is a performance issue that is...
> Oh, bother. (Summary of the code: reflect lets you reference an _ field, take it's "address", and then get that as an unsafe.Pointer, making this field, in effect, addressable....