MCPcopy Create free account
hub / github.com/F-Stack/f-stack / sync_virtio_xmit

Function sync_virtio_xmit

dpdk/examples/vhost/main.c:1042–1062  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1040}
1041
1042static __rte_always_inline void
1043sync_virtio_xmit(struct vhost_dev *dst_vdev, struct vhost_dev *src_vdev,
1044 struct rte_mbuf *m)
1045{
1046 uint16_t ret;
1047
1048 if (builtin_net_driver) {
1049 ret = vs_enqueue_pkts(dst_vdev, VIRTIO_RXQ, &m, 1);
1050 } else {
1051 ret = rte_vhost_enqueue_burst(dst_vdev->vid, VIRTIO_RXQ, &m, 1);
1052 }
1053
1054 if (enable_stats) {
1055 __atomic_fetch_add(&dst_vdev->stats.rx_total_atomic, 1,
1056 __ATOMIC_SEQ_CST);
1057 __atomic_fetch_add(&dst_vdev->stats.rx_atomic, ret,
1058 __ATOMIC_SEQ_CST);
1059 src_vdev->stats.tx_total++;
1060 src_vdev->stats.tx += ret;
1061 }
1062}
1063
1064static __rte_always_inline void
1065drain_vhost(struct vhost_dev *vdev)

Callers 1

virtio_tx_routeFunction · 0.85

Calls 2

vs_enqueue_pktsFunction · 0.85
rte_vhost_enqueue_burstFunction · 0.85

Tested by

no test coverage detected