From: Vlad Yasevich <vyasevic@redhat.com>
To: Sabrina Dubroca <sd@queasysnail.net>, davem@davemloft.net
Cc: netdev@vger.kernel.org, matt@mattgrant.net.nz
Subject: Re: [PATCH net] ipv6: call ipv6_proxy_select_ident instead of ipv6_select_ident in udp6_ufo_fragment
Date: Thu, 19 Mar 2015 08:37:49 -0400 [thread overview]
Message-ID: <550AC31D.2080900@redhat.com> (raw)
In-Reply-To: <1426760552-10535-1-git-send-email-sd@queasysnail.net>
On 03/19/2015 06:22 AM, Sabrina Dubroca wrote:
> Matt Grant reported frequent crashes in ipv6_select_ident when
> udp6_ufo_fragment is called from openvswitch on a skb that doesn't
> have a dst_entry set.
>
> ipv6_proxy_select_ident generates the frag_id without using the dst
> associated with the skb. This approach was suggested by Vladislav
> Yasevich.
>
> Fixes: 0508c07f5e0c ("ipv6: Select fragment id during UFO segmentation if not set.")
> Cc: Vladislav Yasevich <vyasevic@redhat.com>
> Reported-by: Matt Grant <matt@mattgrant.net.nz>
> Tested-by: Matt Grant <matt@mattgrant.net.nz>
> Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Acked-by: Vladislav Yasevich <vyasevic@redhat.com>
-vlad
> ---
> David, can you queue this for stable/3.19? Thanks.
>
> net/ipv6/udp_offload.c | 8 +++-----
> 1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/net/ipv6/udp_offload.c b/net/ipv6/udp_offload.c
> index ab889bb16b3c..be2c0ba82c85 100644
> --- a/net/ipv6/udp_offload.c
> +++ b/net/ipv6/udp_offload.c
> @@ -112,11 +112,9 @@ static struct sk_buff *udp6_ufo_fragment(struct sk_buff *skb,
> fptr = (struct frag_hdr *)(skb_network_header(skb) + unfrag_ip6hlen);
> fptr->nexthdr = nexthdr;
> fptr->reserved = 0;
> - if (skb_shinfo(skb)->ip6_frag_id)
> - fptr->identification = skb_shinfo(skb)->ip6_frag_id;
> - else
> - ipv6_select_ident(fptr,
> - (struct rt6_info *)skb_dst(skb));
> + if (!skb_shinfo(skb)->ip6_frag_id)
> + ipv6_proxy_select_ident(skb);
> + fptr->identification = skb_shinfo(skb)->ip6_frag_id;
>
> /* Fragment the skb. ipv6 header and the remaining fields of the
> * fragment header are updated in ipv6_gso_segment()
>
next prev parent reply other threads:[~2015-03-19 12:38 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-18 13:52 [PATCH net] ipv6: skip __ipv6_select_ident when there is no skb_dst Sabrina Dubroca
2015-03-18 14:04 ` Vlad Yasevich
2015-03-18 14:15 ` Sabrina Dubroca
2015-03-18 14:25 ` Vlad Yasevich
2015-03-18 14:36 ` Sabrina Dubroca
2015-03-19 9:39 ` Matt Grant
2015-03-19 10:10 ` Sabrina Dubroca
2015-03-19 10:22 ` [PATCH net] ipv6: call ipv6_proxy_select_ident instead of ipv6_select_ident in udp6_ufo_fragment Sabrina Dubroca
2015-03-19 12:37 ` Vlad Yasevich [this message]
2015-03-20 17:19 ` David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=550AC31D.2080900@redhat.com \
--to=vyasevic@redhat.com \
--cc=davem@davemloft.net \
--cc=matt@mattgrant.net.nz \
--cc=netdev@vger.kernel.org \
--cc=sd@queasysnail.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.