summaryrefslogtreecommitdiffstats
path: root/tools/perf/util/comm.h
blob: 3e5c438fe85ea54a1e25e63d5d72a079616c2507 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef __PERF_COMM_H
#define __PERF_COMM_H

#include "../perf.h"
#include <linux/rbtree.h>
#include <linux/list.h>

struct comm_str;

struct comm {
	struct comm_str *comm_str;
	u64 start;
	struct list_head list;
	bool exec;
	union { /* Tool specific area */
		void	*priv;
		u64	db_id;
	};
};

void comm__free(struct comm *comm);
struct comm *comm__new(const char *str, u64 timestamp, bool exec);
const char *comm__str(const struct comm *comm);
int comm__override(struct comm *comm, const char *str, u64 timestamp,
		   bool exec);

#endif  /* __PERF_COMM_H */