From patchwork Wed Mar 21 08:56:24 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Simon Horman X-Patchwork-Id: 147933 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id B5AD2B6EEE for ; Wed, 21 Mar 2012 19:56:51 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755708Ab2CUI4l (ORCPT ); Wed, 21 Mar 2012 04:56:41 -0400 Received: from kirsty.vergenet.net ([202.4.237.240]:56368 "EHLO kirsty.vergenet.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756520Ab2CUI4d (ORCPT ); Wed, 21 Mar 2012 04:56:33 -0400 Received: from joe.kanocho.kobe.vergenet.net (joe.isobedori.kobe.vergenet.net [IPv6:2001:470:4832:303:1ec1:deff:fe98:754d]) by kirsty.vergenet.net (Postfix) with ESMTP id 39C0825BF6A; Wed, 21 Mar 2012 19:56:29 +1100 (EST) Received: by joe.kanocho.kobe.vergenet.net (Postfix, from userid 7100) id 632E628A04D; Wed, 21 Mar 2012 17:56:27 +0900 (JST) From: Simon Horman To: Pablo Neira Ayuso Cc: lvs-devel@vger.kernel.org, netdev@vger.kernel.org, netfilter-devel@vger.kernel.org, Wensong Zhang , Julian Anastasov , Simon Horman Subject: [PATCH 9/9] ipvs: Provide a generic ip_vs_bind_xmit() Date: Wed, 21 Mar 2012 17:56:24 +0900 Message-Id: <1332320185-27157-10-git-send-email-horms@verge.net.au> X-Mailer: git-send-email 1.7.6.3 In-Reply-To: <1332320185-27157-1-git-send-email-horms@verge.net.au> References: <1332320185-27157-1-git-send-email-horms@verge.net.au> Sender: netfilter-devel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netfilter-devel@vger.kernel.org This logic is now used twice so it seems worthwhile avoiding the albeit minor code duplication. Acked-by: Julian Anastasov Signed-off-by: Simon Horman --- net/netfilter/ipvs/ip_vs_conn.c | 26 +++++++++++++------------- 1 files changed, 13 insertions(+), 13 deletions(-) diff --git a/net/netfilter/ipvs/ip_vs_conn.c b/net/netfilter/ipvs/ip_vs_conn.c index 1eaec99..2fc9e4f 100644 --- a/net/netfilter/ipvs/ip_vs_conn.c +++ b/net/netfilter/ipvs/ip_vs_conn.c @@ -481,7 +481,7 @@ void ip_vs_conn_fill_cport(struct ip_vs_conn *cp, __be16 cport) * Bind a connection entry with the corresponding packet_xmit. * Called by ip_vs_conn_new. */ -static inline void ip_vs_bind_xmit(struct ip_vs_conn *cp) +static inline void ip_vs_bind_xmit_v4(struct ip_vs_conn *cp) { switch (IP_VS_FWD_METHOD(cp)) { case IP_VS_CONN_F_MASQ: @@ -533,6 +533,16 @@ static inline void ip_vs_bind_xmit_v6(struct ip_vs_conn *cp) } #endif +static inline void ip_vs_bind_xmit(struct ip_vs_conn *cp) +{ +#ifdef CONFIG_IP_VS_IPV6 + if (cp->af == AF_INET6) + ip_vs_bind_xmit_v6(cp); + else +#endif + ip_vs_bind_xmit_v4(cp); +} + static inline int ip_vs_dest_totalconns(struct ip_vs_dest *dest) { @@ -637,12 +647,7 @@ struct ip_vs_dest *ip_vs_try_bind_dest(struct ip_vs_conn *cp) /* Update its packet transmitter */ cp->packet_xmit = NULL; -#ifdef CONFIG_IP_VS_IPV6 - if (cp->af == AF_INET6) - ip_vs_bind_xmit_v6(cp); - else -#endif - ip_vs_bind_xmit(cp); + ip_vs_bind_xmit(cp); pd = ip_vs_proto_data_get(ip_vs_conn_net(cp), cp->protocol); if (pd && atomic_read(&pd->appcnt)) @@ -916,12 +921,7 @@ ip_vs_conn_new(const struct ip_vs_conn_param *p, cp->sync_endtime = jiffies & ~3UL; /* Bind its packet transmitter */ -#ifdef CONFIG_IP_VS_IPV6 - if (p->af == AF_INET6) - ip_vs_bind_xmit_v6(cp); - else -#endif - ip_vs_bind_xmit(cp); + ip_vs_bind_xmit(cp); if (unlikely(pd && atomic_read(&pd->appcnt))) ip_vs_bind_app(cp, pd->pp);