You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by bc...@apache.org on 2017/01/24 04:52:33 UTC
[trafficserver] branch 7.0.x updated: TS-5076: Test and set the
in_enabled_list by atomic function
This is an automated email from the ASF dual-hosted git repository.
bcall pushed a commit to branch 7.0.x
in repository https://git-dual.apache.org/repos/asf/trafficserver.git
The following commit(s) were added to refs/heads/7.0.x by this push:
new 444c490 TS-5076: Test and set the in_enabled_list by atomic function
444c490 is described below
commit 444c490a2b6dff29966034d0f94618f9582db813
Author: Oknet Xu <xu...@skyguard.com.cn>
AuthorDate: Sat Dec 3 13:07:38 2016 +0800
TS-5076: Test and set the in_enabled_list by atomic function
(cherry picked from commit f84b4333d2743a8275f4974e32c733e989968a67)
---
iocore/net/UnixNetVConnection.cc | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/iocore/net/UnixNetVConnection.cc b/iocore/net/UnixNetVConnection.cc
index bd07ae6..fe24947 100644
--- a/iocore/net/UnixNetVConnection.cc
+++ b/iocore/net/UnixNetVConnection.cc
@@ -816,13 +816,13 @@ UnixNetVConnection::reenable(VIO *vio)
MUTEX_TRY_LOCK(lock, nh->mutex, t);
if (!lock.is_locked()) {
if (vio == &read.vio) {
- if (!read.in_enabled_list) {
- read.in_enabled_list = 1;
+ int isin = ink_atomic_swap(&read.in_enabled_list, 1);
+ if (!isin) {
nh->read_enable_list.push(this);
}
} else {
- if (!write.in_enabled_list) {
- write.in_enabled_list = 1;
+ int isin = ink_atomic_swap(&write.in_enabled_list, 1);
+ if (!isin) {
nh->write_enable_list.push(this);
}
}
--
To stop receiving notification emails like this one, please contact
['"commits@trafficserver.apache.org" <co...@trafficserver.apache.org>'].