summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorvadimt <vadimt@chromium.org>2014-12-12 08:21:49 -0800
committerCommit bot <commit-bot@chromium.org>2014-12-12 16:22:04 +0000
commitda2e8a634f21c417d78a549d873c49ce7e7d1452 (patch)
tree29ba5473c03905a5187f1405d4760af79f038bf9
parentdd811e66bb623d2f80bbe85ad43396eeafa6f6a7 (diff)
downloadchromium_src-da2e8a634f21c417d78a549d873c49ce7e7d1452.zip
chromium_src-da2e8a634f21c417d78a549d873c49ce7e7d1452.tar.gz
chromium_src-da2e8a634f21c417d78a549d873c49ce7e7d1452.tar.bz2
Instrumenting IOComplete internals to find jank.
Instrumenting IOComplete internals to find jank. From prior instrumentations, the jank turned to be in QuicStreamFactory::Job::OnIOComplete - 26 jps and TransportConnectJobHelper::OnIOComplete - 7 jph Instrumentation of the callback of QuicStreamFactory::Job::OnIOComplete is covered by CL https://codereview.chromium.org/789483004/. This CL instruments the rest. BUG=436634 Review URL: https://codereview.chromium.org/792233002 Cr-Commit-Position: refs/heads/master@{#308096}
-rw-r--r--net/socket/client_socket_pool_base.cc6
-rw-r--r--net/socket/transport_client_socket_pool.h6
-rw-r--r--net/socket/websocket_transport_client_socket_pool.cc6
3 files changed, 18 insertions, 0 deletions
diff --git a/net/socket/client_socket_pool_base.cc b/net/socket/client_socket_pool_base.cc
index 9e1abf4..4092365 100644
--- a/net/socket/client_socket_pool_base.cc
+++ b/net/socket/client_socket_pool_base.cc
@@ -9,6 +9,7 @@
#include "base/logging.h"
#include "base/message_loop/message_loop.h"
#include "base/metrics/stats_counters.h"
+#include "base/profiler/scoped_tracker.h"
#include "base/stl_util.h"
#include "base/strings/string_util.h"
#include "base/time/time.h"
@@ -865,6 +866,11 @@ bool ClientSocketPoolBaseHelper::FindTopStalledGroup(
void ClientSocketPoolBaseHelper::OnConnectJobComplete(
int result, ConnectJob* job) {
+ // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
+ tracked_objects::ScopedTracker tracking_profile(
+ FROM_HERE_WITH_EXPLICIT_FUNCTION(
+ "436634 ClientSocketPoolBaseHelper::OnConnectJobComplete"));
+
DCHECK_NE(ERR_IO_PENDING, result);
const std::string group_name = job->group_name();
GroupMap::iterator group_it = group_map_.find(group_name);
diff --git a/net/socket/transport_client_socket_pool.h b/net/socket/transport_client_socket_pool.h
index bcc369f..2deb947 100644
--- a/net/socket/transport_client_socket_pool.h
+++ b/net/socket/transport_client_socket_pool.h
@@ -326,6 +326,12 @@ void TransportConnectJobHelper::OnIOComplete(T* job, int result) {
"436634 TransportConnectJobHelper::OnIOComplete"));
result = this->DoLoop(job, result);
+
+ // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
+ tracked_objects::ScopedTracker tracking_profile1(
+ FROM_HERE_WITH_EXPLICIT_FUNCTION(
+ "436634 TransportConnectJobHelper::OnIOComplete1"));
+
if (result != ERR_IO_PENDING)
job->NotifyDelegateOfCompletion(result); // Deletes |job| and |this|
}
diff --git a/net/socket/websocket_transport_client_socket_pool.cc b/net/socket/websocket_transport_client_socket_pool.cc
index 15ec028..ec83529 100644
--- a/net/socket/websocket_transport_client_socket_pool.cc
+++ b/net/socket/websocket_transport_client_socket_pool.cc
@@ -9,6 +9,7 @@
#include "base/compiler_specific.h"
#include "base/logging.h"
#include "base/numerics/safe_conversions.h"
+#include "base/profiler/scoped_tracker.h"
#include "base/strings/string_util.h"
#include "base/time/time.h"
#include "base/values.h"
@@ -630,6 +631,11 @@ void
WebSocketTransportClientSocketPool::ConnectJobDelegate::OnConnectJobComplete(
int result,
ConnectJob* job) {
+ // TODO(vadimt): Remove ScopedTracker below once crbug.com/436634 is fixed.
+ tracked_objects::ScopedTracker tracking_profile(
+ FROM_HERE_WITH_EXPLICIT_FUNCTION(
+ "436634 WebSocket...::ConnectJobDelegate::OnConnectJobComplete"));
+
owner_->OnConnectJobComplete(result,
static_cast<WebSocketTransportConnectJob*>(job));
}