X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=libust%2Flttng-ust-comm.c;h=1507a65fcd588a3276d863d87f36a1ff1c22d295;hb=a285a37667147f0e7ade6b45d147440438ee4d50;hp=c5a3064ae216f222771e7acd99199ea12a520085;hpb=e9f37b4cb3e2485b949083307aadfc4bda56ce96;p=ust.git 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) {