aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael S. Tsirkin <mst@redhat.com>2014-11-26 08:58:28 -0500
committerMichael S. Tsirkin <mst@redhat.com>2014-12-09 05:05:28 -0500
commit7e93a02fecea38e40083e82ac9b46b2477fa365e (patch)
tree0bb39b1aa12f14552b158d6fa25f56d2bc089d72
parentd04302b334bde9da691bd823d239cfd26f33e2fb (diff)
virtio_net: disable mac write for virtio 1.0
The spec states that mac in config space is only driver-writable in the legacy case. Fence writing it in virtnet_set_mac_address() in the virtio 1.0 case. Suggested-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
-rw-r--r--drivers/net/virtio_net.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index a0e64cfdbc24..b8bd7191572d 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -1030,7 +1030,8 @@ static int virtnet_set_mac_address(struct net_device *dev, void *p)
1030 "Failed to set mac address by vq command.\n"); 1030 "Failed to set mac address by vq command.\n");
1031 return -EINVAL; 1031 return -EINVAL;
1032 } 1032 }
1033 } else if (virtio_has_feature(vdev, VIRTIO_NET_F_MAC)) { 1033 } else if (virtio_has_feature(vdev, VIRTIO_NET_F_MAC) &&
1034 !virtio_has_feature(vdev, VIRTIO_F_VERSION_1)) {
1034 unsigned int i; 1035 unsigned int i;
1035 1036
1036 /* Naturally, this has an atomicity problem. */ 1037 /* Naturally, this has an atomicity problem. */