public inbox for netdev@vger.kernel.org 
 help / color / mirror / Atom feed
* [PATCH net] ip_tunnels: Use skb-len to PMTU check.
@ 2013-06-30  5:40 Pravin B Shelar
  2013-06-30  7:50 ` Timo Teras
  0 siblings, 1 reply; 2+ messages in thread
From: Pravin B Shelar @ 2013-06-30  5:40 UTC (permalink / raw)
  To: netdev; +Cc: timo.teras, Pravin B Shelar

In path mtu check, ip header total length works for gre device
but not for gre-tap device.  Use skb len which is consistent
for all tunneling types.  This also fixes bug introduced by
commit c54419321455631079c7d (GRE: Refactor GRE tunneling code).

Reported-by: Timo Teras <timo.teras@iki•fi>
Signed-off-by: Pravin B Shelar <pshelar@nicira•com>
---
 net/ipv4/ip_tunnel.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/net/ipv4/ip_tunnel.c b/net/ipv4/ip_tunnel.c
index 7fa8f08..4e9f530 100644
--- a/net/ipv4/ip_tunnel.c
+++ b/net/ipv4/ip_tunnel.c
@@ -595,7 +595,7 @@ void ip_tunnel_xmit(struct sk_buff *skb, struct net_device *dev,
 
 		if (!skb_is_gso(skb) &&
 		    (inner_iph->frag_off&htons(IP_DF)) &&
-		     mtu < ntohs(inner_iph->tot_len)) {
+		     mtu < skb->len) {
 			icmp_send(skb, ICMP_DEST_UNREACH, ICMP_FRAG_NEEDED, htonl(mtu));
 			ip_rt_put(rt);
 			goto tx_error;
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH net] ip_tunnels: Use skb-len to PMTU check.
  2013-06-30  5:40 [PATCH net] ip_tunnels: Use skb-len to PMTU check Pravin B Shelar
@ 2013-06-30  7:50 ` Timo Teras
  0 siblings, 0 replies; 2+ messages in thread
From: Timo Teras @ 2013-06-30  7:50 UTC (permalink / raw)
  To: Pravin B Shelar; +Cc: netdev

On Sat, 29 Jun 2013 22:40:18 -0700
Pravin B Shelar <pshelar@nicira•com> wrote:

> In path mtu check, ip header total length works for gre device
> but not for gre-tap device.  Use skb len which is consistent
> for all tunneling types.  This also fixes bug introduced by
> commit c54419321455631079c7d (GRE: Refactor GRE tunneling code).
> 
> Reported-by: Timo Teras <timo.teras@iki•fi>
> Signed-off-by: Pravin B Shelar <pshelar@nicira•com>
> ---
>  net/ipv4/ip_tunnel.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
> 
> diff --git a/net/ipv4/ip_tunnel.c b/net/ipv4/ip_tunnel.c
> index 7fa8f08..4e9f530 100644
> --- a/net/ipv4/ip_tunnel.c
> +++ b/net/ipv4/ip_tunnel.c
> @@ -595,7 +595,7 @@ void ip_tunnel_xmit(struct sk_buff *skb, struct
> net_device *dev, 
>  		if (!skb_is_gso(skb) &&
>  		    (inner_iph->frag_off&htons(IP_DF)) &&
> -		     mtu < ntohs(inner_iph->tot_len)) {
> +		     mtu < skb->len) {
>  			icmp_send(skb, ICMP_DEST_UNREACH, ICMP_FRAG_NEEDED, htonl(mtu)); ip_rt_put(rt);
>  			goto tx_error;

I think icmp_send's mtu parameter should be adjusted too. Since it's
sent to the inner flow, but the mtu now is disregarding the possible
tunnel headers.

- Timo

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2013-06-30  7:49 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-06-30  5:40 [PATCH net] ip_tunnels: Use skb-len to PMTU check Pravin B Shelar
2013-06-30  7:50 ` Timo Teras

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox