From: Patrick Donnelly Date: Fri, 7 Sep 2018 21:25:43 +0000 (-0700) Subject: msg: set O_NONBLOCK on file status flags X-Git-Tag: v14.0.1~185^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=7e91c8b5aa4548e15c01702f24aaf1f2fccf0468;p=ceph.git msg: set O_NONBLOCK on file status flags There is no NONBLOCK file **descriptor** flag. Signed-off-by: Patrick Donnelly --- diff --git a/src/msg/simple/Accepter.cc b/src/msg/simple/Accepter.cc index dc5fe189dd26..b2712f8f6216 100644 --- a/src/msg/simple/Accepter.cc +++ b/src/msg/simple/Accepter.cc @@ -60,9 +60,11 @@ int Accepter::create_selfpipe(int *pipe_rd, int *pipe_wr) { #else int ret = ::pipe(selfpipe); if (ret == 0) { - for (int i = 0; i < std::size(selfpipe); i++) { - int f = fcntl(selfpipe[i], F_GETFD); - fcntl(selfpipe[i], F_SETFD, f | FD_CLOEXEC | O_NONBLOCK); + for (size_t i = 0; i < std::size(selfpipe); i++) { + int f = fcntl(selfpipe[i], F_GETFL); + ceph_assert(f != -1); + f = fcntl(selfpipe[i], F_SETFL, f | O_NONBLOCK); + ceph_assert(f != -1); } } #endif