Re: [PATCH 2/2 net v2] net: vxlan: fix nd_tbl NULL dereference when IPv6 is disabled

Sabrina Dubroca <[email protected]>
Newsgroups gmane.linux.network.bridge,gmane.linux.network
Message-ID <aaWiH5KBf-n1NxAR@krikkit>
2026-03-02, 15:08:47 +0100, Fernando Fernandez Mancera wrote:
> When booting with the 'ipv6.disable=1' parameter, the nd_tbl is never
> initialized because inet6_init() exits before ndisc_init() is called
> which initializes it. If an IPv6 packet is injected into the interface,
> route_shortcircuit() is called and a NULL pointer dereference happens on
> neigh_lookup().

VXLAN can be built-in even when IPv6 is built as a module, and then
ipv6_mod_enabled can't be used in VXLAN:

ld: drivers/net/vxlan/vxlan_core.o: in function `route_shortcircuit':
drivers/net/vxlan/vxlan_core.c:2133:(.text+0x116e0): undefined reference to `ipv6_mod_enabled'


GENEVE has a Kconfig tweak to prevent this since 094be0927ff3
("geneve: fix build with modular IPV6"):

    depends on IPV6 || !IPV6

but VXLAN doesn't.

But then I think we don't need to use ipv6_stub at all.

-- 
Sabrina
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.