On 7/15/22 02:03, Daniel Latypov wrote:
On Thu, Jul 14, 2022 at 4:51 PM Guenter Roeck linux@roeck-us.net wrote:
On Fri, Jul 08, 2022 at 05:30:47PM -0300, Maíra Canal wrote:
Considering the current adoption of the KUnit framework, convert the DRM format selftest to the KUnit API.
Tested-by: David Gow davidgow@google.com Acked-by: Daniel Latypov dlatypov@google.com Reviewed-by: Javier Martinez Canillas javierm@redhat.com Signed-off-by: Maíra Canal maira.canal@usp.br
This patch results in:
Building powerpc:allmodconfig ... failed
Error log: drivers/gpu/drm/tests/drm_format_test.c: In function 'igt_check_drm_format_min_pitch': drivers/gpu/drm/tests/drm_format_test.c:271:1: error: the frame size of 3712 bytes is larger than 2048 bytes
presumably due to function nesting.
This can happen when there's a lot of KUNIT_EXPECT_* calls in a single function. See [1] for some related context. There were a number of patches that went into 5.18 ([2] and others) to try and mitigate this, but it's not always enough.
Ideally the compiler would see that the stack-local variables used in these macros don't need to stick around, but it doesn't always happen...
Thanks Daniel for the explanation.
One workaround would be to split up the test case functions into smaller chunks.
Maíra,
Could you please look at splitting in smaller chunks to mitigate this issue ?