u16 desc_next;
int kick_fd;
int call_fd;
+ u8 buffer_pool_index;
u16 size;
u16 queue_id;
u16 flags;
pci_addr_t pci_addr;
};
u32 per_interface_next_index;
- int fd;
+ union
+ {
+ int fd;
+ u32 msix_enabled;
+ };
union
{
int tap_fd;
/* error */
clib_error_t *error;
+ u8 support_int_mode; /* support interrupt mode */
u16 max_queue_pairs;
u16 tx_ring_sz;
u16 rx_ring_sz;
u8 status;
u8 mac_addr[6];
- u64 bar[2];
u8 *host_if_name;
u8 *net_ns;
u8 *host_bridge;
u8 host_ip4_prefix_len;
ip6_address_t host_ip6_addr;
u8 host_ip6_prefix_len;
-
+ int gso_enabled;
int ifindex;
} virtio_if_t;
u16 sz);
clib_error_t *virtio_vring_free (vlib_main_t * vm, virtio_if_t * vif,
u32 idx);
+void virtio_vring_set_numa_node (vlib_main_t * vm, virtio_if_t * vif,
+ u32 idx);
extern void virtio_free_used_desc (vlib_main_t * vm, virtio_vring_t * vring);
extern void virtio_free_rx_buffers (vlib_main_t * vm, virtio_vring_t * vring);
extern void virtio_set_net_hdr_size (virtio_if_t * vif);