From: David Miller <da...@davemloft.net>
Date: Sun, 13 Nov 2016 00:20:55 -0500 (EST)

> From: David Lebrun <david.leb...@uclouvain.be>
> Date: Thu, 10 Nov 2016 13:26:53 +0100
> 
>> v2: fix conditional compilation for seg6_iptunnel.o in Makefile
>> 
>> This patch compiles SR lwtunnels support only if CONFIG_LWTUNNEL=y.
>> 
>> If IPv6 is enabled and CONFIG_LWTUNNEL=n, then seg6_iptunnel_init()
>> fails with EOPNOTSUPP which in turn makes seg6_init() fail, blocking
>> the IPv6 initialization, with the following messages:
>> 
>> NET: Registered protocol family 10
>> IPv6: Attempt to unregister permanent protocol 6
>> IPv6: Attempt to unregister permanent protocol 136
>> IPv6: Attempt to unregister permanent protocol 17
>> NET: Unregistered protocol family 10
>> 
>> Fix commit 6c8702c60b88 ("ipv6: sr: add support for SRH encapsulation and 
>> injection with lwtunnels")
>> 
>> Tested with various combinations of CONFIG_IPV6 and CONFIG_LWTUNNEL.
>> 
>> Reported-by: Lorenzo Colitti <lore...@google.com>
>> Signed-off-by: David Lebrun <david.leb...@uclouvain.be>
> 
> Applied, thanks David.

Actually reverted, after just doing an "make oldconfig" on an
"make allmodconfig" tree after applying this patch the build
fails to link:

[davem@localhost net-next]$ make -s -j8
  DESCEND  objtool
net/built-in.o: In function `seg6_build_state':
seg6_iptunnel.c:(.text+0x1b7fbe): undefined reference to `seg6_validate_srh'
net/built-in.o: In function `seg6_do_srh':
seg6_iptunnel.c:(.text+0x1b8ad2): undefined reference to `ipv6_dev_get_saddr'
net/built-in.o: In function `seg6_input':
(.text+0x1b8eeb): undefined reference to `ip6_route_input'
net/built-in.o: In function `seg6_output':
(.text+0x1b9151): undefined reference to `ip6_route_output_flags'
Makefile:959: recipe for target 'vmlinux' failed
make: *** [vmlinux] Error 1

This seems like such a huge mess, quite frankly.

IPV6-SR has so many strange dependencies, a weird Kconfig option that is
simply controlling what a responsible sysadmin should be allow to do if
he chooses anyways.

Every distribution is going to say "¯\_(ツ)_/¯" and just turn the thing
on in their builds.

Reply via email to