New issue
Advanced search Search tips

Issue 604301 link

Starred by 2 users

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug



Sign in to add a comment

traceviewer ETW importer breaks if Paging Executive on

Reported by ron...@gmail.com, Apr 18 2016

Issue description

UserAgent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.75 Safari/537.36

Steps to reproduce the problem:
1. Open a web page.
2. Open a new tab with chrome://tracing and start a trace (I tried Rendering, JS with Rendering and manual settings (including all categories)).
3. Go back to the "traced" web page for few seconds, and then stop the tracing.

What is the expected behavior?
Getting a trace.

What went wrong?
Getting an error:
While importing:
Error: Cannot determine pointer size of the system trace.
    at Error (native)
    at Object.EtwImporter.importEvents (chrome://tracing/tracing.js:4033:7)
    at Object.runImportEventsOnOneImporter (chrome://tracing/tracing.js:877:385)
    at Object.timedNamedFunction (chrome://tracing/tracing.js:313:310)
    at Object.Task.run (chrome://tracing/tracing.js:1048:13)
    at runAnother (chrome://tracing/tracing.js:1060:136)
    at runTask (chrome://tracing/tracing.js:1023:57)
    at processIdleWork (chrome://tracing/tracing.js:1029:116)
    at chrome://tracing/tracing.js:1017:81

Did this work before? N/A 

Chrome version: 50.0.2661.75  Channel: stable
OS Version: 6.1 (Windows 7, Windows Server 2008 R2)
Flash Version: Shockwave Flash 21.0 r0
 

Comment 1 by ron...@gmail.com, Apr 18 2016

Found the reason:
Apparently, you must disable "Paging Executive" on 64-bit Windows in order to get it to work (see here: https://blogs.msdn.microsoft.com/pigscanfly/2009/08/06/stack-walking-in-xperf/).
After disabling it (thru registry) and restarting the machine, tracing is now working.
Maybe it is a good idea to add a better error message in such case?
Cc: ashej...@chromium.org
Labels: M-52
Status: Untriaged (was: Unconfirmed)
Marking the above issue as Feature request and Untriage as per comment #1.

Dev Team will take a final call on the above request.


Thank you!
Components: -Platform>DevTools Internals>Tracing
Owner: sullivan@chromium.org
Status: Assigned (was: Untriaged)
Summary: traceviewer ETW importer breaks if Paging Executive on (was: chrome://tracing)
=> sullivan to triage
Cc: georgesak@chromium.org brucedaw...@chromium.org
+brucedawson, georgesak: can you help triage?
Hey, nice blog post. Very well written. Genius. That was my first (of many) ETW blog post.

On 64-bit Windows the metadata needed for stack walking is in pageable memory by default which means that it cannot be referenced from kernel mode which means that stack walking doesn't work, unless DisablePagingExecutive is set.

The exact failure modes of not having DisablePagingExecutive set have never been well explained but it is expected that some useful aspects of ETW tracing will fail, and certainly stack walking from kernel mode is on the list.

So, we either need to handle not getting stacks, or not try getting stacks if DisablePagingExecutive is not set, or ???

BTW, the reason that DisablePagingExecutive is not set by default is that it wastes a little bit of memory. I think it's typically only about 20 MB, but on low-memory machines that can be important. On our machines the amount should never be significant.

Project Member

Comment 6 by sheriffbot@chromium.org, Jun 1 2016

Labels: -M-52 M-53 MovedFrom-52
Moving this nonessential bug to the next milestone.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 7 by sheriffbot@chromium.org, Jul 13 2016

Labels: -M-53 MovedFrom-53
This issue has been moved once and is lower than Pri-1. Removing the milestone.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Components: Speed>Tracing
Components: -Internals>Tracing
Cc: -ashej...@chromium.org
Owner: ----
Status: Available (was: Assigned)

Sign in to add a comment