On Fri,  7 Aug 2026 15:15:33 +0800 Hongfu Li <[email protected]> wrote:

> > > ---
> > > v2:
> > > - update ksft_set_plan(88) to 87 to match the actual number of tests
> > >   after removing the duplicate call.
> > 
> > I wonder if there could be an automated way for this.  Obviously not a 
> > question
> > to the author but just my loud thought.
> 
> Glad you brought this up, I totally agree with your thought.
> 
> Something like the below refactor could achieve that automation:
> 
> +typedef void (*test_fn)(void);
> +typedef void (*test_fn_seal)(bool seal);
> +
> +static const struct {
> +    test_fn_seal fn;
> +    bool seal;
> +} tests_seal[] = {
> +    { test_seal_mprotect, false },
> +    { test_seal_mprotect, true },
> ...
> +};
> +
> +static const test_fn tests[] = {
> +    test_seal_addseal,
> +    test_seal_unmapped_start,
> ...
> +};
> +
> +
>  int main(void)
>  {
> ...
> -       ksft_set_plan(87);
> +       ksft_set_plan(ARRAY_SIZE(tests) + ARRAY_SIZE(tests_seal));
> +       for (size_t i = 0; i < ARRAY_SIZE(tests); i++)
> +               tests[i]();
> +       for (size_t i = 0; i < ARRAY_SIZE(tests_seal); i++)
> +        tests_seal[i].fn(tests_seal[i].seal);

Thank you for sharing your great idea.

> 
> Though I'm still unsure whether this extra complexity is really worthwhile.

Agreed.  I believe it is good to have this as is for now.

If we have to add such automation, I think kselftest framework is a better
place to change, than each test.


Thanks,
SJ

Reply via email to