On Fri, Sep 17, 2021 at 8:10 AM Brendan Higgins <brendanhiggins@xxxxxxxxxx> wrote: > > The structleak plugin causes the stack frame size to grow immensely when > used with KUnit; this is caused because KUnit allocates lots of > moderately sized structs on the stack as part of its assertion macro > implementation. For most tests with small to moderately sized tests > cases there are never enough KUnit assertions to be an issue at all; > even when a single test cases has many KUnit assertions, the compiler > should never put all these struct allocations on the stack at the same > time since the scope of the structs is so limited; however, the > structleak plugin does not seem to respect the compiler doing the right > thing and will still warn of excessive stack size in some cases. > > These patches are not a permanent solution since new tests can be added > with huge test cases, but this serves as a stop gap to stop structleak > from being used on KUnit tests which will currently result in excessive > stack size. > > Of the following patches, I think the thunderbolt patch may be > unnecessary since Linus already fixed that test. Additionally, I was not > able to reproduce the error on the sdhci-of-aspeed test. Nevertheless, I > included these tests cases for completeness. Please see my discussion > with Arnd for more context[1]. > > NOTE: Arnd did the legwork for most of these patches, but did not > actually share code for some of them, so I left his Signed-off-by off of > those patches as I don't want to misrepresent him. Arnd, please sign off > on those patches at your soonest convenience. Thanks a lot for picking up this work where I dropped the ball. Patches 1-5 look good to me, and I replied on one remaining issue I see with patch 6. I think you did more work on these that I did, by doing a nice write-up and splitting them into separate patches with useful changelogs, you should keep authorship, and just change my S-o-b to Suggested-by. If you prefer to keep me as the author, then the correct way would be to commit them with --author= to ensure that the author and first s-o-b match. Arnd