perf callchain: Update docs regarding kernel/user space unwinding
authorTony Jones <tonyj@suse.de>
Wed, 25 Mar 2020 16:40:53 +0000 (09:40 -0700)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Wed, 25 Mar 2020 19:13:21 +0000 (16:13 -0300)
The method of unwinding for kernel space is defined by the kernel
config, not by the value of --call-graph.   Improve the documentation to
reflect this.

Signed-off-by: Tony Jones <tonyj@suse.de>
Link: http://lore.kernel.org/lkml/20200325164053.10177-1-tonyj@suse.de
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/Documentation/perf-config.txt
tools/perf/Documentation/perf-record.txt

index 8ead55593984fd7022938442459addf565dd1d91..f16d8a71d3f5fe190bd743b0a86c9c98fa6f71d4 100644 (file)
@@ -405,14 +405,16 @@ ui.*::
                This option is only applied to TUI.
 
 call-graph.*::
-       When sub-commands 'top' and 'report' work with -g/—-children
-       there're options in control of call-graph.
+       The following controls the handling of call-graphs (obtained via the
+       -g/--call-graph options).
 
        call-graph.record-mode::
-               The record-mode can be 'fp' (frame pointer), 'dwarf' and 'lbr'.
-               The value of 'dwarf' is effective only if perf detect needed library
-               (libunwind or a recent version of libdw).
-               'lbr' only work for cpus that support it.
+               The mode for user space can be 'fp' (frame pointer), 'dwarf'
+               and 'lbr'.  The value 'dwarf' is effective only if libunwind
+               (or a recent version of libdw) is present on the system;
+               the value 'lbr' only works for certain cpus. The method for
+               kernel space is controlled not by this option but by the
+               kernel config (CONFIG_UNWINDER_*).
 
        call-graph.dump-size::
                The size of stack to dump in order to do post-unwinding. Default is 8192 (byte).
index 7f4db7592467df592d934ad52237e467a6e784f1..b25e028458e2e664203319110fa646a1f5c143a8 100644 (file)
@@ -237,16 +237,22 @@ OPTIONS
        option and remains only for backward compatibility.  See --event.
 
 -g::
-       Enables call-graph (stack chain/backtrace) recording.
+       Enables call-graph (stack chain/backtrace) recording for both
+       kernel space and user space.
 
 --call-graph::
        Setup and enable call-graph (stack chain/backtrace) recording,
-       implies -g.  Default is "fp".
+       implies -g.  Default is "fp" (for user space).
 
-       Allows specifying "fp" (frame pointer) or "dwarf"
-       (DWARF's CFI - Call Frame Information) or "lbr"
-       (Hardware Last Branch Record facility) as the method to collect
-       the information used to show the call graphs.
+       The unwinding method used for kernel space is dependent on the
+       unwinder used by the active kernel configuration, i.e
+       CONFIG_UNWINDER_FRAME_POINTER (fp) or CONFIG_UNWINDER_ORC (orc)
+
+       Any option specified here controls the method used for user space.
+
+       Valid options are "fp" (frame pointer), "dwarf" (DWARF's CFI -
+       Call Frame Information) or "lbr" (Hardware Last Branch Record
+       facility).
 
        In some systems, where binaries are build with gcc
        --fomit-frame-pointer, using the "fp" method will produce bogus