Re: 2.6.24-rc5-mm1

Borislav Petkov
2007-12-13T16:09:35Z

On Thu, Dec 13, 2007 at 04:01:34PM +0100, Benjamin Thery wrote:
> The problem comes from the new macro UDPX_INC_STATS_BH introduced
> by Herbert, which was a nice addition to increment the correct
> UDP MIB depending on the socket family, but unfortunately
> the use of this macro from kernel code (I mean code not compiled
> as module) requires that IPv6 is also compiled in kernel
> (CONFIG_IPv6=y) in order to have udp_stats_in6 defined at link
> time.
>
> Benjamin
>
> Pierre Peiffer wrote:
> > Hi,
> >
> > My config does not link any more:
> >
> > ...
> > CHK include/linux/compile.h
> > UPD include/linux/compile.h
> > CC init/version.o
> > LD init/built-in.o
> > LD .tmp_vmlinux1
> > net/built-in.o: In function `xs_udp_data_ready':
> > /home/peifferp/containers/kernel/linux-2.6.24-rc5-mm1/net/sunrpc/xprtsock.c:842:
> > undefined reference to `udp_stats_in6'
> > /home/peifferp/containers/kernel/linux-2.6.24-rc5-mm1/net/sunrpc/xprtsock.c:846:
> > undefined reference to `udp_stats_in6'
> > make[1]: *** [.tmp_vmlinux1] Error 1
> > make: *** [sub-make] Error 2
> >
> > After a first look, udp_stats_in6 seems to be defined in ipv6 (file
> > net/ipv6/udp.c) but I have
> >
> > CONFIG_IPV6=m
> > and
> > CONFIG_SUNRPC=y
> >
> > So, SUNRPC uses something defined in a module in my case ?
> >
> > ... looking more, this dependency seems to have been introduced by the patch
> > [UDP]: Restore missing inDatagrams increments
> > ( http://thread.gmane.org/gmane.linux.network/79716/focus=79831 )
> >
> > (I cc netdev)
> >
> > I don't know what is the right way to fix this ... ?

you might do "select IPV6" in the SUNRPC section of fs/Kconfig, however select is
evil...

--
Regards/Gruß,
Boris.