When we try to 'select' drivers whose dependencies are not met, we get a kconfig warning and undefined behavior as further 'select' statements in those drivers can not be honored:
warning: (TEST_KMOD) selects TUN which has unmet direct dependencies (NETDEVICES && NET_CORE && INET) warning: (TEST_KMOD) selects XFS_FS which has unmet direct dependencies (BLOCK && (64BIT || LBDAF)) ERROR: "iomap_zero_range" [fs/xfs/xfs.ko] undefined! ERROR: "iomap_fiemap" [fs/xfs/xfs.ko] undefined! ERROR: "iomap_page_mkwrite" [fs/xfs/xfs.ko] undefined! To work around that, this adds the dependencies required by the 'tun', 'xfs' and 'btrfs' modules for CONFIG_TEST_KMOD, guaranteeing that we can always enable those, and fixing the 'randconfig' issues. Unfortunately, there is another problem that I have not found a good solution for: If any of the three drivers are built-in rather than loadable modules, then the module load test will later fail at runtime. Fixes: ec159fed8677 ("kmod: add test driver to stress test the module loader") Signed-off-by: Arnd Bergmann <a...@arndb.de> --- lib/Kconfig.debug | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 411cddd713c0..0f7ba738ef7a 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug @@ -1883,6 +1883,8 @@ config TEST_KMOD tristate "kmod stress tester" default n depends on m + depends on BLOCK && (64BIT || LBDAF) # for XFS, BTRFS + depends on NETDEVICES && NET_CORE && INET # for TUN select TEST_LKM select XFS_FS select TUN -- 2.9.0