Go issue: memory corruption on Linux 5.3.x from async preemption (github.com) 1 points by alderz 6y ago ↗ HN
[–] alderz 6y ago ↗ The Go team has found that recent Linux kernels break the recently integrated goroutine preemption logic.There is deep analysis here https://github.com/golang/go/issues/35326#issuecomment-55821... They have bisected the kernel and found that https://github.com/torvalds/linux/commit/d9c9ce34ed5c892323c... is the culprit. Apparently, it introduces changes in the signal handling behavior only visible when compiled with GCC 9, presumably because it uses AVX registers.The entire discussion is a nice read.
1 comment
[ 3.5 ms ] story [ 11.1 ms ] threadThere is deep analysis here https://github.com/golang/go/issues/35326#issuecomment-55821... They have bisected the kernel and found that https://github.com/torvalds/linux/commit/d9c9ce34ed5c892323c... is the culprit. Apparently, it introduces changes in the signal handling behavior only visible when compiled with GCC 9, presumably because it uses AVX registers.
The entire discussion is a nice read.