Re: [PATCH v2 2/3] Revert "drivers/net, ipv6: Select IPv6 fragment idents for virtio UFO packets"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jan 30, 2015 at 02:27:26PM -0500, Vladislav Yasevich wrote:
> This reverts commit 5188cd44c55db3e92cd9e77a40b5baa7ed4340f7.
> 
> Now that GSO layer can track if fragment id has been selected
> and can allocate one if necessary, we don't need to do this in
> tap and macvtap.  This reverts most of the code and only keeps
> the new ipv6 fragment id generation function that is still needed.
> 
> Fixes: 3d0ad09412ff (drivers/net: Disable UFO through virtio)
> Signed-off-by: Vladislav Yasevich <vyasevic@xxxxxxxxxx>

Acked-by: Michael S. Tsirkin <mst@xxxxxxxxxx>

> ---
>  drivers/net/macvtap.c | 3 ---
>  drivers/net/tun.c     | 6 +-----
>  2 files changed, 1 insertion(+), 8 deletions(-)
> 
> diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c
> index 7df2217..0b86e46 100644
> --- a/drivers/net/macvtap.c
> +++ b/drivers/net/macvtap.c
> @@ -17,7 +17,6 @@
>  #include <linux/fs.h>
>  #include <linux/uio.h>
>  
> -#include <net/ipv6.h>
>  #include <net/net_namespace.h>
>  #include <net/rtnetlink.h>
>  #include <net/sock.h>
> @@ -589,8 +588,6 @@ static int macvtap_skb_from_vnet_hdr(struct macvtap_queue *q,
>  			pr_warn_once("macvtap: %s: using disabled UFO feature; please fix this program\n",
>  				     current->comm);
>  			gso_type = SKB_GSO_UDP;
> -			if (skb->protocol == htons(ETH_P_IPV6))
> -				ipv6_proxy_select_ident(skb);
>  			break;
>  		default:
>  			return -EINVAL;
> diff --git a/drivers/net/tun.c b/drivers/net/tun.c
> index 8c8dc16..5ca42b7 100644
> --- a/drivers/net/tun.c
> +++ b/drivers/net/tun.c
> @@ -65,7 +65,6 @@
>  #include <linux/nsproxy.h>
>  #include <linux/virtio_net.h>
>  #include <linux/rcupdate.h>
> -#include <net/ipv6.h>
>  #include <net/net_namespace.h>
>  #include <net/netns/generic.h>
>  #include <net/rtnetlink.h>
> @@ -1167,8 +1166,6 @@ static ssize_t tun_get_user(struct tun_struct *tun, struct tun_file *tfile,
>  		break;
>  	}
>  
> -	skb_reset_network_header(skb);
> -
>  	if (gso.gso_type != VIRTIO_NET_HDR_GSO_NONE) {
>  		pr_debug("GSO!\n");
>  		switch (gso.gso_type & ~VIRTIO_NET_HDR_GSO_ECN) {
> @@ -1189,8 +1186,6 @@ static ssize_t tun_get_user(struct tun_struct *tun, struct tun_file *tfile,
>  					    current->comm);
>  			}
>  			skb_shinfo(skb)->gso_type = SKB_GSO_UDP;
> -			if (skb->protocol == htons(ETH_P_IPV6))
> -				ipv6_proxy_select_ident(skb);
>  			break;
>  		}
>  		default:
> @@ -1221,6 +1216,7 @@ static ssize_t tun_get_user(struct tun_struct *tun, struct tun_file *tfile,
>  		skb_shinfo(skb)->tx_flags |= SKBTX_SHARED_FRAG;
>  	}
>  
> +	skb_reset_network_header(skb);
>  	skb_probe_transport_header(skb, 0);
>  
>  	rxhash = skb_get_hash(skb);
> -- 
> 1.9.3
_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.org/mailman/listinfo/virtualization




[Index of Archives]     [KVM Development]     [Libvirt Development]     [Libvirt Users]     [CentOS Virtualization]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux