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

Function vhost_shadow_enqueue_single_packed

dpdk/lib/vhost/virtio_net.c:635–650  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

633}
634
635static __rte_always_inline void
636vhost_shadow_enqueue_single_packed(struct virtio_net *dev,
637 struct vhost_virtqueue *vq,
638 uint32_t *len,
639 uint16_t *id,
640 uint16_t *count,
641 uint16_t num_buffers)
642 __rte_shared_locks_required(&vq->iotlb_lock)
643{
644 vhost_shadow_enqueue_packed(vq, len, id, count, num_buffers);
645
646 if (vq->shadow_aligned_idx >= PACKED_BATCH_SIZE) {
647 do_data_copy_enqueue(dev, vq);
648 vhost_flush_enqueue_shadow_packed(dev, vq);
649 }
650}
651
652/* avoid write operation when necessary, to lessen cache issues */
653#define ASSIGN_UNLESS_EQUAL(var, val) do { \

Callers 1

Calls 3

do_data_copy_enqueueFunction · 0.85

Tested by

no test coverage detected