Re: [PATCH 1/2] selftests/harness: Run TEARDOWN for ASSERT failures
From: Shuah Khan
Date: Fri Mar 25 2022 - 15:50:43 EST
On 3/24/22 5:19 PM, Kees Cook wrote:
The kselftest test harness has traditionally not run the registered
TEARDOWN handler when a test encountered an ASSERT. This creates
unexpected situations and tests need to be very careful about using
ASSERT, which seems a needless hurdle for test writers.
Because of the harness's design for optional failure handlers, the
original implementation of ASSERT used an abort() to immediately
stop execution, but that meant the context for running teardown was
lost. Instead, use setjmp/longjmp so that teardown can be done.
Thanks for the patch. The change look good to me.
Failed SETUP routines continue to not be followed by TEARDOWN, though.
Does this mean failed setup() routines have to handle TEARDOWN? What
are guidelines to follow for setup() failures?
Can you add a bit more detail on what you meant by " Failed SETUP
routines continue to not be followed by TEARDOWN, though".
With that:
Reviewed-by: Shuah Khan <skhan@xxxxxxxxxxxxxxxxxxx>
thanks,
-- Shuah