Re: [PATCH] perf tools: Add a new generic section in perf.data

From: Ingo Molnar
Date: Fri Oct 16 2009 - 03:12:07 EST



* Frederic Weisbecker <fweisbec@xxxxxxxxx> wrote:

> +/*
> + * Version 0: contains trace_info section only
> + */
> +struct perf_file_additionals {
> + u64 version;
> + struct perf_file_section trace_info;
> +};

i dont disagree with the change - but it would be even nicer to simply
define a features bitmask, instead of a flat version - and add the
trace_info section as a feature.

That way it's all a lot more manageable: we dont know about versions per
se, we know about features. Individual features could be developed (and
backported) in a distributed way - without having to worry about a flat
version model.

So i'd suggest something like a bitmask in the perf.data file header:

DECLARE_BITMAP(features, 256);

Plus every perf version knows about the features it supports:

DECLARE_BITMAP(features_supported, 256);

The compatibility rule is: perf only touches attributes that belong to
features it knows about.

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/