On Mon, 18 Oct 2021 22:16:36 -0400 Steven Rostedt <rostedt@xxxxxxxxxxx> wrote: > On Mon, 18 Oct 2021 21:26:16 +0800 > Li Zhijian <lizhijian@xxxxxxxxxxxxxx> wrote: > > > LKP/0day observed that kselftests/ftrace cannot finish within 1 hour on > > a 96 cpus platform where it hangs in the line like: > > 'cat trace | grep -v ^# | awk '{ print $5 }' | sort -u | wc -l' > > subsystem-enable.tc > > > > It seems that trace will keep growing during it's read by 'cat' command. > > Consequently, trace becomes too large to finish reading. > > > > replace 'cat trace' by: > > $ sed -i 's/cat trace |/read_cached_trace |/g' $(find test.d -name "*.tc") > > > > Instead, what happens if you add this command to each test? > > if [ -t options/pause-on-trace ]; then > echo 1 > options/pause-on-trace > fi > > We also need to add to the "initialize_ftrace" function in test.d/functions. > > if [ -t options/pause-on-trace ]; then > echo 0 > options/pause-on-trace > fi Hmm, by the way, shouldn't we set this feature by default? There are many "cat trace | grep ..." style test code in ftracetest just for checking whether the event is recorded. At least for the ftracetest, it should be set unless the testcase is explicitly disable it. Thank you. > > -- Steve > > > CC: Philip Li <philip.li@xxxxxxxxx> > > Reported-by: kernel test robot <lkp@xxxxxxxxx> > > Signed-off-by: Li Zhijian <lizhijian@xxxxxxxxxxxxxx> > > --- -- Masami Hiramatsu <mhiramat@xxxxxxxxxx>