1 #include <linux/rbtree.h> 2 #include <linux/list.h> 3 #include <unistd.h> 4 #include "symbol.h" 5 6 struct thread { 7 struct rb_node rb_node; 8 struct list_head maps; 9 pid_t pid; 10 char *comm; 11 }; 12 13 int thread__set_comm(struct thread *self, const char *comm); 14 struct thread * 15 threads__findnew(pid_t pid, struct rb_root *threads, struct thread **last_match); 16 struct thread * 17 register_idle_thread(struct rb_root *threads, struct thread **last_match); 18 void thread__insert_map(struct thread *self, struct map *map); 19 int thread__fork(struct thread *self, struct thread *parent); 20 struct map *thread__find_map(struct thread *self, u64 ip); 21 size_t threads__fprintf(FILE *fp, struct rb_root *threads); 22