Re: [PATCH v2 3/4] perf record: enable runtime trace compression

From: Jiri Olsa
Date: Tue Feb 12 2019 - 08:09:16 EST


On Mon, Feb 11, 2019 at 11:23:40PM +0300, Alexey Budankov wrote:

SNIP

> diff --git a/tools/perf/util/mmap.c b/tools/perf/util/mmap.c
> index 239e9a13c2b7..980784b77fe2 100644
> --- a/tools/perf/util/mmap.c
> +++ b/tools/perf/util/mmap.c
> @@ -156,6 +156,86 @@ void __weak auxtrace_mmap_params__set_idx(struct auxtrace_mmap_params *mp __mayb
> {
> }
>
> +static ssize_t perf_mmap__capture(struct perf_mmap *md, int idx,
> + perf_mmap__compress_fn_t compress, void *where)
> +{
> + u64 head = perf_mmap__read_head(md);
> + unsigned char *data = md->base + page_size;
> + unsigned long size, size0 = 0;
> + void *buf;
> + int rc = 0;
> + size_t mmap_len = perf_mmap__mmap_len(md);

again, this function seems like duplicate of perf_mmap__push,
can't you just overload the push callback?

thanks,
jirka