It seems like Go CPU profiling uses signals to periodically interrupt the process and sample the program counter at that point. This has the side effect of aborting in-progress calls to BPF_PROG_TEST_RUN with EINTR.
The simplest fix is to simply retry on EINTR. However this will skew benchmarks, since in fact we did more work.
It seems like Go CPU profiling uses signals to periodically interrupt the process and sample the program counter at that point. This has the side effect of aborting in-progress calls to BPF_PROG_TEST_RUN with EINTR.
The simplest fix is to simply retry on EINTR. However this will skew benchmarks, since in fact we did more work.