On Thu, 14 May 2026 at 07:07, Jia He <[email protected]> wrote: > > When KFENCE is compiled in but disabled at boot (KFENCE_SAMPLE_INTERVAL=0) > or __kfence_pool is not allocated, every kfence kunit case fails with > -EINVAL. > > Use kunit_skip() so they are reported as skipped instead. > > To: Alexander Potapenko <[email protected]> > To: Marco Elver <[email protected]> > To: Dmitry Vyukov <[email protected]> > To: Andrew Morton <[email protected]> > Cc: [email protected] > Cc: [email protected] > > Signed-off-by: Jia He <[email protected]>
Acked-by: Marco Elver <[email protected]> Fair enough - typically this failure was a way to know something went wrong in the test setup. But I also understand that it's not always possible to just not load this test if kfence is not enabled, say with some compliance test suites or such. > --- > mm/kfence/kfence_test.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/mm/kfence/kfence_test.c b/mm/kfence/kfence_test.c > index 5725a367246d..e376329dd621 100644 > --- a/mm/kfence/kfence_test.c > +++ b/mm/kfence/kfence_test.c > @@ -822,8 +822,10 @@ static int test_init(struct kunit *test) > unsigned long flags; > int i; > > - if (!__kfence_pool) > - return -EINVAL; > + if (!__kfence_pool) { > + kunit_skip(test, "kfence pool not allocated or kfence not > enabled"); > + return 0; > + } > > spin_lock_irqsave(&observed.lock, flags); > for (i = 0; i < ARRAY_SIZE(observed.lines); i++) > -- > 2.34.1 >

