Skip to contentSkip to conversation

kmod: add dependencies for test module

PATCH In review Arnd Bergmann 2 participants 2 messages Jun 30, 2017 Library code

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 kmod: add dependencies for test module

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")
---
 lib/Kconfig.debug | 2 ++
 1 file changed, 2 insertions(+)
lib/Kconfig.debug +2 -0
index 411cddd713c0..0f7ba738ef7a 100644
@@ -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
Signature · 1 line
2.9.0
Acked-by on v1 1/1
#1 lore raw
Quoted 14 lines · Arnd Bergmann

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.

Quoted 7 lines

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")

Luis