On Fri, Jun 26, 2020 at 02:09:05PM -0700, Brendan Higgins wrote:
This patchset adds a centralized executor to dispatch tests rather than relying on late_initcall to schedule each test suite separately along with a couple of new features that depend on it.
So, the new section looks fine to me (modulo the INIT_DATA change). The plumbing to start the tests, though, I think is redundant. Why not just add a sysctl that starts all known tests?
That way you don't need the plumbing into init/main.c, and you can have a mode where builtin tests can be started on a fully booted system too.
i.e. boot with "sysctl.kernel.kunit=start" or when fully booted with "echo start > /proc/sys/kernel/kunit"
And instead of the kunit-specific halt/reboot stuff, how about moving /proc/sysrq-trigger into /proc/sys instead? Then you (or anything) could do:
sysctl.kernel.kunit=start sysctl.kernel.sysrq-trigger=b