Re: [RFC PATCH 5/6] selftests: run tests on nommu architecture

Hajime Tazaki <[email protected]>
Newsgroups org.kernel.vger.linux-kselftest,org.infradead.lists.linux-um,org.kvack.linux-mm
Message-ID <[email protected]>
On Fri, 14 Aug 2026 21:50:50 +0900,
Lorenzo Stoakes (ARM) wrote:
> 
> Not really loving this as mentioned on the cover letter.
> 
> I'm sympathetic to making things work if it's not invasive, but now you've
> essentially asking new test authors be aware of this to some degree.

It is not intentional that new test authors should have to think about
NOMMU=1.  If there are no option specified it should be as what
the current kselftest is and it it's not, it's a design failure of mine.

> And making the harness - which is the defacto way of writing tests - now
> simply not work there is a bit crazy.
> 
> I'd ideally like to see _all_ tests use the harness.

I also think so but if NOMMU tests is implemented using the harness
test, this patchset would be invasive.  This one is very small patch
which tries to:

- add ability to run tests on nommu
- with minimum modifications and not breaking any existing usage of
  kselftest

which are, I guess, what you're suggesting.

> Also a bunch of the tests already do forking as part of the testing:
> 
> $ cd tools/testing/selftests/mm
> $ rg -l "fork\(" | wc -l
> 17
> 
> So at this point you're not really running much of the selftests at all,
> and are only happening to run those that don't do the very basic stuff
> nommu can't deal with.

the current situation is exactly what you described. `TARGETS=mm` is
able to only build with NOMMU=1, but onlyis runnable with nommu_*_test
(I need to specify `-t nommu_mmap_test -t nommu_mremap_test` to pass
tests from a run.

Now I'm thinking to create a different target (e.g., `TARGETS=mm/nommu`)
to make it more clear for this situation.

Existing tests even in selftests/mm should not involve these new tests
which has such limitation.

> I think an audit of existing tests to figure out what works with nommu vs
> what doesn't is really unreasonable again, given nobody tests or seemingly
> uses these arches.
> 
> So this patch might beget more nommu carve outs and exceptions and
> therefore nommu workload and maintenance, which isn't really sustainable.

I can understand but without tests we cannot easily detect regressions
in future.  Like when you applied broad changes into mm and try to
apply also to nommu.c, I believe these tests are also useful to verify
the extension, especially if the changes are not trivial.

# sorry, this might be too obvious for you..

> I know I complain about lack of testing on nommu, but at the same time I
> don't think running arbitrary tests that happen to work on it and who knows
> if they are valid asserts anyway really fixes things.

agree.
I think (current) nommu isn't ready to run arbitrary tests of mm.

> And given nobody really is doing testing, it's not really a great RoI
> here...

At least myself, for the moment, has an interest.

> ...OTOH I suppose it's a minimal change we can largely ignore as long as
> this doesn't lead to additional work/auditing from anybody but nommu
> enthusiasts.
> 
> But I'm just not sure that will be the case :(

again, this (not breaking existing model) is my intention so, this
should be the case, and if it's not it should be addressed in this
series.

> (I'm amazed we support a mode in linux that can't fork() in 2026 :)

I concur.

> > ---
> >  Documentation/dev-tools/kselftest.rst       | 12 ++++++++++++
> >  tools/testing/selftests/kselftest/runner.sh |  9 +++++++--
> >  tools/testing/selftests/kselftest_harness.h |  4 ++++
> >  tools/testing/selftests/lib.mk              |  8 ++++++++
> >  4 files changed, 31 insertions(+), 2 deletions(-)
> >
> > diff --git a/Documentation/dev-tools/kselftest.rst b/Documentation/dev-tools/kselftest.rst
> > index 64c0ec7428a2..800b2b688aff 100644
> > --- a/Documentation/dev-tools/kselftest.rst
> > +++ b/Documentation/dev-tools/kselftest.rst
> > @@ -230,6 +230,18 @@ section::
> >
> >  .. _tar's auto-compress: https://www.gnu.org/software/tar/manual/html_node/gzip.html#auto_002dcompress
> >
> > +Build and test on nommu target
> > +==============================
> > +
> > +If you (cross-)build kselftests for nommu targets, or run tests on nommu targets, use

-- Hajime
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.