lib: Add xpipe_nonblocking helper
[sliver-openvswitch.git] / lib / fatal-signal.c
index fff2a73..7cfbd05 100644 (file)
@@ -74,9 +74,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++) {
@@ -152,14 +150,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