On Wed, 9 Feb 2022 17:24:30 +0100 Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx> wrote: > The PREEMPT_RT patchset does not use soft IRQs thus trying to filter for > do_softirq fails for such kernel: > > echo do_softirq > ftracetest: 81: echo: echo: I/O error > > Choose some other externally visible function for the test. > > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx> > > --- > > I understand that the failure does not exist on mainline kernel (only > with PREEMPT_RT patchset) but the change does not harm it. > > If it is not suitable alone, please consider it for RT patchset. > --- > .../selftests/ftrace/test.d/ftrace/func_set_ftrace_file.tc | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/tools/testing/selftests/ftrace/test.d/ftrace/func_set_ftrace_file.tc b/tools/testing/selftests/ftrace/test.d/ftrace/func_set_ftrace_file.tc > index e96e279e0533..1d0c7601865f 100644 > --- a/tools/testing/selftests/ftrace/test.d/ftrace/func_set_ftrace_file.tc > +++ b/tools/testing/selftests/ftrace/test.d/ftrace/func_set_ftrace_file.tc > @@ -19,7 +19,7 @@ fail() { # mesg > > FILTER=set_ftrace_filter > FUNC1="schedule" > -FUNC2="do_softirq" > +FUNC2="_printk" The problem with the above, is that it is not guaranteed to trigger (and probably will not), where as the do_softirq is. The filtering is suppose to trace something that actually happens. How about using: scheduler_tick ? -- Steve > > ALL_FUNCS="#### all functions enabled ####" >