1*4882a593Smuzhiyunperf-inject(1) 2*4882a593Smuzhiyun============== 3*4882a593Smuzhiyun 4*4882a593SmuzhiyunNAME 5*4882a593Smuzhiyun---- 6*4882a593Smuzhiyunperf-inject - Filter to augment the events stream with additional information 7*4882a593Smuzhiyun 8*4882a593SmuzhiyunSYNOPSIS 9*4882a593Smuzhiyun-------- 10*4882a593Smuzhiyun[verse] 11*4882a593Smuzhiyun'perf inject <options>' 12*4882a593Smuzhiyun 13*4882a593SmuzhiyunDESCRIPTION 14*4882a593Smuzhiyun----------- 15*4882a593Smuzhiyunperf-inject reads a perf-record event stream and repipes it to stdout. At any 16*4882a593Smuzhiyunpoint the processing code can inject other events into the event stream - in 17*4882a593Smuzhiyunthis case build-ids (-b option) are read and injected as needed into the event 18*4882a593Smuzhiyunstream. 19*4882a593Smuzhiyun 20*4882a593SmuzhiyunBuild-ids are just the first user of perf-inject - potentially anything that 21*4882a593Smuzhiyunneeds userspace processing to augment the events stream with additional 22*4882a593Smuzhiyuninformation could make use of this facility. 23*4882a593Smuzhiyun 24*4882a593SmuzhiyunOPTIONS 25*4882a593Smuzhiyun------- 26*4882a593Smuzhiyun-b:: 27*4882a593Smuzhiyun--build-ids:: 28*4882a593Smuzhiyun Inject build-ids into the output stream 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun--buildid-all: 31*4882a593Smuzhiyun Inject build-ids of all DSOs into the output stream 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun-v:: 34*4882a593Smuzhiyun--verbose:: 35*4882a593Smuzhiyun Be more verbose. 36*4882a593Smuzhiyun-i:: 37*4882a593Smuzhiyun--input=:: 38*4882a593Smuzhiyun Input file name. (default: stdin) 39*4882a593Smuzhiyun-o:: 40*4882a593Smuzhiyun--output=:: 41*4882a593Smuzhiyun Output file name. (default: stdout) 42*4882a593Smuzhiyun-s:: 43*4882a593Smuzhiyun--sched-stat:: 44*4882a593Smuzhiyun Merge sched_stat and sched_switch for getting events where and how long 45*4882a593Smuzhiyun tasks slept. sched_switch contains a callchain where a task slept and 46*4882a593Smuzhiyun sched_stat contains a timeslice how long a task slept. 47*4882a593Smuzhiyun 48*4882a593Smuzhiyun--kallsyms=<file>:: 49*4882a593Smuzhiyun kallsyms pathname 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun--itrace:: 52*4882a593Smuzhiyun Decode Instruction Tracing data, replacing it with synthesized events. 53*4882a593Smuzhiyun Options are: 54*4882a593Smuzhiyun 55*4882a593Smuzhiyuninclude::itrace.txt[] 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun--strip:: 58*4882a593Smuzhiyun Use with --itrace to strip out non-synthesized events. 59*4882a593Smuzhiyun 60*4882a593Smuzhiyun-j:: 61*4882a593Smuzhiyun--jit:: 62*4882a593Smuzhiyun Process jitdump files by injecting the mmap records corresponding to jitted 63*4882a593Smuzhiyun functions. This option also generates the ELF images for each jitted function 64*4882a593Smuzhiyun found in the jitdumps files captured in the input perf.data file. Use this option 65*4882a593Smuzhiyun if you are monitoring environment using JIT runtimes, such as Java, DART or V8. 66*4882a593Smuzhiyun 67*4882a593Smuzhiyun-f:: 68*4882a593Smuzhiyun--force:: 69*4882a593Smuzhiyun Don't complain, do it. 70*4882a593Smuzhiyun 71*4882a593SmuzhiyunSEE ALSO 72*4882a593Smuzhiyun-------- 73*4882a593Smuzhiyunlinkperf:perf-record[1], linkperf:perf-report[1], linkperf:perf-archive[1], 74*4882a593Smuzhiyunlinkperf:perf-intel-pt[1] 75