rtla: Remove procps-ng dependency
authorDaniel Bristot de Oliveira <bristot@kernel.org>
Fri, 13 May 2022 06:45:53 +0000 (08:45 +0200)
committerSteven Rostedt (Google) <rostedt@goodmis.org>
Thu, 26 May 2022 19:20:46 +0000 (15:20 -0400)
commitdada03db9bb1984826e61cfcf1418ac73848324d
tree8847cfa8f7d12ad779da1b98663bb43e91a9c8be
parent941a53c39a151e9aceef153cdfaed0f166ba01b7
rtla: Remove procps-ng dependency

Daniel Wagner reported to me that readproc.h got deprecated. Also,
while the procps-ng library was available on Fedora, it was not available
on RHEL, which is a piece of evidence that it was not that used.

rtla uses procps-ng only to find the PID of the tracers' workload.

I used the procps-ng library to avoid reinventing the wheel. But in this
case, reinventing the wheel took me less time than the time we already
took trying to work around problems.

Implement a function that reads /proc/ entries, checking if:
- the entry is a directory
- the directory name is composed only of digits (PID)
- the directory contains the comm file
- the comm file contains a comm that matches the tracers'
  workload prefix.
- then return true; otherwise, return false.

And use it instead of procps-ng.

Link: https://lkml.kernel.org/r/e8276e122ee9eb2c5a0ba8e673fb6488b924b825.1652423574.git.bristot@kernel.org
Cc: John Kacur <jkacur@redhat.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Tao Zhou <tao.zhou@linux.dev>
Fixes: b1696371d865 ("rtla: Helper functions for rtla")
Reported-by: Daniel Wagner <dwagner@suse.de>
Reviewed-by: Daniel Wagner <dwagner@suse.de>
Signed-off-by: Daniel Bristot de Oliveira <bristot@kernel.org>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
tools/tracing/rtla/Makefile
tools/tracing/rtla/README.txt
tools/tracing/rtla/src/utils.c
tools/tracing/rtla/src/utils.h