git.droids-corp.org
/
dpdk.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
raw/ifpga: remove virtual devices on close
[dpdk.git]
/
examples
/
vhost
/
virtio_net.c
diff --git
a/examples/vhost/virtio_net.c
b/examples/vhost/virtio_net.c
index
64bf3d1
..
2432a96
100644
(file)
--- a/
examples/vhost/virtio_net.c
+++ b/
examples/vhost/virtio_net.c
@@
-23,6
+23,7
@@
vs_vhost_net_setup(struct vhost_dev *dev)
uint16_t i;
int vid = dev->vid;
struct vhost_queue *queue;
uint16_t i;
int vid = dev->vid;
struct vhost_queue *queue;
+ int ret;
RTE_LOG(INFO, VHOST_CONFIG,
"setting builtin vhost-user net driver\n");
RTE_LOG(INFO, VHOST_CONFIG,
"setting builtin vhost-user net driver\n");
@@
-33,7
+34,12
@@
vs_vhost_net_setup(struct vhost_dev *dev)
else
dev->hdr_len = sizeof(struct virtio_net_hdr);
else
dev->hdr_len = sizeof(struct virtio_net_hdr);
- rte_vhost_get_mem_table(vid, &dev->mem);
+ ret = rte_vhost_get_mem_table(vid, &dev->mem);
+ if (ret < 0) {
+ RTE_LOG(ERR, VHOST_CONFIG, "Failed to get "
+ "VM memory layout for device(%d)\n", vid);
+ return;
+ }
dev->nr_vrings = rte_vhost_get_vring_num(vid);
for (i = 0; i < dev->nr_vrings; i++) {
dev->nr_vrings = rte_vhost_get_vring_num(vid);
for (i = 0; i < dev->nr_vrings; i++) {
@@
-232,6
+238,13
@@
vs_enqueue_pkts(struct vhost_dev *dev, uint16_t queue_id,
return count;
}
return count;
}
+uint16_t
+builtin_enqueue_pkts(struct vhost_dev *dev, uint16_t queue_id,
+ struct rte_mbuf **pkts, uint32_t count)
+{
+ return vs_enqueue_pkts(dev, queue_id, pkts, count);
+}
+
static __rte_always_inline int
dequeue_pkt(struct vhost_dev *dev, struct rte_vhost_vring *vr,
struct rte_mbuf *m, uint16_t desc_idx,
static __rte_always_inline int
dequeue_pkt(struct vhost_dev *dev, struct rte_vhost_vring *vr,
struct rte_mbuf *m, uint16_t desc_idx,
@@
-357,7
+370,7
@@
dequeue_pkt(struct vhost_dev *dev, struct rte_vhost_vring *vr,
return 0;
}
return 0;
}
-uint16_t
+
static
uint16_t
vs_dequeue_pkts(struct vhost_dev *dev, uint16_t queue_id,
struct rte_mempool *mbuf_pool, struct rte_mbuf **pkts, uint16_t count)
{
vs_dequeue_pkts(struct vhost_dev *dev, uint16_t queue_id,
struct rte_mempool *mbuf_pool, struct rte_mbuf **pkts, uint16_t count)
{
@@
-434,3
+447,10
@@
vs_dequeue_pkts(struct vhost_dev *dev, uint16_t queue_id,
return i;
}
return i;
}
+
+uint16_t
+builtin_dequeue_pkts(struct vhost_dev *dev, uint16_t queue_id,
+ struct rte_mempool *mbuf_pool, struct rte_mbuf **pkts, uint16_t count)
+{
+ return vs_dequeue_pkts(dev, queue_id, mbuf_pool, pkts, count);
+}