]> git.droids-corp.org - dpdk.git/blobdiff - drivers/net/virtio/virtqueue.h
net/virtio: fix avail descriptor ID
[dpdk.git] / drivers / net / virtio / virtqueue.h
index 4182939272dcba865d1827e93e321238f6029338..4f3dd31c10342de5367d0d87cfc43b48d1a9c7a5 100644 (file)
@@ -732,6 +732,9 @@ virtqueue_enqueue_xmit_packed(struct virtnet_tx *txvq, struct rte_mbuf *cookie,
                        RTE_PTR_DIFF(&txr[idx].tx_packed_indir, txr);
                start_dp[idx].len   = (seg_num + 1) *
                        sizeof(struct vring_packed_desc);
+               /* Packed descriptor id needs to be restored when inorder. */
+               if (in_order)
+                       start_dp[idx].id = idx;
                /* reset flags for indirect desc */
                head_flags = VRING_DESC_F_INDIRECT;
                head_flags |= vq->vq_packed.cached_flags;