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) {