search for: ip6_ufo_append_data

Displaying 20 results from an estimated 40 matches for "ip6_ufo_append_data".

2014 Oct 21
2
IPv6 UFO for VMs
...al stack constructed the skb; otherwise it appears we get zero. This seems to be a regression as a result of: commit 916e4cf46d0204806c062c8c6c4d1f633852c5b6 Author: Hannes Frederic Sowa <hannes at stressinduktion.org> Date: Fri Feb 21 02:55:35 2014 +0100 ipv6: reuse ip6_frag_id from ip6_ufo_append_data However, that change seems reasonable - we *shouldn't* be choosing IDs for any other stack. Any paravirt net driver that can use IPv6 UFO needs to have some way of passing a fragmentation ID to put in skb_shared_info::ip6_frag_id. Ben. -- Ben Hutchings For every action, there is an equal a...
2014 Oct 21
2
IPv6 UFO for VMs
...al stack constructed the skb; otherwise it appears we get zero. This seems to be a regression as a result of: commit 916e4cf46d0204806c062c8c6c4d1f633852c5b6 Author: Hannes Frederic Sowa <hannes at stressinduktion.org> Date: Fri Feb 21 02:55:35 2014 +0100 ipv6: reuse ip6_frag_id from ip6_ufo_append_data However, that change seems reasonable - we *shouldn't* be choosing IDs for any other stack. Any paravirt net driver that can use IPv6 UFO needs to have some way of passing a fragmentation ID to put in skb_shared_info::ip6_frag_id. Ben. -- Ben Hutchings For every action, there is an equal a...
2014 Nov 21
1
[PATCH v2 net 1/2] drivers/net: Disable UFO through virtio
...t depend on VM managers respecting the tap feature flags, so > > keep accepting UFO packets but log a warning the first time we do > > this. > > > > Signed-off-by: Ben Hutchings <ben at decadent.org.uk> > > Fixes: 916e4cf46d02 ("ipv6: reuse ip6_frag_id from ip6_ufo_append_data") > > > There's something I don't understand here. I see: > > NETIF_F_UFO_BIT, /* ... UDPv4 fragmentation */ > > this comment is wrong then? Yes. > The patches drastically regress performance for UDPv4 for VMs only, but > isn'...
2014 Nov 21
1
[PATCH v2 net 1/2] drivers/net: Disable UFO through virtio
...t depend on VM managers respecting the tap feature flags, so > > keep accepting UFO packets but log a warning the first time we do > > this. > > > > Signed-off-by: Ben Hutchings <ben at decadent.org.uk> > > Fixes: 916e4cf46d02 ("ipv6: reuse ip6_frag_id from ip6_ufo_append_data") > > > There's something I don't understand here. I see: > > NETIF_F_UFO_BIT, /* ... UDPv4 fragmentation */ > > this comment is wrong then? Yes. > The patches drastically regress performance for UDPv4 for VMs only, but > isn'...
2014 Oct 30
3
[PATCH v2 net 1/2] drivers/net: Disable UFO through virtio
...pletely until we have a proper solution. We cannot depend on VM managers respecting the tap feature flags, so keep accepting UFO packets but log a warning the first time we do this. Signed-off-by: Ben Hutchings <ben at decadent.org.uk> Fixes: 916e4cf46d02 ("ipv6: reuse ip6_frag_id from ip6_ufo_append_data") --- drivers/net/macvtap.c | 13 +++++-------- drivers/net/tun.c | 19 +++++++++++-------- drivers/net/virtio_net.c | 24 ++++++++++++++---------- 3 files changed, 30 insertions(+), 26 deletions(-) diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c index 65e2892..2aeaa61 1...
2014 Oct 30
3
[PATCH v2 net 1/2] drivers/net: Disable UFO through virtio
...pletely until we have a proper solution. We cannot depend on VM managers respecting the tap feature flags, so keep accepting UFO packets but log a warning the first time we do this. Signed-off-by: Ben Hutchings <ben at decadent.org.uk> Fixes: 916e4cf46d02 ("ipv6: reuse ip6_frag_id from ip6_ufo_append_data") --- drivers/net/macvtap.c | 13 +++++-------- drivers/net/tun.c | 19 +++++++++++-------- drivers/net/virtio_net.c | 24 ++++++++++++++---------- 3 files changed, 30 insertions(+), 26 deletions(-) diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c index 65e2892..2aeaa61 1...
2015 Jan 28
2
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
...t; if (!skb_transport_header_was_set(skb)) > >> diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c > >> index ce69a12..819a821 100644 > >> --- a/net/ipv6/ip6_output.c > >> +++ b/net/ipv6/ip6_output.c > >> @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, > >> sizeof(struct frag_hdr)) & ~7; > >> skb_shinfo(skb)->gso_type = SKB_GSO_UDP; > >> ipv6_select_ident(&fhdr, rt); > >> - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; > >> + skb_shinfo(skb)->ip6_fr...
2015 Jan 28
2
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
...t; if (!skb_transport_header_was_set(skb)) > >> diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c > >> index ce69a12..819a821 100644 > >> --- a/net/ipv6/ip6_output.c > >> +++ b/net/ipv6/ip6_output.c > >> @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, > >> sizeof(struct frag_hdr)) & ~7; > >> skb_shinfo(skb)->gso_type = SKB_GSO_UDP; > >> ipv6_select_ident(&fhdr, rt); > >> - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; > >> + skb_shinfo(skb)->ip6_fr...
2015 Jan 28
7
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
...t; > skb_reset_network_header(skb); > if (!skb_transport_header_was_set(skb)) > diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c > index ce69a12..819a821 100644 > --- a/net/ipv6/ip6_output.c > +++ b/net/ipv6/ip6_output.c > @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, > sizeof(struct frag_hdr)) & ~7; > skb_shinfo(skb)->gso_type = SKB_GSO_UDP; > ipv6_select_ident(&fhdr, rt); > - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; > + skb_shinfo(skb)->ip6_frag_id = jhash_1word(skb_shinfo(skb)->ip6_f...
2015 Jan 28
7
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
...t; > skb_reset_network_header(skb); > if (!skb_transport_header_was_set(skb)) > diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c > index ce69a12..819a821 100644 > --- a/net/ipv6/ip6_output.c > +++ b/net/ipv6/ip6_output.c > @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, > sizeof(struct frag_hdr)) & ~7; > skb_shinfo(skb)->gso_type = SKB_GSO_UDP; > ipv6_select_ident(&fhdr, rt); > - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; > + skb_shinfo(skb)->ip6_frag_id = jhash_1word(skb_shinfo(skb)->ip6_f...
2015 Jan 28
2
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
...if (!skb_transport_header_was_set(skb)) > > > diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c > > > index ce69a12..819a821 100644 > > > --- a/net/ipv6/ip6_output.c > > > +++ b/net/ipv6/ip6_output.c > > > @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, > > > sizeof(struct frag_hdr)) & ~7; > > > skb_shinfo(skb)->gso_type = SKB_GSO_UDP; > > > ipv6_select_ident(&fhdr, rt); > > > - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; > > > + skb_shinfo(skb)->i...
2015 Jan 28
2
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
...if (!skb_transport_header_was_set(skb)) > > > diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c > > > index ce69a12..819a821 100644 > > > --- a/net/ipv6/ip6_output.c > > > +++ b/net/ipv6/ip6_output.c > > > @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, > > > sizeof(struct frag_hdr)) & ~7; > > > skb_shinfo(skb)->gso_type = SKB_GSO_UDP; > > > ipv6_select_ident(&fhdr, rt); > > > - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; > > > + skb_shinfo(skb)->i...
2015 Jan 28
0
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
...twork_header(skb); >> if (!skb_transport_header_was_set(skb)) >> diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c >> index ce69a12..819a821 100644 >> --- a/net/ipv6/ip6_output.c >> +++ b/net/ipv6/ip6_output.c >> @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, >> sizeof(struct frag_hdr)) & ~7; >> skb_shinfo(skb)->gso_type = SKB_GSO_UDP; >> ipv6_select_ident(&fhdr, rt); >> - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; >> + skb_shinfo(skb)->ip6_frag_id = jhash_1word(skb_s...
2015 Jan 28
0
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
...twork_header(skb); >> if (!skb_transport_header_was_set(skb)) >> diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c >> index ce69a12..819a821 100644 >> --- a/net/ipv6/ip6_output.c >> +++ b/net/ipv6/ip6_output.c >> @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, >> sizeof(struct frag_hdr)) & ~7; >> skb_shinfo(skb)->gso_type = SKB_GSO_UDP; >> ipv6_select_ident(&fhdr, rt); >> - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; >> + skb_shinfo(skb)->ip6_frag_id = jhash_1word(skb_s...
2015 Jan 28
0
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
...header(skb); > > if (!skb_transport_header_was_set(skb)) > > diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c > > index ce69a12..819a821 100644 > > --- a/net/ipv6/ip6_output.c > > +++ b/net/ipv6/ip6_output.c > > @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, > > sizeof(struct frag_hdr)) & ~7; > > skb_shinfo(skb)->gso_type = SKB_GSO_UDP; > > ipv6_select_ident(&fhdr, rt); > > - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; > > + skb_shinfo(skb)->ip6_frag_id = jhash_1word(...
2015 Jan 28
0
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
...header(skb); > > if (!skb_transport_header_was_set(skb)) > > diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c > > index ce69a12..819a821 100644 > > --- a/net/ipv6/ip6_output.c > > +++ b/net/ipv6/ip6_output.c > > @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, > > sizeof(struct frag_hdr)) & ~7; > > skb_shinfo(skb)->gso_type = SKB_GSO_UDP; > > ipv6_select_ident(&fhdr, rt); > > - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; > > + skb_shinfo(skb)->ip6_frag_id = jhash_1word(...
2015 Jan 28
0
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
...ransport_header_was_set(skb)) >>>> diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c >>>> index ce69a12..819a821 100644 >>>> --- a/net/ipv6/ip6_output.c >>>> +++ b/net/ipv6/ip6_output.c >>>> @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, >>>> sizeof(struct frag_hdr)) & ~7; >>>> skb_shinfo(skb)->gso_type = SKB_GSO_UDP; >>>> ipv6_select_ident(&fhdr, rt); >>>> - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; >>>> + skb_shinfo(...
2015 Jan 28
0
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
...ransport_header_was_set(skb)) >>>> diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c >>>> index ce69a12..819a821 100644 >>>> --- a/net/ipv6/ip6_output.c >>>> +++ b/net/ipv6/ip6_output.c >>>> @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, >>>> sizeof(struct frag_hdr)) & ~7; >>>> skb_shinfo(skb)->gso_type = SKB_GSO_UDP; >>>> ipv6_select_ident(&fhdr, rt); >>>> - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; >>>> + skb_shinfo(...
2015 Jan 28
0
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
..._was_set(skb)) > > > > diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c > > > > index ce69a12..819a821 100644 > > > > --- a/net/ipv6/ip6_output.c > > > > +++ b/net/ipv6/ip6_output.c > > > > @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, > > > > sizeof(struct frag_hdr)) & ~7; > > > > skb_shinfo(skb)->gso_type = SKB_GSO_UDP; > > > > ipv6_select_ident(&fhdr, rt); > > > > - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; > > > &gt...
2015 Jan 28
0
[PATCH 1/3] ipv6: Select fragment id during UFO/GSO segmentation if not set.
..._was_set(skb)) > > > > diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c > > > > index ce69a12..819a821 100644 > > > > --- a/net/ipv6/ip6_output.c > > > > +++ b/net/ipv6/ip6_output.c > > > > @@ -1092,7 +1092,8 @@ static inline int ip6_ufo_append_data(struct sock *sk, > > > > sizeof(struct frag_hdr)) & ~7; > > > > skb_shinfo(skb)->gso_type = SKB_GSO_UDP; > > > > ipv6_select_ident(&fhdr, rt); > > > > - skb_shinfo(skb)->ip6_frag_id = fhdr.identification; > > > &gt...