diff mbox

[net-next] vxlan: use htonl when snooping for loopback address

Message ID 1365931299-26240-1-git-send-email-mike.rapoport@ravellosystems.com
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Mike Rapoport April 14, 2013, 9:21 a.m. UTC
Currently "bridge fdb show dev vxlan0" lists loopback address as
"1.0.0.127". Using htonl(INADDR_LOOPBACK) rather than passing it
directly to vxlan_snoop fixes the problem.

Signed-off-by: Mike Rapoport <mike.rapoport@ravellosystems.com>
---
 drivers/net/vxlan.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Cong Wang April 14, 2013, 3:07 p.m. UTC | #1
On Sun, 14 Apr 2013 at 09:21 GMT, Mike Rapoport <mike.rapoport@ravellosystems.com> wrote:
> Currently "bridge fdb show dev vxlan0" lists loopback address as
> "1.0.0.127". Using htonl(INADDR_LOOPBACK) rather than passing it
> directly to vxlan_snoop fixes the problem.
>
> Signed-off-by: Mike Rapoport <mike.rapoport@ravellosystems.com>

Good catch!

Acked-by: Cong Wang <xiyou.wangcong@gmail.com>

--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Stephen Hemminger April 14, 2013, 4:57 p.m. UTC | #2
On Sun, 14 Apr 2013 12:21:39 +0300
Mike Rapoport <mike.rapoport@ravellosystems.com> wrote:

> Currently "bridge fdb show dev vxlan0" lists loopback address as
> "1.0.0.127". Using htonl(INADDR_LOOPBACK) rather than passing it
> directly to vxlan_snoop fixes the problem.
> 
> Signed-off-by: Mike Rapoport <mike.rapoport@ravellosystems.com>
> ---
>  drivers/net/vxlan.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
> index ee02ecd..725aba3 100644
> --- a/drivers/net/vxlan.c
> +++ b/drivers/net/vxlan.c
> @@ -925,7 +925,8 @@ static void vxlan_encap_bypass(struct sk_buff *skb, struct vxlan_dev *src_vxlan,
>  	__skb_pull(skb, skb_network_offset(skb));
>  
>  	if (dst_vxlan->flags & VXLAN_F_LEARN)
> -		vxlan_snoop(skb->dev, INADDR_LOOPBACK, eth_hdr(skb)->h_source);
> +		vxlan_snoop(skb->dev, htonl(INADDR_LOOPBACK),
> +			    eth_hdr(skb)->h_source);
>  
>  	u64_stats_update_begin(&tx_stats->syncp);
>  	tx_stats->tx_packets++;

Acked-by: Stephen Hemminger <stephen@networkplumber.org>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
David Miller April 14, 2013, 7:43 p.m. UTC | #3
From: Mike Rapoport <mike.rapoport@ravellosystems.com>
Date: Sun, 14 Apr 2013 12:21:39 +0300

> Currently "bridge fdb show dev vxlan0" lists loopback address as
> "1.0.0.127". Using htonl(INADDR_LOOPBACK) rather than passing it
> directly to vxlan_snoop fixes the problem.
> 
> Signed-off-by: Mike Rapoport <mike.rapoport@ravellosystems.com>

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

Patch

diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index ee02ecd..725aba3 100644
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -925,7 +925,8 @@  static void vxlan_encap_bypass(struct sk_buff *skb, struct vxlan_dev *src_vxlan,
 	__skb_pull(skb, skb_network_offset(skb));
 
 	if (dst_vxlan->flags & VXLAN_F_LEARN)
-		vxlan_snoop(skb->dev, INADDR_LOOPBACK, eth_hdr(skb)->h_source);
+		vxlan_snoop(skb->dev, htonl(INADDR_LOOPBACK),
+			    eth_hdr(skb)->h_source);
 
 	u64_stats_update_begin(&tx_stats->syncp);
 	tx_stats->tx_packets++;