Survive EINTR while invoking external compiler. (#8323)
Summary:
When using the Xenon sampling profiler, HHVM will periodically thwack
itself with SIGVTALRM, causing blocking system calls to fail with EINTR.
This included reads over the pipe to the HackC child compiler, which
led to runtime failures.
With this patch we are able to run for long periods of time with the
Xenon profiler on, and `hh_single_compile` singly compiling its little
heart out. Xenon in non-RepoAuth is a major improvement to our
production and dev inspectability.
Pull Request resolved: https://github.com/facebook/hhvm/pull/8323
Reviewed By: markw65
Differential Revision:
D10011642
Pulled By: fredemmott
fbshipit-source-id:
f4d0d736c3239bdef76fb83cf174bbf02922f9ae