[OpenSIPS-Devel] [OpenSIPS/opensips] 8f16c3: Loop and wait for multiple terminted processes.

Bogdan Andrei IANCU noreply at github.com
Fri Sep 27 07:42:41 EDT 2019

  Branch: refs/heads/master
  Home:   https://github.com/OpenSIPS/opensips
  Commit: 8f16c3ee805e8227edb048f8783e9771b326800a
  Author: Bogdan-Andrei Iancu <bogdan at opensips.org>
  Date:   2019-09-27 (Fri, 27 Sep 2019)

  Changed paths:
    M main.c

  Log Message:
  Loop and wait for multiple terminted processes.

If you have a bunch of exec() calls (translated into a bunch of additional processes created), upon their termiantion OpenSIPS will get a cascade of SIGCHLD signals - as the kernel does not guarantee the delivery of the signals (like mergining similar multiple signal triggers), we will not have a 1-to-1 between terminated processes and received signals.
So, let's do our best and upon a single SIGCHLD we will try to "catch" as many terminated processes as possible/available.

Closes #1773

(cherry picked from commit 57f3619ffb848a9dce51668cd22ed964b5bcc8f2)

More information about the Devel mailing list