Commit 65aa2e6b authored by Jiri Olsa's avatar Jiri Olsa Committed by Arnaldo Carvalho de Melo
Browse files

libperf: Add 'flush' to 'struct perf_mmap'



Move 'flush' from tools/perf's mmap to libperf's perf_mmap struct.

Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Michael Petlan <mpetlan@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lore.kernel.org/lkml/20190913132355.21634-19-jolsa@kernel.org


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent 4443e6d7
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -973,13 +973,13 @@ static int record__mmap_read_evlist(struct record *rec, struct evlist *evlist,
		if (map->core.base) {
			record__adjust_affinity(rec, map);
			if (synch) {
				flush = map->flush;
				map->flush = 1;
				flush = map->core.flush;
				map->core.flush = 1;
			}
			if (!record__aio_enabled(rec)) {
				if (perf_mmap__push(map, rec, record__pushfn) < 0) {
					if (synch)
						map->flush = flush;
						map->core.flush = flush;
					rc = -1;
					goto out;
				}
@@ -987,13 +987,13 @@ static int record__mmap_read_evlist(struct record *rec, struct evlist *evlist,
				if (record__aio_push(rec, map, &off) < 0) {
					record__aio_set_pos(trace_fd, off);
					if (synch)
						map->flush = flush;
						map->core.flush = flush;
					rc = -1;
					goto out;
				}
			}
			if (synch)
				map->flush = flush;
				map->core.flush = flush;
		}

		if (map->auxtrace_mmap.base && !rec->opts.auxtrace_snapshot_mode &&
+1 −0
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ struct perf_mmap {
	u64		 start;
	u64		 end;
	bool		 overwrite;
	u64		 flush;
	char		 event_copy[PERF_SAMPLE_MAX_SIZE] __aligned(8);
};

+2 −2
Original line number Diff line number Diff line
@@ -383,7 +383,7 @@ int perf_mmap__mmap(struct mmap *map, struct mmap_params *mp, int fd, int cpu)

	perf_mmap__setup_affinity_mask(map, mp);

	map->flush = mp->flush;
	map->core.flush = mp->flush;

	map->comp_level = mp->comp_level;

@@ -450,7 +450,7 @@ static int __perf_mmap__read_init(struct mmap *md)
	md->core.start = md->core.overwrite ? head : old;
	md->core.end = md->core.overwrite ? old : head;

	if ((md->core.end - md->core.start) < md->flush)
	if ((md->core.end - md->core.start) < md->core.flush)
		return -EAGAIN;

	size = md->core.end - md->core.start;
+0 −1
Original line number Diff line number Diff line
@@ -32,7 +32,6 @@ struct mmap {
	} aio;
#endif
	cpu_set_t	affinity_mask;
	u64		flush;
	void		*data;
	int		comp_level;
};