On Wed, 3 Mar 2021 at 10:57, Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx> wrote: > > On Wed, Mar 03, 2021 at 10:38:45AM +0100, Marco Elver wrote: > > Commit 56348560d495 ("debugfs: do not attempt to create a new file > > before the filesystem is initalized") forbids creating new debugfs files > > until debugfs is fully initialized. This breaks KCSAN's debugfs file > > creation, which happened at the end of __init(). > > How did it "break" it? The files shouldn't have actually been created, > right? Right, with 56348560d495 the debugfs file isn't created anymore, which is the problem. Before 56348560d495 the file exists (syzbot wants the file to exist.) > > There is no reason to create the debugfs file during early > > initialization. Therefore, move it into a late_initcall() callback. > > > > Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> > > Cc: "Rafael J. Wysocki" <rafael@xxxxxxxxxx> > > Cc: stable <stable@xxxxxxxxxxxxxxx> > > Fixes: 56348560d495 ("debugfs: do not attempt to create a new file before the filesystem is initalized") > > Signed-off-by: Marco Elver <elver@xxxxxxxxxx> > > --- > > I've marked this for 'stable', since 56348560d495 is also intended for > > stable, and would subsequently break KCSAN in all stable kernels where > > KCSAN is available (since 5.8). > > No objection from me, just odd that this actually fixes anything :) 56348560d495 causes the file to just not be created if we try to create at the end of __init(). Having it created as late as late_initcall() gets us the file back. When you say "fixes anything", should the file be created even though it's at the end of __init()? Perhaps I misunderstood what 56348560d495 changes, but I verified it to be the problem by reverting (upon which the file exists as expected). > Reviewed-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> Thanks! Would it be possible to get this into 5.12? -- Marco