• Adrian Hunter's avatar
    perf tools: Add facility to export data in database-friendly way · 0db15b1e
    Adrian Hunter authored
    This patch introduces an abstraction for exporting sample data in a
    database-friendly way.  The abstraction does not implement the actual
    output.  A subsequent patch takes this facility into use for extending
    the script interface.
    
    The abstraction is needed because static data like symbols, dsos, comms
    etc need to be exported only once.  That means allocating them a unique
    identifier and recording it on each structure.  The member 'db_id' is
    used for that.  'db_id' is just a 64-bit sequence number.
    
    Exporting centres around the db_export__sample() function which exports
    the associated data structures if they have not yet been allocated a
    db_id.
    Signed-off-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
    Cc: David Ahern <dsahern@gmail.com>
    Cc: Frederic Weisbecker <fweisbec@gmail.com>
    Cc: Jiri Olsa <jolsa@redhat.com>
    Cc: Namhyung Kim <namhyung@gmail.com>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Stephane Eranian <eranian@google.com>
    Link: http://lkml.kernel.org/r/1414061124-26830-6-git-send-email-adrian.hunter@intel.com
    [ committer note: Stash db_id using symbol_conf.priv_size + symbol__priv() and foo->priv areas ]
    Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    0db15b1e
thread.h 2.27 KB