core/exec-invoke: sigwait() returns positive errno and never EINTR
Follow-up for
5b6319dceedd81f3f1ce7eb70ea5defaef43bcec (gosh this is
ancient), and effectively reverts
3dead8d925ea9db1fbd65b702b6b807e49ddeacf.
sigwait() is documented to "suspend execution of the calling thread
until one of the signals specified in the signal set becomes pending".
And the only error it returns is EINVAL, when "set contains an invalid
signal number". Therefore, there's no need to run it in a loop or
to check for runtime error.