2019-08-19 12:15:36

by Yue Haibing

[permalink] [raw]
Subject: [PATCH net-next] netdevsim: Fix build error without CONFIG_INET

If CONFIG_INET is not set, building fails:

drivers/net/netdevsim/dev.o: In function `nsim_dev_trap_report_work':
dev.c:(.text+0x67b): undefined reference to `ip_send_check'

Add CONFIG_INET Kconfig dependency to fix this.

Reported-by: Hulk Robot <[email protected]>
Fixes: da58f90f11f5 ("netdevsim: Add devlink-trap support")
Signed-off-by: YueHaibing <[email protected]>
---
drivers/net/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
index 48e209e..7bb786e 100644
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -505,7 +505,7 @@ source "drivers/net/hyperv/Kconfig"

config NETDEVSIM
tristate "Simulated networking device"
- depends on DEBUG_FS
+ depends on INET && DEBUG_FS
select NET_DEVLINK
help
This driver is a developer testing tool and software model that can
--
2.7.4



2019-08-19 15:59:28

by Ido Schimmel

[permalink] [raw]
Subject: Re: [PATCH net-next] netdevsim: Fix build error without CONFIG_INET

On Mon, Aug 19, 2019 at 08:08:25PM +0800, YueHaibing wrote:
> If CONFIG_INET is not set, building fails:
>
> drivers/net/netdevsim/dev.o: In function `nsim_dev_trap_report_work':
> dev.c:(.text+0x67b): undefined reference to `ip_send_check'
>
> Add CONFIG_INET Kconfig dependency to fix this.
>
> Reported-by: Hulk Robot <[email protected]>
> Fixes: da58f90f11f5 ("netdevsim: Add devlink-trap support")
> Signed-off-by: YueHaibing <[email protected]>

Reviewed-by: Ido Schimmel <[email protected]>

Thanks for the patch.

> ---
> drivers/net/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
> index 48e209e..7bb786e 100644
> --- a/drivers/net/Kconfig
> +++ b/drivers/net/Kconfig
> @@ -505,7 +505,7 @@ source "drivers/net/hyperv/Kconfig"
>
> config NETDEVSIM
> tristate "Simulated networking device"
> - depends on DEBUG_FS
> + depends on INET && DEBUG_FS
> select NET_DEVLINK
> help
> This driver is a developer testing tool and software model that can
> --
> 2.7.4
>
>

2019-08-19 22:02:17

by Jakub Kicinski

[permalink] [raw]
Subject: Re: [PATCH net-next] netdevsim: Fix build error without CONFIG_INET

On Mon, 19 Aug 2019 20:08:25 +0800, YueHaibing wrote:
> If CONFIG_INET is not set, building fails:
>
> drivers/net/netdevsim/dev.o: In function `nsim_dev_trap_report_work':
> dev.c:(.text+0x67b): undefined reference to `ip_send_check'
>
> Add CONFIG_INET Kconfig dependency to fix this.
>
> Reported-by: Hulk Robot <[email protected]>
> Fixes: da58f90f11f5 ("netdevsim: Add devlink-trap support")
> Signed-off-by: YueHaibing <[email protected]>

Hmm.. I'd rather the test module did not have hard dependencies on
marginally important config options. We have done a pretty good job
so far limiting the requirements though separating the code out at
compilation object level. The more tests depend on netdevsim and the
more bots we have running tests against randconfig - the more important
this is.

This missing reference here is for calculating a checksum over a
constant header.. could we perhaps just hard code the checksum?

2019-08-20 14:10:24

by Ido Schimmel

[permalink] [raw]
Subject: Re: [PATCH net-next] netdevsim: Fix build error without CONFIG_INET

On Mon, Aug 19, 2019 at 02:59:00PM -0700, Jakub Kicinski wrote:
> On Mon, 19 Aug 2019 20:08:25 +0800, YueHaibing wrote:
> > If CONFIG_INET is not set, building fails:
> >
> > drivers/net/netdevsim/dev.o: In function `nsim_dev_trap_report_work':
> > dev.c:(.text+0x67b): undefined reference to `ip_send_check'
> >
> > Add CONFIG_INET Kconfig dependency to fix this.
> >
> > Reported-by: Hulk Robot <[email protected]>
> > Fixes: da58f90f11f5 ("netdevsim: Add devlink-trap support")
> > Signed-off-by: YueHaibing <[email protected]>
>
> Hmm.. I'd rather the test module did not have hard dependencies on
> marginally important config options. We have done a pretty good job
> so far limiting the requirements though separating the code out at
> compilation object level. The more tests depend on netdevsim and the
> more bots we have running tests against randconfig - the more important
> this is.
>
> This missing reference here is for calculating a checksum over a
> constant header.. could we perhaps just hard code the checksum?

