Hi, This is 2nd version of series to extend kernel boot-time tracing to support newly added dynamic event types (eprobes, fprobes, and tracepoint probes) and introduces an automated QEMU-based test suite under tools/tracing/boottime/. Previous version is here:
https://lore.kernel.org/all/178597841107.123558.13065821394773752510.stgit@devnote2/ This version fixes some issues reported by Sashiko [1], simplifying code, and improve test program. [1/2] - Fix raw command detection logic for eprobes, fprobes, and tprobes by requiring ':' or isspace() after type prefix. - Consolidate duplicate loop logic into trace_boot_add_probe_event() helper function. [2/2] - Copy shared library dependencies using ldd if busybox is dynamically linked. - Wrap QEMU execution with timeout command and add -T/--timeout CLI option. - Add pre-flight checks for busybox architecture compatibility and cpio tool in run_boottime_test.sh. - Fix POSIX syntax compatibility and allow bypassing HOST_ARCH skip when custom kernel/QEMU parameters are passed. - Add boottime/run_boottime_test.sh to TEST_PROGS_EXTENDED in selftests/ftrace/Makefile. [1] https://sashiko.dev/#/patchset/178597841107.123558.13065821394773752510.stgit%40devnote2 Thanks, --- base-commit: ea694cdd92b6bfa123b3f5c563e47b4cf968046a Masami Hiramatsu (Google) (2): tracing/boot: Add support for eprobe, fprobe, and tprobe events selftests/ftrace: Add boot-time tracing test framework Documentation/trace/boottime-trace.rst | 18 + kernel/trace/trace_boot.c | 86 +++++++ kernel/trace/trace_dynevent.c | 5 tools/testing/selftests/ftrace/Makefile | 4 tools/testing/selftests/ftrace/boottime/Makefile | 10 + tools/testing/selftests/ftrace/boottime/README | 58 ++++ .../ftrace/boottime/bootconfigs/01-kprobe.bconf | 5 .../ftrace/boottime/bootconfigs/02-synth.bconf | 4 .../ftrace/boottime/bootconfigs/03-eprobe.bconf | 4 .../ftrace/boottime/bootconfigs/04-fprobe.bconf | 4 .../ftrace/boottime/bootconfigs/05-tprobe.bconf | 4 .../ftrace/boottime/bootconfigs/06-instance.bconf | 5 .../selftests/ftrace/boottime/run_boottime_test.sh | 264 ++++++++++++++++++++ .../selftests/ftrace/boottime/tests/01-kprobe.sh | 18 + .../selftests/ftrace/boottime/tests/02-synth.sh | 18 + .../selftests/ftrace/boottime/tests/03-eprobe.sh | 18 + .../selftests/ftrace/boottime/tests/04-fprobe.sh | 18 + .../selftests/ftrace/boottime/tests/05-tprobe.sh | 18 + .../selftests/ftrace/boottime/tests/06-instance.sh | 23 ++ tools/testing/selftests/ftrace/config | 4 20 files changed, 583 insertions(+), 5 deletions(-) create mode 100644 tools/testing/selftests/ftrace/boottime/Makefile create mode 100644 tools/testing/selftests/ftrace/boottime/README create mode 100644 tools/testing/selftests/ftrace/boottime/bootconfigs/01-kprobe.bconf create mode 100644 tools/testing/selftests/ftrace/boottime/bootconfigs/02-synth.bconf create mode 100644 tools/testing/selftests/ftrace/boottime/bootconfigs/03-eprobe.bconf create mode 100644 tools/testing/selftests/ftrace/boottime/bootconfigs/04-fprobe.bconf create mode 100644 tools/testing/selftests/ftrace/boottime/bootconfigs/05-tprobe.bconf create mode 100644 tools/testing/selftests/ftrace/boottime/bootconfigs/06-instance.bconf create mode 100755 tools/testing/selftests/ftrace/boottime/run_boottime_test.sh create mode 100755 tools/testing/selftests/ftrace/boottime/tests/01-kprobe.sh create mode 100755 tools/testing/selftests/ftrace/boottime/tests/02-synth.sh create mode 100755 tools/testing/selftests/ftrace/boottime/tests/03-eprobe.sh create mode 100755 tools/testing/selftests/ftrace/boottime/tests/04-fprobe.sh create mode 100755 tools/testing/selftests/ftrace/boottime/tests/05-tprobe.sh create mode 100755 tools/testing/selftests/ftrace/boottime/tests/06-instance.sh -- Masami Hiramatsu (Google) <[email protected]>
