X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lib%2Ffatal-signal.c;h=66c04455ec98b91eeb4bbe07a211f71891b38d95;hb=d978fa4832bbc5176e05edd05bcdf2452a8dded2;hp=fff2a73050021ab638751b0755c8b0df2fdf9e3d;hpb=b67b2b0ab6f472767ed68c9b874ad3fed0b637c1;p=sliver-openvswitch.git diff --git a/lib/fatal-signal.c b/lib/fatal-signal.c index fff2a7305..66c04455e 100644 --- a/lib/fatal-signal.c +++ b/lib/fatal-signal.c @@ -15,7 +15,6 @@ */ #include #include "fatal-signal.h" -#include #include #include #include @@ -74,9 +73,7 @@ fatal_signal_init(void) inited = true; - xpipe(signal_fds); - set_nonblocking(signal_fds[0]); - set_nonblocking(signal_fds[1]); + xpipe_nonblocking(signal_fds); sigemptyset(&fatal_signal_set); for (i = 0; i < ARRAY_SIZE(fatal_signals); i++) { @@ -114,7 +111,7 @@ fatal_signal_add_hook(void (*hook_cb)(void *aux), void (*cancel_cb)(void *aux), { fatal_signal_init(); - assert(n_hooks < MAX_HOOKS); + ovs_assert(n_hooks < MAX_HOOKS); hooks[n_hooks].hook_cb = hook_cb; hooks[n_hooks].cancel_cb = cancel_cb; hooks[n_hooks].aux = aux; @@ -152,14 +149,14 @@ fatal_signal_handler(int sig_nr) void fatal_signal_run(void) { - int sig_nr; + sig_atomic_t sig_nr; fatal_signal_init(); sig_nr = stored_sig_nr; if (sig_nr != SIG_ATOMIC_MAX) { VLOG_WARN("terminating with signal %d (%s)", - sig_nr, signal_name(sig_nr)); + (int)sig_nr, signal_name(sig_nr)); call_hooks(sig_nr); /* Re-raise the signal with the default handling so that the program