| 1 | // SPDX-License-Identifier: LGPL-2.1 |
| 2 | |
| 3 | size_t syscall_arg__scnprintf_pid(char *bf, size_t size, struct syscall_arg *arg) |
| 4 | { |
| 5 | int pid = arg->val; |
| 6 | struct trace *trace = arg->trace; |
| 7 | size_t printed = scnprintf(buf: bf, size, fmt: "%d" , pid); |
| 8 | struct thread *thread = machine__findnew_thread(machine: trace->host, pid, tid: pid); |
| 9 | |
| 10 | if (thread != NULL) { |
| 11 | if (!thread__comm_set(thread)) |
| 12 | thread__set_comm_from_proc(thread); |
| 13 | |
| 14 | if (thread__comm_set(thread)) |
| 15 | printed += scnprintf(buf: bf + printed, size: size - printed, |
| 16 | fmt: " (%s)" , thread__comm_str(thread)); |
| 17 | thread__put(thread); |
| 18 | } |
| 19 | |
| 20 | return printed; |
| 21 | } |
| 22 | |