On Sat, Feb 8, 2025 at 12:53 PM Yury Norov <yury.norov@xxxxxxxxx> 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. https://lore.kernel.org/all/YuWk3titnOiQACzC@yury-laptop/
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