Changes

Jump to: navigation, search

Platform/GFX/Quantum Render

28 bytes added, 16:15, 26 April 2019
m
Debugging with the WebRender Debugger: formatting
=== Debugging with the WebRender Debugger ===
WebRender has a built-in debug server that can be interacted with a browser-based frontend. This debugger can let you toggle debug flags in WebRender, as well as extract some of WR's internal data structures "live". The browser-based frontend can be opened by pointing your browser to the `<tt>gfx/wr/debugger/index.html` </tt> file, and navigating the different panes will give you an idea of what kinds of things it can do.
The debug server in WebRender is not built or enabled by default. To build it, you need to add `<tt>ac_add_options --enable-webrender-debugger` </tt> to your mozconfig file. And to enable it, you need to set the `<tt>gfx.webrender.start-debug-server` </tt> pref to true. All WR renderer instances created after this pref is enabled will start a separate instance of the debug server. On desktop, this means new browser windows opened after the pref is enabled will each have a debug server, although in practice only the first will be able to acquire the port and the rest will fail. On mobile (for example in the GVE) the pref needs to be set during startup for the WR renderer instance to start the debug server.
Once you have the debug server enabled, you need to ensure the frontend can talk to it. If you are running the frontend and WR on the same machine this should just work. For debugging WR on Android, you will generally load the frontend on a desktop, and will need to use `<tt>adb forward tcp:3583 tcp:3583` </tt> to port-forward the connection to the device being debugged. Then click on the "Connect" button in the frontend and you should be good to go.
=== Bisecting ===
Confirm
586
edits

Navigation menu