On Sat, Feb 8, 2025 at 12:53 PM Yury Norov yury.norov@gmail.com wrote:
[...]
Take over means that you'd at least add the Co-developed-by tag.
I didn't use their code - the thing being "taken over" is the work of having these debates with the maintainers.
[...]
KUNIT is disabled in defconfig, at least on x86_64. It is also disabled on my Ubuntu 24.04 machine. If I take your patches, I'll be unable to boot-test bitmaps. Even worse, I'll be unable to build the standalone test from sources as a module and load it later.
Or I misunderstand it, and there's a way to build some particular KUNIT test without enabling KUNIT in config and/or re-compiling the whole kernel? Please teach me, if so
Unless you give me a way to build and run the test in true production environment, I'm not going with KUNITs. Sorry.
This is a question for David -- I don't know if this is possible.
[...]
This is my evidence: sometimes people report performance or whatever issues on their systems, suspecting bitmaps guilty. I ask them to run the bitmap or find_bit test to narrow the problem. Sometimes I need to test a hardware I have no access to, and I have to (kindly!) ask people to build a small test and run it. I don't want to ask them to rebuild the whole kernel, or even to build something else.
This is compelling evidence, and it was not previously raised. Thank you.
I notice that two things are true about the performance test part of test_bitmap.c: - It's a minority of the code in the file (48 lines out of 1462). - There are no assertions in it.
Do you also find value in running the testing portion on other people's machines, to which you don't have access?
[...]
Nice summary for the discussion. Unfortunately you missed my concerns. Which are:
Pros:
- Now we switch to KUNITs because KUNITs are so good
Cons:
- Wipes git history;
I was very careful to minimize churn, and the result is 249 lines on which I'd now own the blame (228 with `-w`). Still, it's a valid con.
- Bloats the test's source code;
The test is 74 lines shorter after this series.
- Adds dependencies;
- Doesn't run on most popular distros and defconfig;
Yep, I understand your concerns much better now - and I'm grateful for your having taken the time to explain and show receipts. Still, I wonder if we can get the best of both worlds - either by finding what you need in KUnit, or by moving the testing bit to KUnit and keeping the performance bit where it is.
Thanks. Tamir