Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

tracing/histogram: Fix stacktrace histogram Documententation

Fix a small problem with the histogram specification in the
Documentation, and change the example to show output using a
stacktrace field rather than the global stacktrace.

Link: https://lkml.kernel.org/r/f75f807dd4998249e513515f703a2ff7407605f4.1676063532.git.zanussi@kernel.org

Signed-off-by: Tom Zanussi <zanussi@kernel.org>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>

authored by

Tom Zanussi and committed by
Steven Rostedt (Google)
d8f0ae3e f5914b30

+91 -67
+91 -67
Documentation/trace/histogram.rst
··· 1993 1993 A synthetic event that has a stacktrace field may use it as a key in 1994 1994 histogram:: 1995 1995 1996 - # echo 'hist:delta.buckets=100,stack.stacktrace:sort=delta' > events/synthetic/block_lat/trigger 1996 + # echo 'hist:keys=delta.buckets=100,stack.stacktrace:sort=delta' > events/synthetic/block_lat/trigger 1997 1997 # cat events/synthetic/block_lat/hist 1998 1998 1999 1999 # event histogram 2000 2000 # 2001 - # trigger info: hist:keys=delta.buckets=100,stacktrace:vals=hitcount:sort=delta.buckets=100:size=2048 [active] 2001 + # trigger info: hist:keys=delta.buckets=100,stack.stacktrace:vals=hitcount:sort=delta.buckets=100:size=2048 [active] 2002 2002 # 2003 - 2004 - { delta: ~ 0-99, stacktrace: 2005 - event_hist_trigger+0x464/0x480 2006 - event_triggers_call+0x52/0xe0 2007 - trace_event_buffer_commit+0x193/0x250 2008 - trace_event_raw_event_sched_switch+0xfc/0x150 2009 - __traceiter_sched_switch+0x41/0x60 2010 - __schedule+0x448/0x7b0 2011 - schedule_idle+0x26/0x40 2012 - cpu_startup_entry+0x19/0x20 2013 - start_secondary+0xed/0xf0 2014 - secondary_startup_64_no_verify+0xe0/0xeb 2015 - } hitcount: 6 2016 - { delta: ~ 0-99, stacktrace: 2017 - event_hist_trigger+0x464/0x480 2018 - event_triggers_call+0x52/0xe0 2019 - trace_event_buffer_commit+0x193/0x250 2020 - trace_event_raw_event_sched_switch+0xfc/0x150 2021 - __traceiter_sched_switch+0x41/0x60 2022 - __schedule+0x448/0x7b0 2023 - schedule_idle+0x26/0x40 2024 - cpu_startup_entry+0x19/0x20 2025 - __pfx_kernel_init+0x0/0x10 2026 - arch_call_rest_init+0xa/0x24 2027 - start_kernel+0x964/0x98d 2028 - secondary_startup_64_no_verify+0xe0/0xeb 2029 - } hitcount: 3 2030 - { delta: ~ 0-99, stacktrace: 2031 - event_hist_trigger+0x464/0x480 2032 - event_triggers_call+0x52/0xe0 2033 - trace_event_buffer_commit+0x193/0x250 2034 - trace_event_raw_event_sched_switch+0xfc/0x150 2035 - __traceiter_sched_switch+0x41/0x60 2036 - __schedule+0x448/0x7b0 2037 - schedule+0x5a/0xb0 2038 - worker_thread+0xaf/0x380 2039 - kthread+0xe9/0x110 2040 - ret_from_fork+0x2c/0x50 2003 + { delta: ~ 0-99, stack.stacktrace __schedule+0xa19/0x1520 2004 + schedule+0x6b/0x110 2005 + io_schedule+0x46/0x80 2006 + bit_wait_io+0x11/0x80 2007 + __wait_on_bit+0x4e/0x120 2008 + out_of_line_wait_on_bit+0x8d/0xb0 2009 + __wait_on_buffer+0x33/0x40 2010 + jbd2_journal_commit_transaction+0x155a/0x19b0 2011 + kjournald2+0xab/0x270 2012 + kthread+0xfa/0x130 2013 + ret_from_fork+0x29/0x50 2041 2014 } hitcount: 1 2042 - { delta: ~ 100-199, stacktrace: 2043 - event_hist_trigger+0x464/0x480 2044 - event_triggers_call+0x52/0xe0 2045 - trace_event_buffer_commit+0x193/0x250 2046 - trace_event_raw_event_sched_switch+0xfc/0x150 2047 - __traceiter_sched_switch+0x41/0x60 2048 - __schedule+0x448/0x7b0 2049 - schedule_idle+0x26/0x40 2050 - cpu_startup_entry+0x19/0x20 2051 - start_secondary+0xed/0xf0 2052 - secondary_startup_64_no_verify+0xe0/0xeb 2053 - } hitcount: 15 2054 - [..] 2055 - { delta: ~ 8500-8599, stacktrace: 2056 - event_hist_trigger+0x464/0x480 2057 - event_triggers_call+0x52/0xe0 2058 - trace_event_buffer_commit+0x193/0x250 2059 - trace_event_raw_event_sched_switch+0xfc/0x150 2060 - __traceiter_sched_switch+0x41/0x60 2061 - __schedule+0x448/0x7b0 2062 - schedule_idle+0x26/0x40 2063 - cpu_startup_entry+0x19/0x20 2064 - start_secondary+0xed/0xf0 2065 - secondary_startup_64_no_verify+0xe0/0xeb 2015 + { delta: ~ 0-99, stack.stacktrace __schedule+0xa19/0x1520 2016 + schedule+0x6b/0x110 2017 + io_schedule+0x46/0x80 2018 + rq_qos_wait+0xd0/0x170 2019 + wbt_wait+0x9e/0xf0 2020 + __rq_qos_throttle+0x25/0x40 2021 + blk_mq_submit_bio+0x2c3/0x5b0 2022 + __submit_bio+0xff/0x190 2023 + submit_bio_noacct_nocheck+0x25b/0x2b0 2024 + submit_bio_noacct+0x20b/0x600 2025 + submit_bio+0x28/0x90 2026 + ext4_bio_write_page+0x1e0/0x8c0 2027 + mpage_submit_page+0x60/0x80 2028 + mpage_process_page_bufs+0x16c/0x180 2029 + mpage_prepare_extent_to_map+0x23f/0x530 2030 + } hitcount: 1 2031 + { delta: ~ 0-99, stack.stacktrace __schedule+0xa19/0x1520 2032 + schedule+0x6b/0x110 2033 + schedule_hrtimeout_range_clock+0x97/0x110 2034 + schedule_hrtimeout_range+0x13/0x20 2035 + usleep_range_state+0x65/0x90 2036 + __intel_wait_for_register+0x1c1/0x230 [i915] 2037 + intel_psr_wait_for_idle_locked+0x171/0x2a0 [i915] 2038 + intel_pipe_update_start+0x169/0x360 [i915] 2039 + intel_update_crtc+0x112/0x490 [i915] 2040 + skl_commit_modeset_enables+0x199/0x600 [i915] 2041 + intel_atomic_commit_tail+0x7c4/0x1080 [i915] 2042 + intel_atomic_commit_work+0x12/0x20 [i915] 2043 + process_one_work+0x21c/0x3f0 2044 + worker_thread+0x50/0x3e0 2045 + kthread+0xfa/0x130 2046 + } hitcount: 3 2047 + { delta: ~ 0-99, stack.stacktrace __schedule+0xa19/0x1520 2048 + schedule+0x6b/0x110 2049 + schedule_timeout+0x11e/0x160 2050 + __wait_for_common+0x8f/0x190 2051 + wait_for_completion+0x24/0x30 2052 + __flush_work.isra.0+0x1cc/0x360 2053 + flush_work+0xe/0x20 2054 + drm_mode_rmfb+0x18b/0x1d0 [drm] 2055 + drm_mode_rmfb_ioctl+0x10/0x20 [drm] 2056 + drm_ioctl_kernel+0xb8/0x150 [drm] 2057 + drm_ioctl+0x243/0x560 [drm] 2058 + __x64_sys_ioctl+0x92/0xd0 2059 + do_syscall_64+0x59/0x90 2060 + entry_SYSCALL_64_after_hwframe+0x72/0xdc 2061 + } hitcount: 1 2062 + { delta: ~ 0-99, stack.stacktrace __schedule+0xa19/0x1520 2063 + schedule+0x6b/0x110 2064 + schedule_timeout+0x87/0x160 2065 + __wait_for_common+0x8f/0x190 2066 + wait_for_completion_timeout+0x1d/0x30 2067 + drm_atomic_helper_wait_for_flip_done+0x57/0x90 [drm_kms_helper] 2068 + intel_atomic_commit_tail+0x8ce/0x1080 [i915] 2069 + intel_atomic_commit_work+0x12/0x20 [i915] 2070 + process_one_work+0x21c/0x3f0 2071 + worker_thread+0x50/0x3e0 2072 + kthread+0xfa/0x130 2073 + ret_from_fork+0x29/0x50 2074 + } hitcount: 1 2075 + { delta: ~ 100-199, stack.stacktrace __schedule+0xa19/0x1520 2076 + schedule+0x6b/0x110 2077 + schedule_hrtimeout_range_clock+0x97/0x110 2078 + schedule_hrtimeout_range+0x13/0x20 2079 + usleep_range_state+0x65/0x90 2080 + pci_set_low_power_state+0x17f/0x1f0 2081 + pci_set_power_state+0x49/0x250 2082 + pci_finish_runtime_suspend+0x4a/0x90 2083 + pci_pm_runtime_suspend+0xcb/0x1b0 2084 + __rpm_callback+0x48/0x120 2085 + rpm_callback+0x67/0x70 2086 + rpm_suspend+0x167/0x780 2087 + rpm_idle+0x25a/0x380 2088 + pm_runtime_work+0x93/0xc0 2089 + process_one_work+0x21c/0x3f0 2066 2090 } hitcount: 1 2067 2091 2068 2092 Totals: 2069 - Hits: 89 2070 - Entries: 11 2071 - Dropped: 0 2093 + Hits: 10 2094 + Entries: 7 2095 + Dropped: 0 2072 2096 2073 2097 2.2.3 Hist trigger 'handlers' and 'actions' 2074 2098 -------------------------------------------