Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: > > switch (protonum) { > > +#if IS_ENABLED(CONFIG_IPV6) > > case IPPROTO_ICMPV6: > > return icmpv6_pkt_to_tuple(skb, dataoff, net, tuple); > > +#endif > > So the question in my mind is what happens when conntrack is built in > to the kernel but IPv6 is built as a module? Should work, there is no dependency on ipv6.ko. The missing functions are implemented in proto_icmpv6.c and net/netfilter/Makefile has: nf_conntrack-$(subst m,y,$(CONFIG_IPV6)) += nf_conntrack_proto_icmpv6.o