GNU Linux-libre 4.19.211-gnu1
[releases.git] / tools / perf / util / comm.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __PERF_COMM_H
3 #define __PERF_COMM_H
4
5 #include "../perf.h"
6 #include <linux/rbtree.h>
7 #include <linux/list.h>
8
9 struct comm_str;
10
11 struct comm {
12         struct comm_str *comm_str;
13         u64 start;
14         struct list_head list;
15         bool exec;
16         union { /* Tool specific area */
17                 void    *priv;
18                 u64     db_id;
19         };
20 };
21
22 void comm__free(struct comm *comm);
23 struct comm *comm__new(const char *str, u64 timestamp, bool exec);
24 const char *comm__str(const struct comm *comm);
25 int comm__override(struct comm *comm, const char *str, u64 timestamp,
26                    bool exec);
27
28 #endif  /* __PERF_COMM_H */