You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by jp...@apache.org on 2010/05/21 02:01:36 UTC
svn commit: r946831 - in /trafficserver/traffic/trunk/iocore:
cache/CacheDir.cc dns/DNS.cc eventsystem/I_Lock.h hostdb/HostDB.cc
net/UnixNetProcessor.cc net/UnixNetVConnection.cc
Author: jplevyak
Date: Fri May 21 00:01:35 2010
New Revision: 946831
URL: http://svn.apache.org/viewvc?rev=946831&view=rev
Log:
Remove some unreachable code from a very old failed experiment
Modified:
trafficserver/traffic/trunk/iocore/cache/CacheDir.cc
trafficserver/traffic/trunk/iocore/dns/DNS.cc
trafficserver/traffic/trunk/iocore/eventsystem/I_Lock.h
trafficserver/traffic/trunk/iocore/hostdb/HostDB.cc
trafficserver/traffic/trunk/iocore/net/UnixNetProcessor.cc
trafficserver/traffic/trunk/iocore/net/UnixNetVConnection.cc
Modified: trafficserver/traffic/trunk/iocore/cache/CacheDir.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/cache/CacheDir.cc?rev=946831&r1=946830&r2=946831&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/cache/CacheDir.cc (original)
+++ trafficserver/traffic/trunk/iocore/cache/CacheDir.cc Fri May 21 00:01:35 2010
@@ -111,17 +111,13 @@ OpenDir::signal_readers(int event, Event
EThread *t = mutex->thread_holding;
CacheVC *c = NULL;
while ((c = delayed_readers.dequeue())) {
- if (c->mutex->is_thread() && c->mutex->thread_holding != t)
- newly_delayed_readers.enqueue(c);
- else {
- CACHE_TRY_LOCK(lock, c->mutex, t);
- if (lock) {
- c->f.open_read_timeout = 0;
- c->handleEvent(EVENT_IMMEDIATE, 0);
- continue;
- }
- newly_delayed_readers.push(c);
+ CACHE_TRY_LOCK(lock, c->mutex, t);
+ if (lock) {
+ c->f.open_read_timeout = 0;
+ c->handleEvent(EVENT_IMMEDIATE, 0);
+ continue;
}
+ newly_delayed_readers.push(c);
}
if (newly_delayed_readers.head) {
delayed_readers = newly_delayed_readers;
Modified: trafficserver/traffic/trunk/iocore/dns/DNS.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/dns/DNS.cc?rev=946831&r1=946830&r2=946831&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/dns/DNS.cc (original)
+++ trafficserver/traffic/trunk/iocore/dns/DNS.cc Fri May 21 00:01:35 2010
@@ -1148,30 +1148,17 @@ DNSEntry::post(DNSHandler * h, HostEnt *
ink_sem_post(&sem);
#endif
} else {
- if (!action.mutex->is_thread()) {
- MUTEX_TRY_LOCK(lock, action.mutex, h->mutex->thread_holding);
- if (!lock) {
- Debug("dns", "failed lock for result %s", qname);
- return 1;
- }
- if (!action.cancelled) {
- Debug("dns", "called back continuation for %s", qname);
- action.continuation->handleEvent(DNS_EVENT_LOOKUP, ent);
- }
- if (ent && freeable && ink_atomic_increment(&ent->ref_count, -1) == 1)
- dnsProcessor.free_hostent(ent);
- } else {
- if (!action.cancelled) {
- result_ent = ent;
- SET_HANDLER(&DNSEntry::postEvent);
- if (action.mutex->thread_holding != h->mutex->thread_holding)
- action.mutex->thread_holding->schedule_imm(this);
- else {
- this->handleEvent(0, 0);
- }
- return 0;
- }
+ MUTEX_TRY_LOCK(lock, action.mutex, h->mutex->thread_holding);
+ if (!lock) {
+ Debug("dns", "failed lock for result %s", qname);
+ return 1;
+ }
+ if (!action.cancelled) {
+ Debug("dns", "called back continuation for %s", qname);
+ action.continuation->handleEvent(DNS_EVENT_LOOKUP, ent);
}
+ if (ent && freeable && ink_atomic_increment(&ent->ref_count, -1) == 1)
+ dnsProcessor.free_hostent(ent);
}
//
// Cancel the timeout and clear the mutex field
Modified: trafficserver/traffic/trunk/iocore/eventsystem/I_Lock.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/eventsystem/I_Lock.h?rev=946831&r1=946830&r2=946831&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/eventsystem/I_Lock.h (original)
+++ trafficserver/traffic/trunk/iocore/eventsystem/I_Lock.h Fri May 21 00:01:35 2010
@@ -154,11 +154,6 @@ public:
void init(const char *name = "UnnamedMutex") {
ink_mutex_init(&the_mutex, name);
}
-
- bool is_thread()
- {
- return false;
- }
};
// The ClassAlocator for ProxyMutexes
Modified: trafficserver/traffic/trunk/iocore/hostdb/HostDB.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/hostdb/HostDB.cc?rev=946831&r1=946830&r2=946831&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/hostdb/HostDB.cc (original)
+++ trafficserver/traffic/trunk/iocore/hostdb/HostDB.cc Fri May 21 00:01:35 2010
@@ -1477,12 +1477,6 @@ HostDBContinuation::dnsEvent(int event,
// try to callback the user
//
if (action.continuation) {
- if (action.mutex->is_thread() && action.mutex->thread_holding != thread) {
- remove_trigger_pending_dns();
- SET_HANDLER((HostDBContHandler) & HostDBContinuation::probeEvent);
- action.mutex->thread_holding->schedule_in(this, HOST_DB_RETRY_PERIOD);
- return EVENT_CONT;
- }
MUTEX_TRY_LOCK_FOR(lock, action.mutex, thread, action.continuation);
if (!lock) {
remove_trigger_pending_dns();
@@ -1783,12 +1777,8 @@ HostDBContinuation::remove_trigger_pendi
}
c = n;
}
- while ((c = qq.dequeue())) {
- if (c->action.mutex->is_thread() && c->action.mutex->thread_holding != mutex->thread_holding)
- c->action.mutex->thread_holding->schedule_imm(c);
- else
- c->handleEvent(EVENT_IMMEDIATE, NULL);
- }
+ while ((c = qq.dequeue()))
+ c->handleEvent(EVENT_IMMEDIATE, NULL);
}
Modified: trafficserver/traffic/trunk/iocore/net/UnixNetProcessor.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/net/UnixNetProcessor.cc?rev=946831&r1=946830&r2=946831&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/net/UnixNetProcessor.cc (original)
+++ trafficserver/traffic/trunk/iocore/net/UnixNetProcessor.cc Fri May 21 00:01:35 2010
@@ -170,95 +170,74 @@ UnixNetProcessor::connect_re_internal(Co
// for SSLNetProcessor. Does nothing if not overwritten.
setEtype(opt->etype);
- bool fast =
#ifndef INK_NO_SOCKS
- (opt->socks_support == NO_SOCKS || !socks_conf_stuff->socks_needed) &&
-#endif
- cont->mutex->is_thread();
-
- if (fast) {
-
- NET_INCREMENT_DYN_STAT(net_connections_currently_open_stat);
- vc->id = net_next_connection_number();
- vc->submit_time = ink_get_hrtime();
- vc->setSSLClientConnection(true);
- vc->ip = ip;
- vc->port = port;
- vc->action_ = cont;
- vc->mutex = mutex;
- vc->connectUp(t);
- return ACTION_RESULT_DONE;
- } else {
-
-#ifndef INK_NO_SOCKS
- bool using_socks = (socks_conf_stuff->socks_needed && opt->socks_support != NO_SOCKS
+ bool using_socks = (socks_conf_stuff->socks_needed && opt->socks_support != NO_SOCKS
#ifdef SOCKS_WITH_TS
- && (opt->socks_version != SOCKS_DEFAULT_VERSION ||
- /* This implies we are tunnelling.
- * we need to connect using socks server even
- * if this ip is in no_socks list.
- */
- !socks_conf_stuff->ip_range.match(ip))
+ && (opt->socks_version != SOCKS_DEFAULT_VERSION ||
+ /* This implies we are tunnelling.
+ * we need to connect using socks server even
+ * if this ip is in no_socks list.
+ */
+ !socks_conf_stuff->ip_range.match(ip))
#endif
- );
- SocksEntry *socksEntry = NULL;
+ );
+ SocksEntry *socksEntry = NULL;
#endif
- NET_INCREMENT_DYN_STAT(net_connections_currently_open_stat);
- vc->id = net_next_connection_number();
- vc->submit_time = ink_get_hrtime();
- vc->setSSLClientConnection(true);
- vc->ip = ip;
- vc->port = port;
- vc->mutex = cont->mutex;
- Action *result = &vc->action_;
+ NET_INCREMENT_DYN_STAT(net_connections_currently_open_stat);
+ vc->id = net_next_connection_number();
+ vc->submit_time = ink_get_hrtime();
+ vc->setSSLClientConnection(true);
+ vc->ip = ip;
+ vc->port = port;
+ vc->mutex = cont->mutex;
+ Action *result = &vc->action_;
#ifndef INK_NO_SOCKS
- if (using_socks) {
- NetDebug("Socks", "Using Socks ip: %u.%u.%u.%u:%d\n", PRINT_IP(ip), port);
- socksEntry = socksAllocator.alloc();
- socksEntry->init(cont->mutex, vc, opt->socks_support, opt->socks_version); /*XXXX remove last two args */
- socksEntry->action_ = cont;
- cont = socksEntry;
- if (socksEntry->server_ip == (uint32) - 1) {
- socksEntry->lerrno = ESOCK_NO_SOCK_SERVER_CONN;
- socksEntry->free();
- return ACTION_RESULT_DONE;
- }
- vc->ip = socksEntry->server_ip;
- vc->port = socksEntry->server_port;
- result = &socksEntry->action_;
- vc->action_ = socksEntry;
- } else {
- NetDebug("Socks", "Not Using Socks %d \n", socks_conf_stuff->socks_needed);
- vc->action_ = cont;
+ if (using_socks) {
+ NetDebug("Socks", "Using Socks ip: %u.%u.%u.%u:%d\n", PRINT_IP(ip), port);
+ socksEntry = socksAllocator.alloc();
+ socksEntry->init(cont->mutex, vc, opt->socks_support, opt->socks_version); /*XXXX remove last two args */
+ socksEntry->action_ = cont;
+ cont = socksEntry;
+ if (socksEntry->server_ip == (uint32) - 1) {
+ socksEntry->lerrno = ESOCK_NO_SOCK_SERVER_CONN;
+ socksEntry->free();
+ return ACTION_RESULT_DONE;
}
-#else
+ vc->ip = socksEntry->server_ip;
+ vc->port = socksEntry->server_port;
+ result = &socksEntry->action_;
+ vc->action_ = socksEntry;
+ } else {
+ NetDebug("Socks", "Not Using Socks %d \n", socks_conf_stuff->socks_needed);
vc->action_ = cont;
+ }
+#else
+ vc->action_ = cont;
#endif /*INK_NO_SOCKS */
- if (t->is_event_type(opt->etype)) {
- MUTEX_TRY_LOCK(lock, cont->mutex, t);
- if (lock) {
- MUTEX_TRY_LOCK(lock2, get_NetHandler(t)->mutex, t);
- if (lock2) {
- int ret;
- ret = vc->connectUp(t);
+ if (t->is_event_type(opt->etype)) {
+ MUTEX_TRY_LOCK(lock, cont->mutex, t);
+ if (lock) {
+ MUTEX_TRY_LOCK(lock2, get_NetHandler(t)->mutex, t);
+ if (lock2) {
+ int ret;
+ ret = vc->connectUp(t);
#ifndef INK_NO_SOCKS
- if ((using_socks) && (ret == CONNECT_SUCCESS))
- return &socksEntry->action_;
- else
+ if ((using_socks) && (ret == CONNECT_SUCCESS))
+ return &socksEntry->action_;
+ else
#endif
- return ACTION_RESULT_DONE;
- }
+ return ACTION_RESULT_DONE;
}
}
- eventProcessor.schedule_imm(vc, opt->etype);
+ }
+ eventProcessor.schedule_imm(vc, opt->etype);
#ifndef INK_NO_SOCKS
- if (using_socks) {
- return &socksEntry->action_;
- } else
+ if (using_socks) {
+ return &socksEntry->action_;
+ } else
#endif
- return result;
- }
+ return result;
}
Action *
@@ -266,68 +245,7 @@ UnixNetProcessor::connect(Continuation *
UnixNetVConnection ** avc,
unsigned int ip, int port, unsigned int _interface, NetVCOptions * opt)
{
- bool fast =
-#ifndef INK_NO_SOCKS
- !socks_conf_stuff->socks_needed &&
-#endif
- cont->mutex->is_thread();
- if (!fast) {
- return connect_re(cont, ip, port, _interface, opt);
- }
- ProxyMutex *mutex = cont->mutex;
- EThread *t = mutex->thread_holding;
- //NET_INCREMENT_DYN_STAT(net_connections_currently_open_stat);
- UnixNetVConnection *vc = allocateThread(t);
- vc->_interface = _interface;
- if (opt)
- vc->options = *opt;
- else
- opt = &vc->options;
- vc->id = net_next_connection_number();
- vc->submit_time = ink_get_hrtime();
- vc->setSSLClientConnection(true);
- vc->ip = ip;
- vc->port = port;
- vc->action_ = cont;
- vc->thread = t;
- vc->nh = get_NetHandler(t); //added by YTS Team, yamsat
- vc->mutex = mutex;
- if (check_net_throttle(CONNECT, vc->submit_time)) {
- check_throttle_warning();
- free(t);
- *avc = NULL;
- return ACTION_RESULT_DONE;
- }
-
- int res = 0;
- if (!_interface)
- res = vc->con.fast_connect(vc->ip, vc->port, opt);
- else
- res = vc->con.bind_connect(vc->ip, vc->port, _interface, opt);
-
- if (res) {
- free(t);
- *avc = NULL;
- return ACTION_RESULT_DONE;
- }
-
- check_emergency_throttle(vc->con);
-
- PollDescriptor *pd = get_PollDescriptor(t);
-
- if (vc->ep.start(pd, vc, EVENTIO_READ|EVENTIO_WRITE) < 0) {
- NetDebug("iocore_net", "connect : Error in adding to epoll list\n");
- close_UnixNetVConnection(vc, vc->thread);
- return ACTION_RESULT_DONE;
- }
-
- vc->nh->open_list.enqueue(vc);
-
- SET_CONTINUATION_HANDLER(vc, (NetVConnHandler) & UnixNetVConnection::mainEvent);
- ink_assert(!vc->inactivity_timeout_in);
- ink_assert(!vc->active_timeout_in);
- *avc = vc;
- return ACTION_RESULT_DONE;
+ return connect_re(cont, ip, port, _interface, opt);
}
struct CheckConnect:public Continuation
Modified: trafficserver/traffic/trunk/iocore/net/UnixNetVConnection.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/net/UnixNetVConnection.cc?rev=946831&r1=946830&r2=946831&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/net/UnixNetVConnection.cc (original)
+++ trafficserver/traffic/trunk/iocore/net/UnixNetVConnection.cc Fri May 21 00:01:35 2010
@@ -718,7 +718,7 @@ UnixNetVConnection::reenable(VIO *vio)
else
nh->write_ready_list.remove(this);
}
- } else if (!nh->mutex->is_thread()) {
+ } else {
MUTEX_TRY_LOCK(lock, nh->mutex, t);
if (!lock) {
if (vio == &read.vio) {