Commit 5f39f7da authored by dpranke's avatar dpranke Committed by Commit bot

Remove stray doc references to valgrind.

We removed direct support for valgrind on linux quite some
time ago, but apparently we missed a number of references
in the docs. This CL removes them, to reduce confusion.

Cr-Commit-Position: refs/heads/master@{#443967}
parent 571fb9dc
......@@ -40,27 +40,6 @@ If `fast/dom/object-plugin-hides-properties.html` and
sudo apt-get remove totem-mozilla
## Running layout tests under valgrind on Linux
As above, but use `tools/valgrind/ -t webkit` instead. e.g.
sh tools/valgrind/ -t webkit LayoutTests/fast/
This defaults to using --debug. Read the script for more details.
If you're trying to reproduce a run from the valgrind buildbot, look for the
`--run_chunk=XX:YY` line in the bot's log. You can rerun exactly as the bot did
with the commands.
cd ~/chromium/src
echo XX > valgrind_layout_chunk.txt
sh tools/valgrind/ -t layout -n YY
That will run the XXth chunk of YY layout tests.
## Configuration tips
* Use an optimized `content_shell` when rebaselining or running a lot of
......@@ -411,29 +411,6 @@ If some messages show as unknown, check if the list of IPC message headers in
up to date. In case this file reference goes out of date, try looking for usage
## Using valgrind
To run valgrind on the browser and renderer processes, with our suppression file
and flags:
$ tools/valgrind/ out/Debug/chrome
You can use valgrind on chrome and/or on the renderers e.g
`valgrind --smc-check=all ../sconsbuild/Debug/chrome`
or by passing valgrind as the argument to `--render-cmd-prefix`.
Beware that there are several valgrind "false positives" e.g. pickle, sqlite and
some instances in webkit that are ignorable. On systems with prelink and address
space randomization (e.g. Fedora), you may also see valgrind errors in libstdc++
on startup and in gnome-breakpad.
Valgrind doesn't seem to play nice with tcmalloc. To disable tcmalloc set the GN arg:
and rebuild.
## Profiling
......@@ -161,37 +161,6 @@ work around this, turn off the sandbox (via `export CHROME_DEVEL_SANDBOX=`).
For further information, please refer to
### Massif
[Massif]( is a
[Valgrind]( heap
profiler. It is much slower than the heap profiler from google-perftools, but it
may have some advantages. (In particular, it handles the multi-process
executables well).
First, you will need to build massif from valgrind-variant project yourself,
it's [easy](
Then, make sure your Chromium is built using the
[valgrind instructions](
Now, you can run massif like this:
path-to-valgrind-variant/valgrind/inst/bin/valgrind \
--fullpath-after=/chromium/src/ \
--trace-children-skip=*npviewer*,/bin/uname,/bin/sh,/usr/bin/which,/bin/ps,/bin/grep,/usr/bin/linux32 \
--trace-children=yes \
--tool=massif \
out/Release/chrome --noerrdialogs --disable-hang-monitor --other-chrome-flags
The result will be stored in massif.out.PID files, which you can post-process
with [ms_print](
TODO(kcc) sometimes when closing a tab the main process kills the tab process
before massif completes writing it's log file. Need a flag that tells the main
process to wait longer.
## Paint profiling
You can use Xephyr to profile how chrome repaints the screen. Xephyr is a
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment