From: Mathieu Desnoyers Date: Thu, 28 Feb 2013 22:18:06 +0000 (-0500) Subject: Fix: Only notify socket should have timeout/nonblock X-Git-Tag: v2.2.0-rc1~68 X-Git-Url: https://git.lttng.org./?a=commitdiff_plain;h=27fe9f21a757d7adf834a6334322a79cc19164ab;p=lttng-ust.git Fix: Only notify socket should have timeout/nonblock Signed-off-by: Mathieu Desnoyers --- diff --git a/liblttng-ust/lttng-ust-comm.c b/liblttng-ust/lttng-ust-comm.c index 1f60f86d..e2f94cfd 100644 --- a/liblttng-ust/lttng-ust-comm.c +++ b/liblttng-ust/lttng-ust-comm.c @@ -926,7 +926,6 @@ restart: } /* Register */ - timeout = get_notify_sock_timeout(); for (i = 0; i < 2; i++) { ret = ustcomm_connect_unix_sock(sock_info->sock_path); if (ret < 0) { @@ -942,33 +941,34 @@ restart: goto restart; } open_sock[i] = ret; - if (timeout > 0) { - ret = ustcomm_setsockopt_rcv_timeout(open_sock[i], - timeout); - if (ret < 0) { - WARN("Error setting socket receive timeout"); - } - ret = ustcomm_setsockopt_snd_timeout(open_sock[i], - timeout); - if (ret < 0) { - WARN("Error setting socket send timeout"); - } - } else if (timeout == -1) { - ret = fcntl(open_sock[i], F_SETFL, O_NONBLOCK); - if (ret < 0) { - WARN("Error setting socket to non-blocking"); - } - } else { - if (timeout != 0) { - WARN("Unsuppoorted timeout value %ld", - timeout); - } - } } sock_info->socket = open_sock[0]; sock_info->notify_socket = open_sock[1]; + timeout = get_notify_sock_timeout(); + if (timeout > 0) { + ret = ustcomm_setsockopt_rcv_timeout(sock_info->notify_socket, + timeout); + if (ret < 0) { + WARN("Error setting socket receive timeout"); + } + ret = ustcomm_setsockopt_snd_timeout(sock_info->notify_socket, + timeout); + if (ret < 0) { + WARN("Error setting socket send timeout"); + } + } else if (timeout == -1) { + ret = fcntl(sock_info->notify_socket, F_SETFL, O_NONBLOCK); + if (ret < 0) { + WARN("Error setting socket to non-blocking"); + } + } else { + if (timeout != 0) { + WARN("Unsuppoorted timeout value %ld", timeout); + } + } + /* * Create only one root handle per listener thread for the whole * process lifetime, so we ensure we get ID which is statically