xref: /kernel/linux/linux-6.6/tools/perf/trace/beauty/pid.c (revision 62306a36)
  • Home
  • History
  • Annotate Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
  • only in /kernel/linux/linux-6.6/tools/perf/trace/beauty/
162306a36Sopenharmony_ci// SPDX-License-Identifier: LGPL-2.1
262306a36Sopenharmony_ci
362306a36Sopenharmony_cisize_t syscall_arg__scnprintf_pid(char *bf, size_t size, struct syscall_arg *arg)
462306a36Sopenharmony_ci{
562306a36Sopenharmony_ci	int pid = arg->val;
662306a36Sopenharmony_ci	struct trace *trace = arg->trace;
762306a36Sopenharmony_ci	size_t printed = scnprintf(bf, size, "%d", pid);
862306a36Sopenharmony_ci	struct thread *thread = machine__findnew_thread(trace->host, pid, pid);
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ci	if (thread != NULL) {
1162306a36Sopenharmony_ci		if (!thread__comm_set(thread))
1262306a36Sopenharmony_ci			thread__set_comm_from_proc(thread);
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ci		if (thread__comm_set(thread))
1562306a36Sopenharmony_ci			printed += scnprintf(bf + printed, size - printed,
1662306a36Sopenharmony_ci					     " (%s)", thread__comm_str(thread));
1762306a36Sopenharmony_ci		thread__put(thread);
1862306a36Sopenharmony_ci	}
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci	return printed;
2162306a36Sopenharmony_ci}
22

Indexes created Thu Nov 07 10:32:03 CST 2024