X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-relayd%2Fviewer-session.c;h=5f9c7c5769f799d5ff101446b730b06c340b5f4f;hb=9a51883cc7791d6beedfea6d2ee1e64ef7a7494b;hp=a4b859726a6ea9b9bc7ef86ac5a019f43e29bdc2;hpb=92e415922d60df808cf61a851f16649b2e1542b5;p=lttng-tools.git diff --git a/src/bin/lttng-relayd/viewer-session.c b/src/bin/lttng-relayd/viewer-session.c index a4b859726..5f9c7c576 100644 --- a/src/bin/lttng-relayd/viewer-session.c +++ b/src/bin/lttng-relayd/viewer-session.c @@ -47,12 +47,13 @@ int viewer_session_attach(struct relay_viewer_session *vsession, { int ret = 0; + ASSERT_LOCKED(session->lock); + /* Will not fail, as per the ownership guarantee. */ if (!session_get(session)) { ret = -1; goto end; } - pthread_mutex_lock(&session->lock); if (session->viewer_attached) { ret = -1; } else { @@ -69,8 +70,6 @@ int viewer_session_attach(struct relay_viewer_session *vsession, /* Put our local ref. */ session_put(session); } - /* Safe since we know the session exists. */ - pthread_mutex_unlock(&session->lock); end: return ret; }