summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorvadimt <vadimt@chromium.org>2015-01-02 14:47:11 -0800
committerCommit bot <commit-bot@chromium.org>2015-01-02 22:48:08 +0000
commite741fb39d975f84f6dcb84814d525e467c56ad0f (patch)
tree0892bd5559287288b4f21f7abf7356cb84052003
parent9f8cdb57987cdefa895b2af7178beb35c07c4a0c (diff)
downloadchromium_src-e741fb39d975f84f6dcb84814d525e467c56ad0f.zip
chromium_src-e741fb39d975f84f6dcb84814d525e467c56ad0f.tar.gz
chromium_src-e741fb39d975f84f6dcb84814d525e467c56ad0f.tar.bz2
Instrumenting more WM_ message processing methods to find jank.
Latest numbers: WindowImpl::WndProc2 == 76 jph <<MessagePumpForUI::ProcessNextWindowsMessage>> == 66 jph (this is the jank in MessagePumpForUI::ProcessNextWindowsMessage, but outside any other ScopedTracker) Instrumenting further. BUG=440919 Review URL: https://codereview.chromium.org/829843002 Cr-Commit-Position: refs/heads/master@{#309857}
-rw-r--r--base/message_loop/message_pump_win.cc5
-rw-r--r--ui/gfx/win/singleton_hwnd.cc6
-rw-r--r--ui/gfx/win/window_impl.cc7
3 files changed, 17 insertions, 1 deletions
diff --git a/base/message_loop/message_pump_win.cc b/base/message_loop/message_pump_win.cc
index 3f94c80..08f00f5 100644
--- a/base/message_loop/message_pump_win.cc
+++ b/base/message_loop/message_pump_win.cc
@@ -342,6 +342,11 @@ bool MessagePumpForUI::ProcessNextWindowsMessage() {
}
bool MessagePumpForUI::ProcessMessageHelper(const MSG& msg) {
+ // TODO(vadimt): Remove ScopedTracker below once crbug.com/440919 is fixed.
+ tracked_objects::ScopedTracker tracking_profile(
+ FROM_HERE_WITH_EXPLICIT_FUNCTION(
+ "440919 MessagePumpForUI::ProcessMessageHelper"));
+
TRACE_EVENT1("base", "MessagePumpForUI::ProcessMessageHelper",
"message", msg.message);
if (WM_QUIT == msg.message) {
diff --git a/ui/gfx/win/singleton_hwnd.cc b/ui/gfx/win/singleton_hwnd.cc
index fc4d11f..2e2b9ab 100644
--- a/ui/gfx/win/singleton_hwnd.cc
+++ b/ui/gfx/win/singleton_hwnd.cc
@@ -6,6 +6,7 @@
#include "base/memory/singleton.h"
#include "base/message_loop/message_loop.h"
+#include "base/profiler/scoped_tracker.h"
namespace gfx {
@@ -30,6 +31,11 @@ BOOL SingletonHwnd::ProcessWindowMessage(HWND window,
LPARAM lparam,
LRESULT& result,
DWORD msg_map_id) {
+ // TODO(vadimt): Remove ScopedTracker below once crbug.com/440919 is fixed.
+ tracked_objects::ScopedTracker tracking_profile(
+ FROM_HERE_WITH_EXPLICIT_FUNCTION(
+ "440919 SingletonHwnd::ProcessWindowMessage"));
+
FOR_EACH_OBSERVER(Observer,
observer_list_,
OnWndProc(window, message, wparam, lparam));
diff --git a/ui/gfx/win/window_impl.cc b/ui/gfx/win/window_impl.cc
index 29b96fe..f46e638 100644
--- a/ui/gfx/win/window_impl.cc
+++ b/ui/gfx/win/window_impl.cc
@@ -266,8 +266,13 @@ LRESULT WindowImpl::OnWndProc(UINT message, WPARAM w_param, LPARAM l_param) {
// Handle the message if it's in our message map; otherwise, let the system
// handle it.
- if (!ProcessWindowMessage(hwnd, message, w_param, l_param, result))
+ if (!ProcessWindowMessage(hwnd, message, w_param, l_param, result)) {
+ // TODO(vadimt): Remove ScopedTracker below once crbug.com/440919 is fixed.
+ tracked_objects::ScopedTracker tracking_profile(
+ FROM_HERE_WITH_EXPLICIT_FUNCTION("440919 WindowImpl DefWindowProc"));
+
result = DefWindowProc(hwnd, message, w_param, l_param);
+ }
return result;
}