From: Mathieu Desnoyers Date: Fri, 2 Sep 2011 17:02:38 +0000 (-0400) Subject: fdatasync sockets after send X-Git-Url: https://git.lttng.org./?a=commitdiff_plain;h=a285a37667147f0e7ade6b45d147440438ee4d50;p=ust.git fdatasync sockets after send Signed-off-by: Mathieu Desnoyers --- diff --git a/libust/lttng-ust-comm.c b/libust/lttng-ust-comm.c index c5a3064..1507a65 100644 --- a/libust/lttng-ust-comm.c +++ b/libust/lttng-ust-comm.c @@ -184,6 +184,10 @@ int register_app_to_sessiond(int socket) ret = lttcomm_send_unix_sock(socket, ®_msg, sizeof(reg_msg)); if (ret >= 0 && ret != sizeof(reg_msg)) return -EIO; + ret = fdatasync(socket); + if (ret) { + return -errno; + } return ret; } @@ -191,11 +195,17 @@ static int send_reply(int sock, struct lttcomm_ust_reply *lur) { ssize_t len; + int ret; len = lttcomm_send_unix_sock(sock, lur, sizeof(*lur)); switch (len) { case sizeof(*lur): DBG("message successfully sent"); + ret = fdatasync(sock); + if (ret) { + DBG("fdatasync error"); + return -1; + } return 0; case -1: if (errno == ECONNRESET) {