diff options
Diffstat (limited to 'drivers/net/virtio_net.c')
| -rw-r--r-- | drivers/net/virtio_net.c | 7 | 
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c index 63c7810e1545..237f8e5e493d 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c @@ -1756,9 +1756,9 @@ static int virtnet_probe(struct virtio_device *vdev)  	/* Do we support "hardware" checksums? */  	if (virtio_has_feature(vdev, VIRTIO_NET_F_CSUM)) {  		/* This opens up the world of extra features. */ -		dev->hw_features |= NETIF_F_HW_CSUM|NETIF_F_SG|NETIF_F_FRAGLIST; +		dev->hw_features |= NETIF_F_HW_CSUM | NETIF_F_SG;  		if (csum) -			dev->features |= NETIF_F_HW_CSUM|NETIF_F_SG|NETIF_F_FRAGLIST; +			dev->features |= NETIF_F_HW_CSUM | NETIF_F_SG;  		if (virtio_has_feature(vdev, VIRTIO_NET_F_GSO)) {  			dev->hw_features |= NETIF_F_TSO | NETIF_F_UFO @@ -1828,7 +1828,8 @@ static int virtnet_probe(struct virtio_device *vdev)  	else  		vi->hdr_len = sizeof(struct virtio_net_hdr); -	if (virtio_has_feature(vdev, VIRTIO_F_ANY_LAYOUT)) +	if (virtio_has_feature(vdev, VIRTIO_F_ANY_LAYOUT) || +	    virtio_has_feature(vdev, VIRTIO_F_VERSION_1))  		vi->any_header_sg = true;  	if (virtio_has_feature(vdev, VIRTIO_NET_F_CTRL_VQ))  |