cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

custom-timeline-functions.cfg (6331B)


      1#
      2# This is the configuration file for sleepgraph. It contains
      3# all the tool arguments so that they don't have to be given on the
      4# command line. It also includes advanced settings for functions
      5# and kprobes. It is run like this
      6#
      7#    sudo ./sleepgraph.py -config thisfile.txt
      8#
      9
     10[Settings]
     11
     12# Verbosity
     13# print verbose messages (default: false)
     14verbose: false
     15
     16# Suspend Mode
     17# e.g. standby, mem, freeze, disk (default: mem)
     18mode: mem
     19
     20# Automatic Wakeup
     21# Use rtcwake to autoresume after X seconds, or off to disable (default: 15)
     22rtcwake: 15
     23
     24# Add Logs
     25# add the dmesg and ftrace log to the html output (default: false)
     26addlogs: false
     27
     28# Display function calls
     29# graph source functions in the timeline (default: false)
     30dev: true
     31
     32# Callgraph
     33# gather detailed ftrace callgraph data on all timeline events (default: false)
     34callgraph: false
     35
     36# Back to Back Suspend/Resume
     37# Run two suspend/resumes back to back (default: false)
     38x2: false
     39
     40# Back to Back Suspend Delay
     41# Time delay between the two test runs in ms (default: 0 ms)
     42x2delay: 0
     43
     44# Minimum Device Length
     45# graph only devices longer than min in the timeline (default: 0.001 ms)
     46mindev: 1
     47
     48# Minimum Callgraph Length
     49# provide callgraph data for blocks longer than min (default: 0.001 ms)
     50mincg: 1
     51
     52# Suspend/Resume Gap
     53# insert a small visible gap between suspend and resume on the timeline (default: false)
     54srgap: false
     55
     56# Output Directory Format
     57# output folder for html, ftrace, and dmesg. Use {date} and {time} for current values
     58output-dir: suspend-{hostname}-{date}-{time}-custom
     59
     60# Override default timeline entries
     61# Do not use the internal default functions for timeline entries (default: false)
     62# Set this to true if you intend to only use the ones defined in this config
     63override-timeline-functions: true
     64
     65# Override default dev timeline entries
     66# Do not use the internal default functions for dev timeline entries (default: false)
     67# Set this to true if you intend to only use the ones defined in this config
     68override-dev-timeline-functions: true
     69
     70[timeline_functions_x86_64]
     71#
     72# Function calls to display in the timeline alongside device callbacks.
     73# The tool has an internal set of these functions which should cover the
     74# whole of kernel execution, but you can append or override here.
     75#
     76# This is a list of kprobes which use both symbol data and function arg data.
     77# The function calls are displayed on the timeline alongside the device blocks.
     78# The args are pulled directly from the stack using this architecture's registers
     79# and stack formatting. Three pieces of info are required. The function name,
     80# a format string, and an argument list
     81#
     82# Entry format:
     83#
     84#   function: format{fn_arg1}_{fn_arg2} fn_arg1 fn_arg2 ... [color=purple]
     85#
     86# Required Arguments:
     87#
     88#   function: The symbol name for the function you want probed, this is the
     89#             minimum required for an entry, it will show up as the function
     90#             name with no arguments.
     91#
     92#       example: _cpu_up:
     93#
     94# Optional Arguments:
     95#
     96#   format: The format to display the data on the timeline in. Use braces to
     97#           enclose the arg names.
     98#
     99#       example: CPU_ON[{cpu}]
    100#
    101#   color: The color of the entry block in the timeline. The default color is
    102#          transparent, so the entry shares the phase color. The color is an
    103#          html color string, either a word, or an RGB.
    104#
    105#       example: [color=#CC00CC]
    106#
    107#   arglist: A list of arguments from registers/stack addresses. See URL:
    108#            https://www.kernel.org/doc/Documentation/trace/kprobetrace.txt
    109#
    110#       example: cpu=%di:s32
    111#
    112# Example: Display cpu resume in the timeline
    113#
    114#       _cpu_up: CPU_ON[{cpu}] cpu=%di:s32 [color=orange]
    115#
    116_cpu_down: CPU_OFF[{cpu}] cpu=%di:s32
    117_cpu_up: CPU_ON[{cpu}] cpu=%di:s32
    118sys_sync:
    119pm_prepare_console:
    120pm_notifier_call_chain:
    121freeze_processes:
    122freeze_kernel_threads:
    123pm_restrict_gfp_mask:
    124acpi_suspend_begin:
    125suspend_console:
    126acpi_pm_prepare:
    127syscore_suspend:
    128arch_thaw_secondary_cpus_end:
    129syscore_resume:
    130acpi_pm_finish:
    131resume_console:
    132acpi_pm_end:
    133pm_restore_gfp_mask:
    134thaw_processes:
    135pm_restore_console:
    136
    137[dev_timeline_functions_x86_64]
    138#
    139# Dev mode function calls to display inside timeline entries
    140#
    141# This is a list of kprobes which use both symbol data and function arg data.
    142# The function calls are displayed on the timeline alongside the device blocks.
    143# The args are pulled directly from the stack using this architecture's registers
    144# and stack formatting. Three pieces of info are required. The function name,
    145# a format string, and an argument list
    146#
    147# Entry format:
    148#
    149#   function: format{fn_arg1}_{fn_arg2} fn_arg1 fn_arg2 ... [color=purple]
    150#
    151# Required Arguments:
    152#
    153#   function: The symbol name for the function you want probed, this is the
    154#             minimum required for an entry, it will show up as the function
    155#             name with no arguments.
    156#
    157#       example: ata_eh_recover:
    158#
    159# Optional Arguments:
    160#
    161#   format: The format to display the data on the timeline in. Use braces to
    162#           enclose the arg names.
    163#
    164#       example: ata{port}_port_reset
    165# 
    166#   color: The color of the entry block in the timeline. The default color is
    167#          transparent, so the entry shares the phase color. The color is an
    168#          html color string, either a word, or an RGB.
    169#
    170#       example: [color=#CC00CC]
    171#
    172#   arglist: A list of arguments from registers/stack addresses. See URL:
    173#            https://www.kernel.org/doc/Documentation/trace/kprobetrace.txt
    174#
    175#       example: port=+36(%di):s32
    176#
    177# Example: Display ATA port reset as ataN_port_reset in the timeline
    178#
    179#       ata_eh_recover: ata{port}_port_reset port=+36(%di):s32
    180#
    181msleep: msleep time=%di:s32
    182schedule_timeout_uninterruptible: schedule_timeout_uninterruptible timeout=%di:s32
    183schedule_timeout: schedule_timeout timeout=%di:s32
    184usleep_range: usleep_range min=%di:s32 max=%si:s32
    185__const_udelay: udelay loops=%di:s32
    186__mutex_lock_slowpath: mutex_lock_slowpath
    187ata_eh_recover: ata_eh_recover port=+36(%di):s32
    188acpi_os_stall:
    189acpi_resume_power_resources:
    190acpi_ps_parse_aml:
    191ext4_sync_fs:
    192i915_gem_resume:
    193i915_restore_state:
    194intel_opregion_setup:
    195g4x_pre_enable_dp:
    196vlv_pre_enable_dp:
    197chv_pre_enable_dp:
    198g4x_enable_dp:
    199vlv_enable_dp:
    200intel_hpd_init:
    201intel_opregion_register:
    202intel_dp_detect:
    203intel_hdmi_detect:
    204intel_opregion_init:
    205intel_fbdev_set_suspend: