lkml.org 
[lkml]   [2019]   [Feb]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 03/14] perf data: Move size to struct perf_data_file
    Date
    We are about to add support for multiple files,
    so we need each file to keep its size.

    Link: http://lkml.kernel.org/n/tip-gcf5gtwxds3ggegu6evl0jvn@git.kernel.org
    Signed-off-by: Jiri Olsa <jolsa@kernel.org>
    ---
    tools/perf/builtin-record.c | 5 ++---
    tools/perf/util/data.c | 2 +-
    tools/perf/util/data.h | 4 ++--
    3 files changed, 5 insertions(+), 6 deletions(-)

    diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
    index 6cb587dcb60d..1ed48b488b50 100644
    --- a/tools/perf/builtin-record.c
    +++ b/tools/perf/builtin-record.c
    @@ -659,10 +659,9 @@ static int process_sample_event(struct perf_tool *tool,

    static int process_buildids(struct record *rec)
    {
    - struct perf_data *data = &rec->data;
    struct perf_session *session = rec->session;

    - if (data->size == 0)
    + if (perf_data__size(&rec->data) == 0)
    return 0;

    /*
    @@ -850,7 +849,7 @@ record__finish_output(struct record *rec)
    return;

    rec->session->header.data_size += rec->bytes_written;
    - data->size = lseek(perf_data__fd(data), 0, SEEK_CUR);
    + data->file.size = lseek(perf_data__fd(data), 0, SEEK_CUR);

    if (!rec->no_buildid) {
    process_buildids(rec);
    diff --git a/tools/perf/util/data.c b/tools/perf/util/data.c
    index d8cfc19ddb10..09eceda17fc2 100644
    --- a/tools/perf/util/data.c
    +++ b/tools/perf/util/data.c
    @@ -82,7 +82,7 @@ static int open_file_read(struct perf_data *data)
    goto out_close;
    }

    - data->size = st.st_size;
    + data->file.size = st.st_size;
    return fd;

    out_close:
    diff --git a/tools/perf/util/data.h b/tools/perf/util/data.h
    index 4828f7feea89..85f9c0dbf982 100644
    --- a/tools/perf/util/data.h
    +++ b/tools/perf/util/data.h
    @@ -12,13 +12,13 @@ enum perf_data_mode {
    struct perf_data_file {
    const char *path;
    int fd;
    + unsigned long size;
    };

    struct perf_data {
    struct perf_data_file file;
    bool is_pipe;
    bool force;
    - unsigned long size;
    enum perf_data_mode mode;
    };

    @@ -44,7 +44,7 @@ static inline int perf_data__fd(struct perf_data *data)

    static inline unsigned long perf_data__size(struct perf_data *data)
    {
    - return data->size;
    + return data->file.size;
    }

    int perf_data__open(struct perf_data *data);
    --
    2.17.2
    \
     
     \ /
      Last update: 2019-02-03 16:30    [W:2.860 / U:0.608 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site