mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-22 16:57:40 +07:00
18d3f8fc0c
bootgraph & sleepgraph: - funnel all prints through the pprint function - remove superfluous print calls, arrange them in single blocks - flush stdout on every print, enables log capture on hang sleepgraph: - in -summary, if all tests have the same host+kernel+mode, add to title - update verbose device detail print to include machine suspend/resume - match tKernSus and tKernRes to pm_prepare/restore_console - fully support multiple suspend/resumes in a single timeline - enable various disk modes (disk-suspend, disk-test_resume, etc) - add warnings when -display (xset) fails Signed-off-by: Todd Brandt <todd.e.brandt@linux.intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
206 lines
6.2 KiB
INI
206 lines
6.2 KiB
INI
#
|
|
# This is the configuration file for sleepgraph. It contains
|
|
# all the tool arguments so that they don't have to be given on the
|
|
# command line. It also includes advanced settings for functions
|
|
# and kprobes. It is run like this
|
|
#
|
|
# sudo ./sleepgraph.py -config thisfile.txt
|
|
#
|
|
|
|
[Settings]
|
|
|
|
# Verbosity
|
|
# print verbose messages (default: false)
|
|
verbose: false
|
|
|
|
# Suspend Mode
|
|
# e.g. standby, mem, freeze, disk (default: mem)
|
|
mode: mem
|
|
|
|
# Automatic Wakeup
|
|
# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
|
|
rtcwake: 15
|
|
|
|
# Add Logs
|
|
# add the dmesg and ftrace log to the html output (default: false)
|
|
addlogs: false
|
|
|
|
# Display function calls
|
|
# graph source functions in the timeline (default: false)
|
|
dev: true
|
|
|
|
# Callgraph
|
|
# gather detailed ftrace callgraph data on all timeline events (default: false)
|
|
callgraph: false
|
|
|
|
# Back to Back Suspend/Resume
|
|
# Run two suspend/resumes back to back (default: false)
|
|
x2: false
|
|
|
|
# Back to Back Suspend Delay
|
|
# Time delay between the two test runs in ms (default: 0 ms)
|
|
x2delay: 0
|
|
|
|
# Minimum Device Length
|
|
# graph only devices longer than min in the timeline (default: 0.001 ms)
|
|
mindev: 1
|
|
|
|
# Minimum Callgraph Length
|
|
# provide callgraph data for blocks longer than min (default: 0.001 ms)
|
|
mincg: 1
|
|
|
|
# Suspend/Resume Gap
|
|
# insert a small visible gap between suspend and resume on the timeline (default: false)
|
|
srgap: false
|
|
|
|
# Output Directory Format
|
|
# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
|
|
output-dir: suspend-{hostname}-{date}-{time}-custom
|
|
|
|
# Override default timeline entries
|
|
# Do not use the internal default functions for timeline entries (default: false)
|
|
# Set this to true if you intend to only use the ones defined in this config
|
|
override-timeline-functions: true
|
|
|
|
# Override default dev timeline entries
|
|
# Do not use the internal default functions for dev timeline entries (default: false)
|
|
# Set this to true if you intend to only use the ones defined in this config
|
|
override-dev-timeline-functions: true
|
|
|
|
[timeline_functions_x86_64]
|
|
#
|
|
# Function calls to display in the timeline alongside device callbacks.
|
|
# The tool has an internal set of these functions which should cover the
|
|
# whole of kernel execution, but you can append or override here.
|
|
#
|
|
# This is a list of kprobes which use both symbol data and function arg data.
|
|
# The function calls are displayed on the timeline alongside the device blocks.
|
|
# The args are pulled directly from the stack using this architecture's registers
|
|
# and stack formatting. Three pieces of info are required. The function name,
|
|
# a format string, and an argument list
|
|
#
|
|
# Entry format:
|
|
#
|
|
# function: format{fn_arg1}_{fn_arg2} fn_arg1 fn_arg2 ... [color=purple]
|
|
#
|
|
# Required Arguments:
|
|
#
|
|
# function: The symbol name for the function you want probed, this is the
|
|
# minimum required for an entry, it will show up as the function
|
|
# name with no arguments.
|
|
#
|
|
# example: _cpu_up:
|
|
#
|
|
# Optional Arguments:
|
|
#
|
|
# format: The format to display the data on the timeline in. Use braces to
|
|
# enclose the arg names.
|
|
#
|
|
# example: CPU_ON[{cpu}]
|
|
#
|
|
# color: The color of the entry block in the timeline. The default color is
|
|
# transparent, so the entry shares the phase color. The color is an
|
|
# html color string, either a word, or an RGB.
|
|
#
|
|
# example: [color=#CC00CC]
|
|
#
|
|
# arglist: A list of arguments from registers/stack addresses. See URL:
|
|
# https://www.kernel.org/doc/Documentation/trace/kprobetrace.txt
|
|
#
|
|
# example: cpu=%di:s32
|
|
#
|
|
# Example: Display cpu resume in the timeline
|
|
#
|
|
# _cpu_up: CPU_ON[{cpu}] cpu=%di:s32 [color=orange]
|
|
#
|
|
_cpu_down: CPU_OFF[{cpu}] cpu=%di:s32
|
|
_cpu_up: CPU_ON[{cpu}] cpu=%di:s32
|
|
sys_sync:
|
|
pm_prepare_console:
|
|
pm_notifier_call_chain:
|
|
freeze_processes:
|
|
freeze_kernel_threads:
|
|
pm_restrict_gfp_mask:
|
|
acpi_suspend_begin:
|
|
suspend_console:
|
|
acpi_pm_prepare:
|
|
syscore_suspend:
|
|
arch_enable_nonboot_cpus_end:
|
|
syscore_resume:
|
|
acpi_pm_finish:
|
|
resume_console:
|
|
acpi_pm_end:
|
|
pm_restore_gfp_mask:
|
|
thaw_processes:
|
|
pm_restore_console:
|
|
|
|
[dev_timeline_functions_x86_64]
|
|
#
|
|
# Dev mode function calls to display inside timeline entries
|
|
#
|
|
# This is a list of kprobes which use both symbol data and function arg data.
|
|
# The function calls are displayed on the timeline alongside the device blocks.
|
|
# The args are pulled directly from the stack using this architecture's registers
|
|
# and stack formatting. Three pieces of info are required. The function name,
|
|
# a format string, and an argument list
|
|
#
|
|
# Entry format:
|
|
#
|
|
# function: format{fn_arg1}_{fn_arg2} fn_arg1 fn_arg2 ... [color=purple]
|
|
#
|
|
# Required Arguments:
|
|
#
|
|
# function: The symbol name for the function you want probed, this is the
|
|
# minimum required for an entry, it will show up as the function
|
|
# name with no arguments.
|
|
#
|
|
# example: ata_eh_recover:
|
|
#
|
|
# Optional Arguments:
|
|
#
|
|
# format: The format to display the data on the timeline in. Use braces to
|
|
# enclose the arg names.
|
|
#
|
|
# example: ata{port}_port_reset
|
|
#
|
|
# color: The color of the entry block in the timeline. The default color is
|
|
# transparent, so the entry shares the phase color. The color is an
|
|
# html color string, either a word, or an RGB.
|
|
#
|
|
# example: [color=#CC00CC]
|
|
#
|
|
# arglist: A list of arguments from registers/stack addresses. See URL:
|
|
# https://www.kernel.org/doc/Documentation/trace/kprobetrace.txt
|
|
#
|
|
# example: port=+36(%di):s32
|
|
#
|
|
# Example: Display ATA port reset as ataN_port_reset in the timeline
|
|
#
|
|
# ata_eh_recover: ata{port}_port_reset port=+36(%di):s32
|
|
#
|
|
msleep: msleep time=%di:s32
|
|
schedule_timeout_uninterruptible: schedule_timeout_uninterruptible timeout=%di:s32
|
|
schedule_timeout: schedule_timeout timeout=%di:s32
|
|
usleep_range: usleep_range min=%di:s32 max=%si:s32
|
|
__const_udelay: udelay loops=%di:s32
|
|
__mutex_lock_slowpath: mutex_lock_slowpath
|
|
ata_eh_recover: ata_eh_recover port=+36(%di):s32
|
|
acpi_os_stall:
|
|
acpi_resume_power_resources:
|
|
acpi_ps_parse_aml:
|
|
ext4_sync_fs:
|
|
i915_gem_resume:
|
|
i915_restore_state:
|
|
intel_opregion_setup:
|
|
g4x_pre_enable_dp:
|
|
vlv_pre_enable_dp:
|
|
chv_pre_enable_dp:
|
|
g4x_enable_dp:
|
|
vlv_enable_dp:
|
|
intel_hpd_init:
|
|
intel_opregion_register:
|
|
intel_dp_detect:
|
|
intel_hdmi_detect:
|
|
intel_opregion_init:
|
|
intel_fbdev_set_suspend:
|