Skip to content

Commit 57706ab

Browse files
dsahernacmel
authored andcommitted
perf record: Refactor feature handling into a separate function
Code move only. No logic changes. Signed-off-by: David Ahern <[email protected]> Acked-by: Ingo Molnar <[email protected]> Cc: Frederic Weisbecker <[email protected]> Cc: Ingo Molnar <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Namhyung Kim <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: Stephane Eranian <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
1 parent 7717098 commit 57706ab

1 file changed

Lines changed: 21 additions & 12 deletions

File tree

tools/perf/builtin-record.c

Lines changed: 21 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -342,9 +342,28 @@ static int perf_record__mmap_read_all(struct perf_record *rec)
342342
return rc;
343343
}
344344

345+
static void perf_record__init_features(struct perf_record *rec)
346+
{
347+
struct perf_evlist *evsel_list = rec->evlist;
348+
struct perf_session *session = rec->session;
349+
int feat;
350+
351+
for (feat = HEADER_FIRST_FEATURE; feat < HEADER_LAST_FEATURE; feat++)
352+
perf_header__set_feat(&session->header, feat);
353+
354+
if (rec->no_buildid)
355+
perf_header__clear_feat(&session->header, HEADER_BUILD_ID);
356+
357+
if (!have_tracepoints(&evsel_list->entries))
358+
perf_header__clear_feat(&session->header, HEADER_TRACING_DATA);
359+
360+
if (!rec->opts.branch_stack)
361+
perf_header__clear_feat(&session->header, HEADER_BRANCH_STACK);
362+
}
363+
345364
static int __cmd_record(struct perf_record *rec, int argc, const char **argv)
346365
{
347-
int err, feat;
366+
int err;
348367
unsigned long waking = 0;
349368
const bool forks = argc > 0;
350369
struct machine *machine;
@@ -371,17 +390,7 @@ static int __cmd_record(struct perf_record *rec, int argc, const char **argv)
371390

372391
rec->session = session;
373392

374-
for (feat = HEADER_FIRST_FEATURE; feat < HEADER_LAST_FEATURE; feat++)
375-
perf_header__set_feat(&session->header, feat);
376-
377-
if (rec->no_buildid)
378-
perf_header__clear_feat(&session->header, HEADER_BUILD_ID);
379-
380-
if (!have_tracepoints(&evsel_list->entries))
381-
perf_header__clear_feat(&session->header, HEADER_TRACING_DATA);
382-
383-
if (!rec->opts.branch_stack)
384-
perf_header__clear_feat(&session->header, HEADER_BRANCH_STACK);
393+
perf_record__init_features(rec);
385394

386395
if (forks) {
387396
err = perf_evlist__prepare_workload(evsel_list, &opts->target,

0 commit comments

Comments
 (0)