net: selftest: fix build issue if INET is disabled

In case ethernet driver is enabled and INET is disabled, selftest will
fail to build.

Reported-by: Randy Dunlap <rdunlap@infradead.org>
Fixes: 3e1e58d64c ("net: add generic selftest support")
Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Acked-by: Randy Dunlap <rdunlap@infradead.org> # build-tested
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Link: https://lore.kernel.org/r/20210428130947.29649-1-o.rempel@pengutronix.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Oleksij Rempel 2021-04-28 15:09:46 +02:00 committed by Jakub Kicinski
parent 15c0a64bfc
commit 4a52dd8fef
6 changed files with 24 additions and 5 deletions

View File

@ -20,8 +20,8 @@ if NET_VENDOR_ATHEROS
config AG71XX config AG71XX
tristate "Atheros AR7XXX/AR9XXX built-in ethernet mac support" tristate "Atheros AR7XXX/AR9XXX built-in ethernet mac support"
depends on ATH79 depends on ATH79
select NET_SELFTESTS
select PHYLINK select PHYLINK
imply NET_SELFTESTS
help help
If you wish to compile a kernel for AR7XXX/91XXX and enable If you wish to compile a kernel for AR7XXX/91XXX and enable
ethernet support, then you should always answer Y to this. ethernet support, then you should always answer Y to this.

View File

@ -26,8 +26,8 @@ config FEC
ARCH_MXC || SOC_IMX28 || COMPILE_TEST) ARCH_MXC || SOC_IMX28 || COMPILE_TEST)
default ARCH_MXC || SOC_IMX28 if ARM default ARCH_MXC || SOC_IMX28 if ARM
select CRC32 select CRC32
select NET_SELFTESTS
select PHYLIB select PHYLIB
imply NET_SELFTESTS
imply PTP_1588_CLOCK imply PTP_1588_CLOCK
help help
Say Y here if you want to use the built-in 10/100 Fast ethernet Say Y here if you want to use the built-in 10/100 Fast ethernet

View File

@ -4,9 +4,28 @@
#include <linux/ethtool.h> #include <linux/ethtool.h>
#if IS_ENABLED(CONFIG_NET_SELFTESTS)
void net_selftest(struct net_device *ndev, struct ethtool_test *etest, void net_selftest(struct net_device *ndev, struct ethtool_test *etest,
u64 *buf); u64 *buf);
int net_selftest_get_count(void); int net_selftest_get_count(void);
void net_selftest_get_strings(u8 *data); void net_selftest_get_strings(u8 *data);
#else
static inline void net_selftest(struct net_device *ndev, struct ethtool_test *etest,
u64 *buf)
{
}
static inline int net_selftest_get_count(void)
{
return 0;
}
static inline void net_selftest_get_strings(u8 *data)
{
}
#endif
#endif /* _NET_SELFTESTS */ #endif /* _NET_SELFTESTS */

View File

@ -431,7 +431,7 @@ config SOCK_VALIDATE_XMIT
config NET_SELFTESTS config NET_SELFTESTS
def_tristate PHYLIB def_tristate PHYLIB
depends on PHYLIB depends on PHYLIB && INET
config NET_SOCK_MSG config NET_SOCK_MSG
bool bool

View File

@ -21,6 +21,7 @@ obj-$(CONFIG_NETPOLL) += netpoll.o
obj-$(CONFIG_FIB_RULES) += fib_rules.o obj-$(CONFIG_FIB_RULES) += fib_rules.o
obj-$(CONFIG_TRACEPOINTS) += net-traces.o obj-$(CONFIG_TRACEPOINTS) += net-traces.o
obj-$(CONFIG_NET_DROP_MONITOR) += drop_monitor.o obj-$(CONFIG_NET_DROP_MONITOR) += drop_monitor.o
obj-$(CONFIG_NET_SELFTESTS) += selftests.o
obj-$(CONFIG_NETWORK_PHY_TIMESTAMPING) += timestamping.o obj-$(CONFIG_NETWORK_PHY_TIMESTAMPING) += timestamping.o
obj-$(CONFIG_NET_PTP_CLASSIFY) += ptp_classifier.o obj-$(CONFIG_NET_PTP_CLASSIFY) += ptp_classifier.o
obj-$(CONFIG_CGROUP_NET_PRIO) += netprio_cgroup.o obj-$(CONFIG_CGROUP_NET_PRIO) += netprio_cgroup.o
@ -33,7 +34,6 @@ obj-$(CONFIG_NET_DEVLINK) += devlink.o
obj-$(CONFIG_GRO_CELLS) += gro_cells.o obj-$(CONFIG_GRO_CELLS) += gro_cells.o
obj-$(CONFIG_FAILOVER) += failover.o obj-$(CONFIG_FAILOVER) += failover.o
ifeq ($(CONFIG_INET),y) ifeq ($(CONFIG_INET),y)
obj-$(CONFIG_NET_SELFTESTS) += selftests.o
obj-$(CONFIG_NET_SOCK_MSG) += skmsg.o obj-$(CONFIG_NET_SOCK_MSG) += skmsg.o
obj-$(CONFIG_BPF_SYSCALL) += sock_map.o obj-$(CONFIG_BPF_SYSCALL) += sock_map.o
endif endif

View File

@ -9,7 +9,7 @@ menuconfig NET_DSA
select NET_SWITCHDEV select NET_SWITCHDEV
select PHYLINK select PHYLINK
select NET_DEVLINK select NET_DEVLINK
select NET_SELFTESTS imply NET_SELFTESTS
help help
Say Y if you want to enable support for the hardware switches supported Say Y if you want to enable support for the hardware switches supported
by the Distributed Switch Architecture. by the Distributed Switch Architecture.