Open
Description
Type of issue
technical debt
Description of issue
In #8 we disabled go garbage collection for the starter. This was done to avoid the issue in #7 - where if the timing of a GC cycle was unfortunate, we could end up closing internal Go runtime netpoll fds in StartProcess, causing a crash.
When runc addressed a security issue by closing Fds, they faced the same need to avoid closing internal Go netpoll fds. Rather than disable GC so the fds do not appear, they used an internal Go function to identify the fds and avoid closing them:
opencontainers/runc@a9833ff#diff-6dc5f3f1e98fc4e379c98c5c301256dc1950dcb04fbce8d280bf12c41fadc1aaR73
We could consider using this approach.