You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2018/07/03 22:14:08 UTC
[79/89] [abbrv] qpid-proton git commit: PROTON-1842: epoll driver
cleanup needs memory barrier on parallel socket rearm
PROTON-1842: epoll driver cleanup needs memory barrier on parallel socket rearm
Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/1315f263
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/1315f263
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/1315f263
Branch: refs/heads/go1
Commit: 1315f263823386f2a13767e16882d4da48329901
Parents: cd2783f
Author: Clifford Jansen <cl...@apache.org>
Authored: Sun May 13 18:05:40 2018 -0700
Committer: Clifford Jansen <cl...@apache.org>
Committed: Sun May 13 18:05:40 2018 -0700
----------------------------------------------------------------------
c/src/proactor/epoll.c | 2 ++
1 file changed, 2 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/1315f263/c/src/proactor/epoll.c
----------------------------------------------------------------------
diff --git a/c/src/proactor/epoll.c b/c/src/proactor/epoll.c
index f77fca9..d1e9820 100644
--- a/c/src/proactor/epoll.c
+++ b/c/src/proactor/epoll.c
@@ -846,6 +846,8 @@ static void pconnection_cleanup(pconnection_t *pc) {
// Call with lock held or from forced_shutdown
static void pconnection_begin_close(pconnection_t *pc) {
+ lock(&pc->rearm_mutex);
+ unlock(&pc->rearm_mutex); // Allow parallel pconnection_rearm() to complete
if (!pc->context.closing) {
pc->context.closing = true;
if (pc->current_arm != 0 && !pc->new_events) {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org