Hi Lorenzo, On Thu, 30 Jan 2025 at 15:09, Lorenzo Stoakes <lorenzo.stoakes@xxxxxxxxxx> wrote:
Having written a ton of test code, I've unfortunately encountered a lot of this sort of push-back and it's HUGELY off-putting. Writing test code should be ENCOURAGED not litigated against.
I am not discouraging nor pushing back on any testing code (on the contrary, I test every single new kunit test that appears upstream). My apologies if I gave the impression.
The truth is far too little kernel code is tested to any degree, and this is part of why. On kunit collaboration, I attended an in-person talk at LPC on kunit userland testing where it was broadly agreed that at this point in time, the xarray/radix tree tests weren't really suited to the framework. Therefore I think the healthy means of pushing forward with integration is in sensible discussion and if patches, RFC patches in collaboration with authors.
Good.
The unhealthy approach is to needle one of the biggest contributors to core test code in the kernel on a thread because you don't seem to want to cd to a directory and run make.
My initial issue was that I could not find out where that is documented. $ make help ... Userspace tools targets: use "make tools/help" or "cd tools; make help" $ make tools/help Possible targets: ... You can do: ... $ make tools/all builds all tools. But that command does not build tools/testing/radix-tree, so I was completely lost.
Why is this relevant to me? I am the author of the VMA test suite, on which I spent countless hours + relied heavily on Liam's work to do so, and equally there you have to cd to a directory and run make.
Thanks for your work! One suggestion for improvement: tools/testing/vma does not seem to be built by "make tools/all" either.
But at the same time in both cases, testability of key internal components is ENORMOUSLY improved and allows for REALLY exciting possibilities in test coverage, really isolating functions for unit testing, enormously fast iteration speed, etc. etc. I ask you to weigh up the desire to enumerate your misgivings about the testing approach used here vs. all of the above.
I repeat: I am not against these tests. Thanks! Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds