On Thu, Nov 20, 2025 at 07:31:10PM +0100, Geert Uytterhoeven wrote: > Hi Jason, > > CC kunit > > On Thu, 20 Nov 2025 at 18:07, Jason Gunthorpe <[email protected]> wrote: > > On Thu, Nov 20, 2025 at 12:49:33PM -0400, Jason Gunthorpe wrote: > > > On Wed, Nov 12, 2025 at 03:08:05PM +0100, Geert Uytterhoeven wrote: > > > > There is no point in asking the user about the Generic Radix Page > > > > Table API: > > > > - All IOMMU drivers that use this API already select GENERIC_PT when > > > > needed, > > > > - Most users probably do not know what to answer anyway. > > > > > > > > Fixes: 7c5b184db7145fd4 ("genpt: Generic Page Table base API") > > > > Signed-off-by: Geert Uytterhoeven <[email protected]> > > > > --- > > > > drivers/iommu/generic_pt/Kconfig | 2 +- > > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > Reviewed-by: Jason Gunthorpe <[email protected]> > > > > Actually, it doesn't work :\ > > > > $ tools/testing/kunit/kunit.py run --build_dir build_kunit_x86_64 --arch > > x86_64 --kunitconfig ./drivers/iommu/generic_pt/.kunitconfig > > [13:01:26] Configuring KUnit Kernel ... > > [13:01:26] Building KUnit Kernel ... > > Populating config with: > > $ make ARCH=x86_64 O=build_kunit_x86_64 olddefconfig > > Building with: > > $ make all compile_commands.json scripts_gdb ARCH=x86_64 > > O=build_kunit_x86_64 --jobs=20 > > ERROR:root:Not all Kconfig options selected in kunitconfig were in the > > generated .config. > > This is probably due to unsatisfied dependencies. > > Missing: CONFIG_IOMMUFD_TEST=y, CONFIG_DEBUG_GENERIC_PT=y, > > CONFIG_IOMMU_PT_VTDSS=y, CONFIG_IOMMU_PT=y, CONFIG_IOMMU_PT_AMDV1=y, > > CONFIG_IOMMU_PT_X86_64=y, CONFIG_GENERIC_PT=y, CONFIG_IOMMU_PT_KUNIT_TEST=y > > > > Can you add this hunk and send a v2? > > > > --- a/drivers/iommu/generic_pt/.kunitconfig > > +++ b/drivers/iommu/generic_pt/.kunitconfig > > @@ -1,4 +1,5 @@ > > CONFIG_KUNIT=y > > +CONFIG_COMPILE_TEST=y > > CONFIG_GENERIC_PT=y > > CONFIG_DEBUG_GENERIC_PT=y > > CONFIG_IOMMU_PT=y > > Do you really want to enable CONFIG_COMPILE_TEST in a .kunitconfig?
IDK, why not? > Hm, that .kunitconfig already enables IOMMUFD_TEST, which is > documented to be dangerous (why?) It builds in a kernel module with a uapi that is kind of unsafe. Though, hmm, maybe that is some weird a leftover I don't recall that this kunit needed IOMMUFD_TEST stanza at all.. > and already enabled by allyesconfig (except on GENERIC_ATOMIC64 > architectures). I guess allyesconfig would do that. > IOMMUFD_TEST cannot select GENERIC_PT, as that would lead to a > recursive dependency (and I am not a huge fan of test code > auto-enabling extra attack surfaces^W^W functionality). Yes > Or perhaps: > > - bool "Generic Radix Page Table" > + bool "Generic Radix Page Table" if COMPILE_TEST || KUNIT > > ? It would work, that does seem like a better choice if someone wants to make the kunit run in a normal disto kernel. Thanks, Jason

