On Fri 2022-06-10 09:06:16, Joe Lawrence wrote: > On 6/9/22 4:16 PM, Shuah Khan wrote: > > On 6/3/22 8:32 AM, Marcos Paulo de Souza wrote: > >> Hi there, > >> > >> The first patch moves the current livepatch tests to selftests, > >> allowing it > >> be better suited to contain more complex tests, like using userspace C > >> code > >> to use the livepatched kernel code. As a bonus it allows to use > >> "gen_tar" to export the livepatch selftests, rebuild the modules by > >> running make in selftests/livepatch directory and simplifies the process > >> of creating and debugging new selftests. > >> > > > > In general selftests don't include modules. We keep test modules under lib. > > One of the reasons is that modules have dependencies on the kernel and > > should > > be built when kernel is built. > > > > I don't fully buy the argument that moving modules under selftest would > > simplify > > the process. > > > > Hi Shuah, > > I see that there is tools/testing/selftests/bpf/bpf_testmod/ which > claims to be a "conceptually out-of-tree module". Would similarly > moving livepatch test modules under tools/ give us flexibility to write > them build for multiple kernel versions? Then one could theoretically > build and run the latest, greatest selftests against older kernels > (assuming the associate script/module/kernel supports the idea)? +1 Another motivation is that the new selftest also needs an executable binary. It would be nice to handle both modules and binaries the same way. Honestly, lib/* is a mess. It mixes real functionality and test modules. The relation between the modules and tools/testing/* is far from clear. IMHO, it would be more clean to have the related stuff together. Of course, we could not move all test modules from lib/* easily. Some of them might be used on its own or even as built-in tests. But preventing the move looks like a step in the wrong direction to me. Best Regards, Petr