diff mbox

kmod: add dependencies for test module

Message ID 20170630154834.3689272-1-arnd@arndb.de
State New
Headers show

Commit Message

Arnd Bergmann June 30, 2017, 3:47 p.m. UTC
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 <arnd@arndb.de>

---
 lib/Kconfig.debug | 2 ++
 1 file changed, 2 insertions(+)

-- 
2.9.0

Comments

Luis Chamberlain June 30, 2017, 10:54 p.m. UTC | #1
On Fri, Jun 30, 2017 at 05:47:44PM +0200, Arnd Bergmann wrote:
> 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 <arnd@arndb.de>


Acked-by: Luis R. Rodriguez <mcgrof@kernel.org>


  Luis
diff mbox

Patch

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