LVS
lvs-devel
Google
 
Web LinuxVirtualServer.org

Re: linux-next: Tree for Oct 1 (ipvs)

To: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
Subject: Re: linux-next: Tree for Oct 1 (ipvs)
Cc: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>, linux-next@xxxxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx, "netdev@xxxxxxxxxxxxxxx" <netdev@xxxxxxxxxxxxxxx>, lvs-devel@xxxxxxxxxxxxxxx
From: Simon Horman <horms@xxxxxxxxxxxx>
Date: Fri, 2 Oct 2015 09:45:49 +0900
Hi Randy,

On Thu, Oct 01, 2015 at 10:26:14AM -0700, Randy Dunlap wrote:
> On 09/30/15 23:50, Stephen Rothwell wrote:
> > Hi all,
> > 
> > Changes since 20150930:
> > 
> 
> on x86_64:
> 
> ../net/netfilter/ipvs/ip_vs_core.c: In function 'ip_vs_leave':
> ../net/netfilter/ipvs/ip_vs_core.c:584:6: error: implicit declaration of 
> function 'ip_vs_addr_is_unicast' [-Werror=implicit-function-declaration]
>       ip_vs_addr_is_unicast(net, svc->af, &iph->daddr)) {
>       ^
> ../net/netfilter/ipvs/ip_vs_core.c: In function 'ip_vs_out':
> ../net/netfilter/ipvs/ip_vs_core.c:1177:14: warning: unused variable 'net' 
> [-Wunused-variable]
>   struct net *net = ipvs->net;

Thanks for reporting this problem.

I have the following patch queued up in the ipvs-next tree
and plan to send a pull request for it later today.

From: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
Subject: [PATCH] ipvs: Don't protect ip_vs_addr_is_unicast with CONFIG_SYSCTL

I arranged the code so that the compiler can remove the unecessary bits
in ip_vs_leave when CONFIG_SYSCTL is unset, and removed an explicit
CONFIG_SYSCTL.

Unfortunately when rebasing my work on top of that of Alex Gartrell I
missed the fact that the newly added function ip_vs_addr_is_unicast was
surrounded by CONFIG_SYSCTL.

So remove the now unnecessary CONFIG_SYSCTL guards around
ip_vs_addr_is_unicast.  It is causing build failures today when
CONFIG_SYSCTL is not selected and any self respecting compiler will
notice that sysctl_cache_bypass is always false without CONFIG_SYSCTL
and not include the logic from the function ip_vs_addr_is_unicast in
the compiled code.

Signed-off-by: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
Acked-by: Julian Anastasov <ja@xxxxxx>
Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>
---
 net/netfilter/ipvs/ip_vs_core.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/net/netfilter/ipvs/ip_vs_core.c b/net/netfilter/ipvs/ip_vs_core.c
index 37dd77a3d0fb..d08df435c2aa 100644
--- a/net/netfilter/ipvs/ip_vs_core.c
+++ b/net/netfilter/ipvs/ip_vs_core.c
@@ -547,7 +547,6 @@ ip_vs_schedule(struct ip_vs_service *svc, struct sk_buff 
*skb,
        return cp;
 }
 
-#ifdef CONFIG_SYSCTL
 static inline int ip_vs_addr_is_unicast(struct net *net, int af,
                                        union nf_inet_addr *addr)
 {
@@ -557,7 +556,6 @@ static inline int ip_vs_addr_is_unicast(struct net *net, 
int af,
 #endif
        return (inet_addr_type(net, addr->ip) == RTN_UNICAST);
 }
-#endif
 
 /*
  *  Pass or drop the packet.
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe lvs-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

<Prev in Thread] Current Thread [Next in Thread>