Home | History | Annotate | Download | only in perf

Lines Matching defs:inject

2  * builtin-inject.c
4 * Builtin inject command: Examine the live mode (stdin) event stream
43 struct perf_inject *inject = container_of(tool, struct perf_inject, tool);
50 int ret = write(inject->output, buf, size);
56 inject->bytes_written += ret;
254 struct perf_inject *inject = container_of(tool, struct perf_inject, tool);
257 list_for_each_entry(ent, &inject->samples, node) {
274 struct perf_inject *inject = container_of(tool, struct perf_inject, tool);
288 list_add(&ent->node, &inject->samples);
301 struct perf_inject *inject = container_of(tool, struct perf_inject, tool);
304 list_for_each_entry(ent, &inject->samples, node) {
344 static int __cmd_inject(struct perf_inject *inject)
351 if (inject->build_ids || inject->sched_stat) {
352 inject->tool.mmap = perf_event__repipe_mmap;
353 inject->tool.mmap2 = perf_event__repipe_mmap2;
354 inject->tool.fork = perf_event__repipe_fork;
355 inject->tool.tracing_data = perf_event__repipe_tracing_data;
358 session = perf_session__new(inject->input_name, O_RDONLY, false, true, &inject->tool);
362 if (inject->build_ids) {
363 inject->tool.sample = perf_event__inject_buildid;
364 } else if (inject->sched_stat) {
367 inject->tool.ordered_samples = true;
384 if (!inject->pipe_output)
385 lseek(inject->output, session->header.data_offset, SEEK_SET);
387 ret = perf_session__process_events(session, &inject->tool);
389 if (!inject->pipe_output) {
390 session->header.data_size = inject->bytes_written;
391 perf_session__write_header(session, session->evlist, inject->output, true);
401 struct perf_inject inject = {
419 .samples = LIST_HEAD_INIT(inject.samples),
423 OPT_BOOLEAN('b', "build-ids", &inject.build_ids,
424 "Inject build-ids into the output stream"),
425 OPT_STRING('i', "input", &inject.input_name, "file",
429 OPT_BOOLEAN('s', "sched-stat", &inject.sched_stat,
437 "perf inject [<options>]",
450 inject.pipe_output = 1;
451 inject.output = STDOUT_FILENO;
453 inject.output = open(output_name, O_CREAT | O_WRONLY | O_TRUNC,
455 if (inject.output < 0) {
464 return __cmd_inject(&inject);