memif: fix tx desc length for chained buffers in copy mode 49/32849/2
authorBenoît Ganne <bganne@cisco.com>
Tue, 22 Jun 2021 13:46:33 +0000 (15:46 +0200)
committerDamjan Marion <dmarion@me.com>
Wed, 30 Jun 2021 18:59:12 +0000 (18:59 +0000)
When enqueuing chained buffer, we must update the descriptor length for
each fragment descriptor in addition to the last.

Type: fix

Change-Id: I9bc95fe557a049eeea4abd41c695153632d52a52
Signed-off-by: Benoît Ganne <bganne@cisco.com>
src/plugins/memif/device.c

index 8e902fe..fce4ab2 100644 (file)
@@ -177,6 +177,7 @@ retry:
                {
                  slot++;
                  free_slots--;
+                 d0->length = dst_off;
                  d0->flags = MEMIF_DESC_FLAG_NEXT;
                  d0 = &ring->desc[slot & mask];
                  dst_off = 0;