From eeed384a516cf46ad150f1de7e644b86640254d1 Mon Sep 17 00:00:00 2001 From: Steffen Maier Date: Thu, 23 Jun 2022 18:52:02 +0200 Subject: [PATCH] dbginfo.sh: fix accidental ftrace buffer shrinkage/free MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://www.kernel.org/doc/html/latest/trace/ftrace.html?highlight=free_buffer free_buffer: If a process is performing tracing, and the ring buffer should be shrunk "freed" when the process is finished, even if it were to be killed by a signal, this file can be used for that purpose. On close of this file, the ring buffer will be resized to its minimum size. Having a process that is tracing also open this file, when the process exits its file descriptor for this file will be closed, and in doing so, the ring buffer will be "freed". It may also stop tracing if disable_on_free option is set. $ cat /sys/kernel/debug/tracing/buffer_size_kb 7 (expanded: 1408) $ cat /sys/kernel/debug/tracing/free_buffer cat: /sys/kernel/debug/tracing/free_buffer: Invalid argument $ cat /sys/kernel/debug/tracing/buffer_size_kb 0 Reported-by: Thomas Lambart Signed-off-by: Steffen Maier Signed-off-by: Jan Höppner --- scripts/dbginfo.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/dbginfo.sh b/scripts/dbginfo.sh index 397b67d0..4b24d935 100755 --- a/scripts/dbginfo.sh +++ b/scripts/dbginfo.sh @@ -786,6 +786,7 @@ collect_sysfs() { -x '*/tracing/trace_pipe*' \ -x '*/page_idle/bitmap*' \ -x '*/tracing/per_cpu/*' \ + -x '*/tracing/free_buffer' \ --ignore-failed-read -J 1 -T 5 2>>${OUTPUT_FILE_SYSFS}.err rc=$? else @@ -812,6 +813,7 @@ collect_sysfs() { -a -not \( -path '*tracing*' -a -name "trace_pipe*" \) \ -a -not \( -path '*page_idle*' -a -name 'bitmap*' \) \ -a -not -path '*tracing/per_cpu*' \ + -a -not -path '*/tracing/free_buffer' \ 2>/dev/null | while IFS= read -r file_name; do echo " ${file_name}" if ! dd if="${file_name}" status=noxfer iflag=nonblock \