drivers/net/wireless/intel/iwlwifi/Kconfig | 1 + 1 file changed, 1 insertion(+)
From: Arnd Bergmann <arnd@arndb.de>
If the driver is built-in but the test is in a loadable module, the symbols
are not exported, resulting in a link failure:
ERROR: modpost: "iwl_get_cmd_string" [drivers/net/wireless/intel/iwlwifi/mld/tests/iwlmld-tests.ko] undefined!
ERROR: modpost: "__iwl_dbg" [drivers/net/wireless/intel/iwlwifi/mld/tests/iwlmld-tests.ko] undefined!
Enable CONFIG_IWLWIFI_OPMODE_MODULAR in this configuration, to
make those symbols visible.
Fixes: d1e879ec600f ("wifi: iwlwifi: add iwlmld sub-driver")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
drivers/net/wireless/intel/iwlwifi/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/wireless/intel/iwlwifi/Kconfig b/drivers/net/wireless/intel/iwlwifi/Kconfig
index 82f577da1a8b..153a8368b412 100644
--- a/drivers/net/wireless/intel/iwlwifi/Kconfig
+++ b/drivers/net/wireless/intel/iwlwifi/Kconfig
@@ -97,6 +97,7 @@ config IWLWIFI_OPMODE_MODULAR
default y if IWLDVM=m
default y if IWLMVM=m
default y if IWLMLD=m
+ default y if IWLWIFI_KUNIT_TESTS=m
comment "WARNING: iwlwifi is useless without IWLDVM or IWLMVM or IWLMLD"
depends on IWLDVM=n && IWLMVM=n && IWLMLD=n
--
2.39.5
On Fri, 2025-05-23 at 14:10 +0200, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
>
> If the driver is built-in but the test is in a loadable module, the symbols
> are not exported, resulting in a link failure:
>
> ERROR: modpost: "iwl_get_cmd_string" [drivers/net/wireless/intel/iwlwifi/mld/tests/iwlmld-tests.ko] undefined!
> ERROR: modpost: "__iwl_dbg" [drivers/net/wireless/intel/iwlwifi/mld/tests/iwlmld-tests.ko] undefined!
>
> Enable CONFIG_IWLWIFI_OPMODE_MODULAR in this configuration, to
> make those symbols visible.
Hah, thanks. We were just debating exactly this fix, but I think if
CONFIG_INET is _also_ turned off, we still have another link issue, so
what we have now is actually the below (maybe the Fixes: is wrong then
though)
commit 800fe085168e073910d8a0b758df0399d3c38323
Author: Benjamin Berg <benjamin.berg@intel.com>
Date: Mon May 12 14:04:33 2025 +0200
[BUGFIX] wifi: iwlwifi: ensure iwl_average_neg_dbm is available for kunit
The function was not compiled if CONFIG_INET was not enabled. Change it
to always be compiled in. Also update the IWLWIFI_OPMODE_MODULAR check
so that the symbol is exported even if only the kunit tests are build
as a module.
Change-Id: I02014d338de26768533cd07225780563393b4591
Signed-off-by: Benjamin Berg <benjamin.berg@intel.com>
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202505120905.ceWoI4rO-lkp@intel.com/
Fixes: 1f52f7f0abe2 ("wifi: iwlwifi: move dBm averaging function into utils")
Reviewed-by: Miriam Rachel Korenblit <miriam.rachel.korenblit@intel.com>
diff --git a/drivers/net/wireless/intel/iwlwifi/Kconfig b/drivers/net/wireless/intel/iwlwifi/Kconfig
index b2fb1dee59c0..e4a3fe2eaf57 100644
--- a/drivers/net/wireless/intel/iwlwifi/Kconfig
+++ b/drivers/net/wireless/intel/iwlwifi/Kconfig
@@ -105,6 +105,7 @@ config IWLWIFI_OPMODE_MODULAR
default y if IWLMVM=m
default y if IWLXVT=m
default y if IWLMLD=m
+ default y if IWLWIFI_KUNIT_TESTS=m
comment "WARNING: iwlwifi is useless without IWLDVM or IWLMVM or IWLMLD"
depends on IWLDVM=n && IWLMVM=n && IWLMLD=n
diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-utils.c b/drivers/net/wireless/intel/iwlwifi/iwl-utils.c
index 9edb8f512058..0049a8ca60f3 100644
--- a/drivers/net/wireless/intel/iwlwifi/iwl-utils.c
+++ b/drivers/net/wireless/intel/iwlwifi/iwl-utils.c
@@ -82,6 +82,7 @@ int iwl_tx_tso_segment(struct sk_buff *skb, unsigned int num_subframes,
return 0;
}
IWL_EXPORT_SYMBOL(iwl_tx_tso_segment);
+#endif /* CONFIG_INET */
static u32 iwl_div_by_db(u32 value, u8 db)
{
@@ -193,5 +194,3 @@ s8 iwl_average_neg_dbm(const u8 *neg_dbm_values, u8 len)
return clamp(average_magnitude - i, -128, 0);
}
IWL_EXPORT_SYMBOL(iwl_average_neg_dbm);
-
-#endif /* CONFIG_INET */
© 2016 - 2025 Red Hat, Inc.