virtio: Add support for multiqueue
[vpp.git] / src / vnet / devices / virtio / virtio_api.c
index 6f70b09..238c6ad 100644 (file)
@@ -108,7 +108,7 @@ vl_api_virtio_pci_delete_t_handler (vl_api_virtio_pci_delete_t * mp)
 {
   vnet_main_t *vnm = vnet_get_main ();
   vlib_main_t *vm = vlib_get_main ();
-  virtio_main_t *vmx = &virtio_main;
+  virtio_main_t *vim = &virtio_main;
   int rv = 0;
   vnet_hw_interface_t *hw;
   virtio_if_t *vif;
@@ -124,7 +124,7 @@ vl_api_virtio_pci_delete_t_handler (vl_api_virtio_pci_delete_t * mp)
       goto reply;
     }
 
-  vif = pool_elt_at_index (vmx->interfaces, hw->dev_instance);
+  vif = pool_elt_at_index (vim->interfaces, hw->dev_instance);
 
   rv = virtio_pci_delete_if (vm, vif);
 
@@ -159,8 +159,10 @@ virtio_pci_send_sw_interface_details (vpe_api_main_t * am,
   mp->_vl_msg_id = htons (VL_API_SW_INTERFACE_VIRTIO_PCI_DETAILS);
   mp->pci_addr = htonl (vif->pci_addr.as_u32);
   mp->sw_if_index = htonl (vif->sw_if_index);
-  mp->rx_ring_sz = htons (vif->rx_ring_sz);
-  mp->tx_ring_sz = htons (vif->tx_ring_sz);
+  virtio_vring_t *vring = vec_elt_at_index (vif->rxq_vrings, 0);
+  mp->rx_ring_sz = htons (vring->size);
+  vring = vec_elt_at_index (vif->txq_vrings, 0);
+  mp->tx_ring_sz = htons (vring->size);
   clib_memcpy (mp->mac_addr, vif->mac_addr, 6);
   mp->features = clib_host_to_net_u64 (vif->features);