TPEGFX/Notes: Difference between revisions
< TPEGFX
Jump to navigation
Jump to search
m (→Misc) |
(→Misc) |
||
Line 40: | Line 40: | ||
*[pchang] dump stderr to console on windows | *[pchang] dump stderr to console on windows | ||
** ./mach run 2>&1|tee console.out | ** ./mach run 2>&1|tee console.out | ||
*[Jerry] dump call stack for NS_ASSERTION() or NS_WARNING() | |||
** Set prefix for stack message. | |||
*** https://dxr.mozilla.org/mozilla-central/rev/632e42dca494ec3d90b70325d9c359f80cb3f38a/xpcom/base/nsTraceRefcnt.cpp#845 | |||
** Set stack unwind number | |||
*** https://dxr.mozilla.org/mozilla-central/rev/632e42dca494ec3d90b70325d9c359f80cb3f38a/xpcom/base/nsTraceRefcnt.cpp#880 | |||
** XPCOM_DEBUG_BREAK="stack" ./mach run | |||
== Triage == | == Triage == |
Revision as of 03:50, 5 September 2017
Crash
- offsite sharing - crash
- Reading crash report on soccorow (kevin)
- Find the correlation
- Understand crash reason, crash address
- A look into mini dump/symbols/crash report (vincent)
- how to load mini dump/symbols
- useful windbg/gdb/lldb commands
- (lldb) br com add 1 //executes commands when breakpoint was hit
- (windbg) dt !xul:nsfont
- (windbg) !analyze -v
- case study
- Reading crash report on soccorow (kevin)
Testing
- [pchang] run GTest subset
- ./mach gtest Layers.*
- GTEST_FILTER='Layers*' MOZ_RUN_GTEST=1 ./mach run --debug //use debugger to debug GTest
- [Michael Leu] - My workflow of building environments for reproducing bugs
Misc
- [ethan] Canvas performance
- [Michael] FPS adjustment
- layout.frame_rate in about:config (-1 means default which is 60, 1000 at maximum)
- [pchang] Use gecko profiler with symbols
- ac_add_options --enable-profiling
- [pchang] Enable CPU profiling when use release build
- export MOZ_DEBUG_SYMBOLS=1
- ac_add_options --enable-debug-symbols
- [pchang] Enable ASAP mode
- layout.frame_rate: 0
- docshell.event_starvation_delay_hint: 1
- [pchang] dump log with timestamp 5 for debug 2 for Err
- MOZ_LOG=Layers:5,timestamp ./mach run 2>&1|tee omta.log
- [pchang] dump stderr to console on windows
- ./mach run 2>&1|tee console.out
- [Jerry] dump call stack for NS_ASSERTION() or NS_WARNING()
- Set prefix for stack message.
- Set stack unwind number
- XPCOM_DEBUG_BREAK="stack" ./mach run
Triage
- [vliu] Triage flow listed.
- Try to reproduce
- Add keyword 'reproducible' if you can reproduce
- Ask reporter set layers.acceleration.disabled as true to try again(depends)
- Enable/Disalbe ANGLE on windows
- Compare the difference between on/off e10s.
- Tried to change the preferences to observe.
- If the issue relatives to painting or text, you can try to change the backend in about:config
- gfx.canvas.azure.backends
- gfx.content.azure.backends
- nglayout.debug.paint_flashing
- layers.draw-borders
- If the issue relatives to painting or text, you can try to change the backend in about:config
- Ask for about:support
- Ask for about:memory if memory related
- ni? people or mgr to help you
- land needed printing message for this bug to observe more information.(this action is providing solution not doing the triage)
- Change priority to P1-3 with reason
- Add gfx-noted if there is nothing you can follow up
- Try to reproduce
- Ways to observe occurrence for triage bug.
- Crash report contains Volume to count for crash rate. There is 10 times of Volume increase between each FF version.
- Install addon bugzilla-socorro-lens can easily see crash rate in graphic view on that bug.
- For Intermittent bug, Orange Factor counts for occurrence rate for that bug you observed.
- Crash report contains Volume to count for crash rate. There is 10 times of Volume increase between each FF version.
- A useful link to help you reading crash report.
- refer keyword here https://wiki.mozilla.org/Platform/GFX/TriageSchedule#Keywords