2018-02-26 09:43:19

by Arnd Bergmann

[permalink] [raw]
Subject: [PATCH] [net-next] ipvlan: fix building with modular IPV6

We no longer depend on IPV6, but that now causes a link error with
CONFIG_IPV6=m and CONFIG_IPVLAN=y:

drivers/net/ipvlan/ipvlan_core.o: In function `ipvlan_queue_xmit':
ipvlan_core.c:(.text+0x1440): undefined reference to `ip6_route_output_flags'
drivers/net/ipvlan/ipvlan_core.o: In function `ipvlan_l3_rcv':
ipvlan_core.c:(.text+0x1818): undefined reference to `ip6_route_input_lookup'

This adds back the dependency on IPV6, with the option of building without
IPV6, but forcing IPVLAN to be a module when IPV6 is a module.

Fixes: 94333fac44d1 ("ipvlan: drop ipv6 dependency")
Signed-off-by: Arnd Bergmann <[email protected]>
---
drivers/net/Kconfig | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
index d88b78a17440..08b85215c2be 100644
--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -149,6 +149,7 @@ config MACVTAP
config IPVLAN
tristate "IP-VLAN support"
depends on INET
+ depends on IPV6 || !IPV6
depends on NETFILTER
select NET_L3_MASTER_DEV
---help---
--
2.9.0



2018-02-26 10:16:57

by Matteo Croce

[permalink] [raw]
Subject: Re: [PATCH] [net-next] ipvlan: fix building with modular IPV6

On Mon, Feb 26, 2018 at 10:41 AM, Arnd Bergmann <[email protected]> wrote:
> We no longer depend on IPV6, but that now causes a link error with
> CONFIG_IPV6=m and CONFIG_IPVLAN=y:
>
> drivers/net/ipvlan/ipvlan_core.o: In function `ipvlan_queue_xmit':
> ipvlan_core.c:(.text+0x1440): undefined reference to `ip6_route_output_flags'
> drivers/net/ipvlan/ipvlan_core.o: In function `ipvlan_l3_rcv':
> ipvlan_core.c:(.text+0x1818): undefined reference to `ip6_route_input_lookup'
>
> This adds back the dependency on IPV6, with the option of building without
> IPV6, but forcing IPVLAN to be a module when IPV6 is a module.
>
> Fixes: 94333fac44d1 ("ipvlan: drop ipv6 dependency")
> Signed-off-by: Arnd Bergmann <[email protected]>
> ---
> drivers/net/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
> index d88b78a17440..08b85215c2be 100644
> --- a/drivers/net/Kconfig
> +++ b/drivers/net/Kconfig
> @@ -149,6 +149,7 @@ config MACVTAP
> config IPVLAN
> tristate "IP-VLAN support"
> depends on INET
> + depends on IPV6 || !IPV6
> depends on NETFILTER
> select NET_L3_MASTER_DEV
> ---help---
> --
> 2.9.0
>

Sorry for that, the fix look very reasonable to me.

Thanks,
--
Matteo Croce
per aspera ad upstream

2018-02-27 15:38:38

by David Miller

[permalink] [raw]
Subject: Re: [PATCH] [net-next] ipvlan: fix building with modular IPV6

From: Arnd Bergmann <[email protected]>
Date: Mon, 26 Feb 2018 10:41:30 +0100

> We no longer depend on IPV6, but that now causes a link error with
> CONFIG_IPV6=m and CONFIG_IPVLAN=y:
>
> drivers/net/ipvlan/ipvlan_core.o: In function `ipvlan_queue_xmit':
> ipvlan_core.c:(.text+0x1440): undefined reference to `ip6_route_output_flags'
> drivers/net/ipvlan/ipvlan_core.o: In function `ipvlan_l3_rcv':
> ipvlan_core.c:(.text+0x1818): undefined reference to `ip6_route_input_lookup'
>
> This adds back the dependency on IPV6, with the option of building without
> IPV6, but forcing IPVLAN to be a module when IPV6 is a module.
>
> Fixes: 94333fac44d1 ("ipvlan: drop ipv6 dependency")
> Signed-off-by: Arnd Bergmann <[email protected]>

Applied, thank you.