From 4ee064e947ca3008c054fda33de8b5963b07d851 Mon Sep 17 00:00:00 2001
From: Justin Pettit <jpettit@nicira.com>
Date: Fri, 25 Jan 2013 18:12:01 -0800
Subject: [PATCH] worker: Don't have worker abort when parent dies.

Depending on how forcefully the parent process is killed, the worker
could abort when trying to read or write on their shared socket.  This
changes those errors from VLOG_ABORT to VLOG_FATAL so that a core isn't
generated.

Bug #14821

Reported-by: Amey Bhide <abhide@nicira.com>
Signed-off-by: Justin Pettit <jpettit@nicira.com>
---
 lib/worker.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/worker.c b/lib/worker.c
index 6ca05cdbe..b0f1a8237 100644
--- a/lib/worker.c
+++ b/lib/worker.c
@@ -345,7 +345,7 @@ worker_reply_iovec(const struct iovec *iovs, size_t n_iovs,
          * to avoid missing log messages. */
         VLOG_INFO("send failed (%s)", strerror(error));
     } else if (error) {
-        VLOG_ABORT("send failed (%s)", strerror(error));
+        VLOG_FATAL("send failed (%s)", strerror(error));
     }
 
     free(all_iovs);
@@ -379,7 +379,7 @@ worker_main(int fd)
             /* Main process closed the IPC socket.  Exit cleanly. */
             break;
         } else if (error != EAGAIN) {
-            VLOG_ABORT("RPC receive failed (%s)", strerror(error));
+            VLOG_FATAL("RPC receive failed (%s)", strerror(error));
         }
 
         poll_fd_wait(server_sock, POLLIN);
-- 
2.47.0