Project

General

Profile

Actions

Bug #117

closed

Broken sigwait on Mac OSX El Capitan

Added by François Félix Ingrand almost 7 years ago. Updated almost 7 years ago.

Status:
Closed
Priority:
Normal

Description

Sigwait has a very weird behavior on OSX El Capitan.

First it sometimes return without setting the sig (you can set it before the call to -9999 and you get -9999 upon return) and this probably explained the 0 we were getting on SL (see old comment).

Second, I have to ignore a bunch of signals as I am getting them while running (for no apparent reasons).

Clearly, there is something I do not understand or which is acting funny.

Overall, I am not sure this "wait until somebody kill me" is a the good apparoach on OSX.


  /* we don't want to wait for codel-level signal */
  sigdelset(&sset, SIGUSR1);
  sigdelset(&sset, SIGUSR2);
  sigdelset(&sset, SIGCHLD);
  sigdelset(&sset, SIGINT);
  sigdelset(&sset, SIGQUIT);
  sigdelset(&sset, SIGPIPE);
  sigdelset(&sset, SIGTERM);

  /* wait for apocalypse */
  /* For some obscure reasons, Mac OSX SL sigwait can return with sig == 0 */
  sig = 0;
  do { sigwait(&sset, &sig); } while (sig == 0);

Actions

Also available in: Atom PDF