On 3/28/24 8:34 AM, John Hubbard wrote: > Hi, > > As mentioned in each patch, this implements the solution that we discussed in > December 2023, in [1]. This turned out to be very clean and easy. It should also > be quite easy to maintain. There is another way. The headers should be built automatically by make dependency. The topmost make file always builds headers before building kselftest i.e., make kselftest The tools/testing/selftests/Makefile and others Makefiles in test suites should be updated to build the headers as well. This used to be the behavior until there were un-resolvable bugs in the Makefiles and it was reverted: https://lore.kernel.org/all/cover.1657614127.git.guillaume.tucker@xxxxxxxxxxxxx/ We should come up with the revert of this series such that all the different scenarios are covered instead of yet again a new solution; resorting to the duplication of header files or any sort of duplication. > > This should also make Peter Zijlstra happy, because it directly addresses the > root cause of his "NAK NAK NAK" reply [2]. :) > > I haven't done much build testing, because selftests are not so easy to build > with a cross-compiler. So it's just tested on x86 64-bit so far. > > [1] https://lore.kernel.org/all/783a4178-1dec-4e30-989a-5174b8176b09@xxxxxxxxxx/ > [2] https://lore.kernel.org/lkml/20231103121652.GA6217@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/ > > Cc: David Hildenbrand <david@xxxxxxxxxx> > Cc: Mark Brown <broonie@xxxxxxxxxx> > Cc: Muhammad Usama Anjum <usama.anjum@xxxxxxxxxxxxx> > Cc: Suren Baghdasaryan <surenb@xxxxxxxxxx> > Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx> > > John Hubbard (2): > selftests: break the dependency upon local header files > selftests/mm: fix additional build errors for selftests > > tools/include/uapi/linux/memfd.h | 39 +++ > tools/include/uapi/linux/userfaultfd.h | 386 +++++++++++++++++++++++++ > tools/testing/selftests/lib.mk | 9 + > tools/testing/selftests/mm/Makefile | 2 +- > 4 files changed, 435 insertions(+), 1 deletion(-) > create mode 100644 tools/include/uapi/linux/memfd.h > create mode 100644 tools/include/uapi/linux/userfaultfd.h > > > base-commit: 98560e9019851bf55b8a4073978a623a3bcf98c0 -- BR, Muhammad Usama Anjum