mmap_data
mmap_data : 1, /* non-exec mmap data */
if (event->attr.mmap || event->attr.mmap_data)
if (attr->mmap || attr->mmap_data || attr->mmap2 ||
if (event->attr.mmap || event->attr.mmap_data)
event->attr.mmap2 || event->attr.mmap_data ||
return (!executable && event->attr.mmap_data) ||
const void *mmap_data = NULL;
mmap_data = bpf_map__initial_value(map, &mmap_size);
print_hex(mmap_data, mmap_size);
mmap_data : 1, /* non-exec mmap data */
struct mmap_data *data = arg;
struct mmap_data *data;
.mmap_data = 1,
evsel->core.attr.mmap_data = track;
attr->mmap_data = track;
WRITE_ASS(mmap_data, "d");
PRINT_ATTRf_bf(mmap_data, p_unsigned);
mmap_data = 0,
&precise_ip, &mmap_data, &sample_id_all,
attr.mmap_data = mmap_data;
bool mmap_data;
args->needs_mmap, args->mmap_data,
bool needs_mmap, bool mmap_data,
needs_mmap, mmap_data,
args[i].mmap_data = mmap_data;
bool mmap_data)
if (!mmap_data || (event->mmap2.prot & PROT_READ) == 0)
bool needs_mmap, bool mmap_data)
process, machine, mmap_data))
process, machine, mmap_data);
bool needs_mmap, bool mmap_data)
needs_mmap, mmap_data)) {
needs_mmap, mmap_data)) {
bool mmap_data,
tool, machine, needs_mmap, mmap_data);
int perf_event__synthesize_mmap_events(const struct perf_tool *tool, union perf_event *event, pid_t pid, pid_t tgid, perf_event__handler_t process, struct machine *machine, bool mmap_data);
int perf_event__synthesize_thread_map(const struct perf_tool *tool, struct perf_thread_map *threads, perf_event__handler_t process, struct machine *machine, bool needs_mmap, bool mmap_data);
int perf_event__synthesize_threads(const struct perf_tool *tool, perf_event__handler_t process, struct machine *machine, bool needs_mmap, bool mmap_data, unsigned int nr_threads_synthesize);
void *mmap_data = NULL;
mmap_data = mmap(NULL, mmap_sz, PROT_READ | PROT_WRITE,
if (CHECK(mmap_data == MAP_FAILED, "mmap",
mmap_data = NULL;
data = mmap_data;
memset(mmap_data, 0, sizeof(*data));
if (mmap_data) {
CHECK_FAIL(munmap(mmap_data, mmap_sz));
mmap_data = NULL;