Re: [PATCH] selftests/mm: make libnuma-dependent tests optional

From: David Hildenbrand (Arm)

Date: Thu Jul 30 2026 - 14:40:25 EST


On 7/30/26 17:33, Jiangshan Yi wrote:
> Hi David,
>
> Thanks for the review and the historical context — very helpful.
>
> You're right that the situations aren't parallel: liburing was made optional
> because it wasn't universally easy to obtain at the time, whereas libnuma is
> well established and trivial to install on most setups. My cover letter leaned
> too heavily on that analogy without articulating the actual motivation — my
> mistake.
>
> The scenario I'm trying to address is the *minimal container / cross-build*
> one: some CI images and embedded build environments deliberately omit
> libnuma-dev to keep the footprint small, or because the target has no NUMA
> topology. There, `migration`, `ksm_tests`, and `rmap` fail at **compile** time
> (`#include <numa.h>` not found), and `make` exits non-zero — so the CI step is
> judged failed even though the dozens of NUMA-independent tests would build
> fine. The goal isn't to spare users the install, but to stop a missing optional
> library from failing the whole `make`.
>
> That said, your comment makes me reconsider whether silent skipping is the
> right policy for selftests. I'd be happy to switch to: keep the tests
> enabled-by-default, but on missing libnuma print a clear notice ("install
> libnuma-dev to enable NUMA-dependent tests") and continue building the rest,
> rather than aborting. This stays closer to the "run as much as possible"
> philosophy while still guiding the user to the missing dependency.
>
> If neither direction is of interest, I'll drop the patch — no point adding
> maintenance surface for a problem that isn't real in practice. But if the
> minimal-container scenario resonates, I'll respin a v2 with proper motivation
> in the commit message.

I'd say we just keep it as is: the more you remove, the less you test, the less
helpful the test result is as a whole?

--
Cheers,

David