1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 21902efe7SFrederic Weisbecker #ifndef __PERF_COMM_H 31902efe7SFrederic Weisbecker #define __PERF_COMM_H 41902efe7SFrederic Weisbecker 51902efe7SFrederic Weisbecker #include <linux/list.h> 6*f0049f2cSArnaldo Carvalho de Melo #include <linux/types.h> 7*f0049f2cSArnaldo Carvalho de Melo #include <stdbool.h> 81902efe7SFrederic Weisbecker 91902efe7SFrederic Weisbecker struct comm_str; 101902efe7SFrederic Weisbecker 111902efe7SFrederic Weisbecker struct comm { 121902efe7SFrederic Weisbecker struct comm_str *comm_str; 131902efe7SFrederic Weisbecker u64 start; 141902efe7SFrederic Weisbecker struct list_head list; 1565de51f9SAdrian Hunter bool exec; 160db15b1eSAdrian Hunter union { /* Tool specific area */ 170db15b1eSAdrian Hunter void *priv; 180db15b1eSAdrian Hunter u64 db_id; 190db15b1eSAdrian Hunter }; 201902efe7SFrederic Weisbecker }; 211902efe7SFrederic Weisbecker 221902efe7SFrederic Weisbecker void comm__free(struct comm *comm); 2365de51f9SAdrian Hunter struct comm *comm__new(const char *str, u64 timestamp, bool exec); 241902efe7SFrederic Weisbecker const char *comm__str(const struct comm *comm); 2565de51f9SAdrian Hunter int comm__override(struct comm *comm, const char *str, u64 timestamp, 2665de51f9SAdrian Hunter bool exec); 271902efe7SFrederic Weisbecker 281902efe7SFrederic Weisbecker #endif /* __PERF_COMM_H */ 29