Re: [PATCH] inet: Initialize per-netns inetpeer roots in net/ipv{4,6}/route.c
From: Fengguang Wu <hidden>
Date: 2012-06-10 01:58:39
On Sat, Jun 09, 2012 at 04:32:02PM -0700, David Miller wrote:
Instead of net/ipv4/inetpeer.c Signed-off-by: David S. Miller <davem@davemloft.net> --- include/net/inetpeer.h | 9 +++++++ net/ipv4/inetpeer.c | 64 ++++++++++++------------------------------------ net/ipv4/route.c | 25 +++++++++++++++++++ net/ipv6/route.c | 34 ++++++++++++++++++++++++- 4 files changed, 83 insertions(+), 49 deletions(-)
Dave, It triggers some warnings: WARNING: net/ipv6/ipv6.o(.text+0x1049c): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops WARNING: net/ipv6/ipv6.o(.text+0x1049c): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops WARNING: net/ipv6/built-in.o(.text+0x1049c): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops WARNING: net/ipv6/built-in.o(.text+0x1049c): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops WARNING: net/built-in.o(.text+0x92658): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops WARNING: net/built-in.o(.text+0x92658): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops WARNING: vmlinux.o(.text+0x710988): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops WARNING: vmlinux.o(.text+0x710988): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops WARNING: net/ipv6/ipv6.o(.text+0x1049c): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops The function ip6_route_cleanup() references the variable __initdata ipv6_inetpeer_ops. This is often because ip6_route_cleanup lacks a __initdata annotation or the annotation of ipv6_inetpeer_ops is wrong. WARNING: net/ipv6/ipv6.o(.text+0x1049c): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops The function ip6_route_cleanup() references the variable __initdata ipv6_inetpeer_ops. This is often because ip6_route_cleanup lacks a __initdata annotation or the annotation of ipv6_inetpeer_ops is wrong. WARNING: net/ipv6/built-in.o(.text+0x1049c): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops The function ip6_route_cleanup() references the variable __initdata ipv6_inetpeer_ops. This is often because ip6_route_cleanup lacks a __initdata annotation or the annotation of ipv6_inetpeer_ops is wrong. WARNING: net/ipv6/built-in.o(.text+0x1049c): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops The function ip6_route_cleanup() references the variable __initdata ipv6_inetpeer_ops. This is often because ip6_route_cleanup lacks a __initdata annotation or the annotation of ipv6_inetpeer_ops is wrong. WARNING: net/built-in.o(.text+0x92658): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops The function ip6_route_cleanup() references the variable __initdata ipv6_inetpeer_ops. This is often because ip6_route_cleanup lacks a __initdata annotation or the annotation of ipv6_inetpeer_ops is wrong. WARNING: net/built-in.o(.text+0x92658): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops The function ip6_route_cleanup() references the variable __initdata ipv6_inetpeer_ops. This is often because ip6_route_cleanup lacks a __initdata annotation or the annotation of ipv6_inetpeer_ops is wrong. WARNING: vmlinux.o(.text+0x710988): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops The function ip6_route_cleanup() references the variable __initdata ipv6_inetpeer_ops. This is often because ip6_route_cleanup lacks a __initdata annotation or the annotation of ipv6_inetpeer_ops is wrong. WARNING: vmlinux.o(.text+0x710988): Section mismatch in reference from the function ip6_route_cleanup() to the variable .init.data:ipv6_inetpeer_ops The function ip6_route_cleanup() references the variable __initdata ipv6_inetpeer_ops. This is often because ip6_route_cleanup lacks a __initdata annotation or the annotation of ipv6_inetpeer_ops is wrong. Thanks, Fengguang