On Fri, 11 Oct 2019 14:37:25 -0700 David Gow <davidgow@xxxxxxxxxx> wrote: > On Fri, Oct 11, 2019 at 2:05 PM Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote: > > > > <looks at kunit> > > > > Given that everything runs at late_initcall time, shouldn't everything > > be __init, __initdata etc so all the code and data doesn't hang around > > for ever? > > > > That's an interesting point. We haven't done this for KUnit tests to > date, and there is certainly a possibility down the line that we may > want to be able to run these tests in other circumstances. (There's > some work being done to allow KUnit and KUnit tests to be built as > modules here: https://lkml.org/lkml/2019/10/8/628 for example.) Maybe > it'd be worth having macros which wrap __init/__initdata etc as a way > of futureproofing tests against such a change? > > Either way, I suspect this is something that should probably be > considered for KUnit as a whole, rather than on a test-by-test basis. Sure, a new set of macros for this makes sense. Can be retrofitted any time. There might be a way of loading all of list_test.o into a discardable section at link time instead of sprinkling annotation all over the .c code.