Commit 4ffb17f5c3244e405198ae285ffbb20a62e0d4b3
Committed by
Mark McLoughlin
1 parent
015cb166
virtio-net: Increase filter and control limits
Increase the size of the perfect filter table and control queue depth. This should give us more headroom in the MAC filter and is known to be needed by at least one guest user. Increasing the control queue depth allows a guest to feed several commands back to back if they so desire rather than using the send and wait approach Linux uses. Signed-off-by: Alex Williamson <alex.williamson@hp.com> Signed-off-by: Mark McLoughlin <markmc@redhat.com>
Showing
1 changed file
with
2 additions
and
2 deletions
hw/virtio-net.c
@@ -18,7 +18,7 @@ | @@ -18,7 +18,7 @@ | ||
18 | 18 | ||
19 | #define VIRTIO_NET_VM_VERSION 10 | 19 | #define VIRTIO_NET_VM_VERSION 10 |
20 | 20 | ||
21 | -#define MAC_TABLE_ENTRIES 32 | 21 | +#define MAC_TABLE_ENTRIES 64 |
22 | #define MAX_VLAN (1 << 12) /* Per 802.1Q definition */ | 22 | #define MAX_VLAN (1 << 12) /* Per 802.1Q definition */ |
23 | 23 | ||
24 | typedef struct VirtIONet | 24 | typedef struct VirtIONet |
@@ -690,7 +690,7 @@ VirtIODevice *virtio_net_init(DeviceState *dev) | @@ -690,7 +690,7 @@ VirtIODevice *virtio_net_init(DeviceState *dev) | ||
690 | n->vdev.reset = virtio_net_reset; | 690 | n->vdev.reset = virtio_net_reset; |
691 | n->rx_vq = virtio_add_queue(&n->vdev, 256, virtio_net_handle_rx); | 691 | n->rx_vq = virtio_add_queue(&n->vdev, 256, virtio_net_handle_rx); |
692 | n->tx_vq = virtio_add_queue(&n->vdev, 256, virtio_net_handle_tx); | 692 | n->tx_vq = virtio_add_queue(&n->vdev, 256, virtio_net_handle_tx); |
693 | - n->ctrl_vq = virtio_add_queue(&n->vdev, 16, virtio_net_handle_ctrl); | 693 | + n->ctrl_vq = virtio_add_queue(&n->vdev, 64, virtio_net_handle_ctrl); |
694 | qdev_get_macaddr(dev, n->mac); | 694 | qdev_get_macaddr(dev, n->mac); |
695 | n->status = VIRTIO_NET_S_LINK_UP; | 695 | n->status = VIRTIO_NET_S_LINK_UP; |
696 | n->vc = qdev_get_vlan_client(dev, | 696 | n->vc = qdev_get_vlan_client(dev, |