Sure. I was AFK today, will send a patch later today when I get home.

Thanks

2019-08-20 14:18:06

by Yue Haibing

[permalink] [raw]
Subject: [PATCH v2 net-next] netdevsim: Fix build error without CONFIG_INET

If CONFIG_INET is not set, building fails:

drivers/net/netdevsim/dev.o: In function `nsim_dev_trap_report_work':
dev.c:(.text+0x67b): undefined reference to `ip_send_check'

Use ip_fast_csum instead of ip_send_check to avoid
dependencies on CONFIG_INET.

Reported-by: Hulk Robot <[email protected]>
Fixes: da58f90f11f5 ("netdevsim: Add devlink-trap support")
Signed-off-by: YueHaibing <[email protected]>
---
v2: use ip_fast_csum instead of ip_send_check
---
drivers/net/netdevsim/dev.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/netdevsim/dev.c b/drivers/net/netdevsim/dev.c
index c5b0261..39cdb6c 100644
--- a/drivers/net/netdevsim/dev.c
+++ b/drivers/net/netdevsim/dev.c
@@ -389,7 +389,8 @@ static struct sk_buff *nsim_dev_trap_skb_build(void)
iph->ihl = 0x5;
iph->tot_len = htons(tot_len);
iph->ttl = 100;
- ip_send_check(iph);
+ iph->check = 0;
+ iph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);

udph = skb_put_zero(skb, sizeof(struct udphdr) + data_len);
get_random_bytes(&udph->source, sizeof(u16));
--
2.7.4


2019-08-20 17:52:19

by Jakub Kicinski

[permalink] [raw]
Subject: Re: [PATCH v2 net-next] netdevsim: Fix build error without CONFIG_INET

On Tue, 20 Aug 2019 22:14:46 +0800, YueHaibing wrote:
> If CONFIG_INET is not set, building fails:
>
> drivers/net/netdevsim/dev.o: In function `nsim_dev_trap_report_work':
> dev.c:(.text+0x67b): undefined reference to `ip_send_check'
>
> Use ip_fast_csum instead of ip_send_check to avoid
> dependencies on CONFIG_INET.
>
> Reported-by: Hulk Robot <[email protected]>
> Fixes: da58f90f11f5 ("netdevsim: Add devlink-trap support")
> Signed-off-by: YueHaibing <[email protected]>

Thank you!

Acked-by: Jakub Kicinski <[email protected]>

2019-08-20 18:12:18

by Ido Schimmel

[permalink] [raw]
Subject: Re: [PATCH v2 net-next] netdevsim: Fix build error without CONFIG_INET

On Tue, Aug 20, 2019 at 10:14:46PM +0800, YueHaibing wrote:
> If CONFIG_INET is not set, building fails:
>
> drivers/net/netdevsim/dev.o: In function `nsim_dev_trap_report_work':
> dev.c:(.text+0x67b): undefined reference to `ip_send_check'
>
> Use ip_fast_csum instead of ip_send_check to avoid
> dependencies on CONFIG_INET.
>
> Reported-by: Hulk Robot <[email protected]>
> Fixes: da58f90f11f5 ("netdevsim: Add devlink-trap support")
> Signed-off-by: YueHaibing <[email protected]>

Reviewed-by: Ido Schimmel <[email protected]>
Tested-by: Ido Schimmel <[email protected]>

Thanks for fixing this in my stead!

2019-08-20 20:48:39

by David Miller

[permalink] [raw]
Subject: Re: [PATCH v2 net-next] netdevsim: Fix build error without CONFIG_INET

From: YueHaibing <[email protected]>
Date: Tue, 20 Aug 2019 22:14:46 +0800

> If CONFIG_INET is not set, building fails:
>
> drivers/net/netdevsim/dev.o: In function `nsim_dev_trap_report_work':
> dev.c:(.text+0x67b): undefined reference to `ip_send_check'
>
> Use ip_fast_csum instead of ip_send_check to avoid
> dependencies on CONFIG_INET.
>
> Reported-by: Hulk Robot <[email protected]>
> Fixes: da58f90f11f5 ("netdevsim: Add devlink-trap support")
> Signed-off-by: YueHaibing <[email protected]>
> ---
> v2: use ip_fast_csum instead of ip_send_check

Applied, thank you.