On Fri, 20 Nov 2020 15:19:28 +0100 Marco Elver <elver@xxxxxxxxxx> wrote: > None of those triggered either. > > I found that disabling ftrace for some of kernel/rcu (see below) solved > the stalls (and any mention of deadlocks as a side-effect I assume), > resulting in successful boot. > > Does that provide any additional clues? I tried to narrow it down to 1-2 > files, but that doesn't seem to work. > > Thanks, > -- Marco > > ------ >8 ------ > > diff --git a/kernel/rcu/Makefile b/kernel/rcu/Makefile > index 0cfb009a99b9..678b4b094f94 100644 > --- a/kernel/rcu/Makefile > +++ b/kernel/rcu/Makefile > @@ -3,6 +3,13 @@ > # and is generally not a function of system call inputs. > KCOV_INSTRUMENT := n > > +ifdef CONFIG_FUNCTION_TRACER > +CFLAGS_REMOVE_update.o = $(CC_FLAGS_FTRACE) > +CFLAGS_REMOVE_sync.o = $(CC_FLAGS_FTRACE) > +CFLAGS_REMOVE_srcutree.o = $(CC_FLAGS_FTRACE) > +CFLAGS_REMOVE_tree.o = $(CC_FLAGS_FTRACE) > +endif > + Can you narrow it down further? That is, do you really need all of the above to stop the stalls? Also, since you are using linux-next, you have ftrace recursion debugging. Please enable: CONFIG_FTRACE_RECORD_RECURSION=y CONFIG_RING_BUFFER_RECORD_RECURSION=y when enabling any of the above. If you can get to a successful boot, you can then: # cat /sys/kernel/tracing/recursed_functions Which would let me know if there's an recursion issue in RCU somewhere. -- Steve -- Steve