Skip to content

Commit 707eb8f

Browse files
committed
Revert "Revert "[Macros] Mitigate plugin process 'wait' failure""
This reverts commit 8474d27.
1 parent 4abc3be commit 707eb8f

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

lib/AST/PluginRegistry.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -220,8 +220,10 @@ LoadedExecutablePlugin::PluginProcess::~PluginProcess() {
220220
// that. Usually when the pipe is closed above, the plugin detects the EOF in
221221
// the stdin and exits immediately, so this usually doesn't wait for the
222222
// timeout. Note that we can't use '0' because it performs a non-blocking
223-
// wait, which make the plugin a zombie if it hasn't exited.
224-
llvm::sys::Wait(process, /*SecondsToWait=*/1);
223+
// wait, which make the plugin a zombie if it hasn't exited. We don't use
224+
// a small number like '1' because the timeout alarm(3) can fire before the
225+
// wait4(2).
226+
llvm::sys::Wait(process, /*SecondsToWait=*/10);
225227
}
226228

227229
ssize_t LoadedExecutablePlugin::PluginProcess::read(void *buf,

0 commit comments

Comments
 (0)