From 55884c5875b7ed2bb2e525bb13fbb7e849717811 Mon Sep 17 00:00:00 2001 From: liuchang0812 Date: Tue, 7 Mar 2017 14:28:21 +0800 Subject: [PATCH] msg/async: fix crash that writing char to nonblock-fd gets EAGAIN in EventCenter::wakeup Signed-off-by: liuchang0812 --- src/msg/async/Event.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/msg/async/Event.cc b/src/msg/async/Event.cc index eee29fc51b70..45d6eb108435 100644 --- a/src/msg/async/Event.cc +++ b/src/msg/async/Event.cc @@ -323,8 +323,10 @@ void EventCenter::wakeup() // wake up "event_wait" int n = write(notify_send_fd, &buf, sizeof(buf)); if (n < 0) { - ldout(cct, 1) << __func__ << " write notify pipe failed: " << cpp_strerror(errno) << dendl; - ceph_abort(); + if (errno != EAGAIN) { + ldout(cct, 1) << __func__ << " write notify pipe failed: " << cpp_strerror(errno) << dendl; + ceph_abort(); + } } } -- 2.47.3