diff options
author | Heng Qi <hengqi@linux.alibaba.com> | 2023-01-14 16:22:23 +0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2023-01-16 11:15:48 +0000 |
commit | 50bd14bc98fa0c86ea1e688d93ef1ffe8f1572a0 (patch) | |
tree | 2f271bf5d70660e30d514d4db8afdab650816906 | |
parent | 8d9bc36de5fc7b64bbce7b479dbe0ffdcb31b3b5 (diff) |
virtio-net: update bytes calculation for xdp_frame
Update relative record value for xdp_frame as basis
for multi-buffer xdp transmission.
Signed-off-by: Heng Qi <hengqi@linux.alibaba.com>
Reviewed-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Acked-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/virtio_net.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c index ba4d5e66a4d7..5e0cdab897db 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c @@ -665,7 +665,7 @@ static int virtnet_xdp_xmit(struct net_device *dev, if (likely(is_xdp_frame(ptr))) { struct xdp_frame *frame = ptr_to_xdp(ptr); - bytes += frame->len; + bytes += xdp_get_frame_len(frame); xdp_return_frame(frame); } else { struct sk_buff *skb = ptr; @@ -1611,7 +1611,7 @@ static void free_old_xmit_skbs(struct send_queue *sq, bool in_napi) } else { struct xdp_frame *frame = ptr_to_xdp(ptr); - bytes += frame->len; + bytes += xdp_get_frame_len(frame); xdp_return_frame(frame); } packets++; |