aboutsummaryrefslogtreecommitdiff
path: root/drivers/net
diff options
context:
space:
mode:
authorGravatar Xuan Zhuo <xuanzhuo@linux.alibaba.com> 2024-05-11 11:14:02 +0800
committerGravatar Jakub Kicinski <kuba@kernel.org> 2024-05-13 17:07:41 -0700
commita377ae542d8d0a20a3173da3bbba72e045bea7a9 (patch)
treed38591ebb72a4c5ab24d82c2a7453458578a58d4 /drivers/net
parentvirtio_ring: enable premapped mode whatever use_dma_api (diff)
downloadlinux-a377ae542d8d0a20a3173da3bbba72e045bea7a9.tar.gz
linux-a377ae542d8d0a20a3173da3bbba72e045bea7a9.tar.bz2
linux-a377ae542d8d0a20a3173da3bbba72e045bea7a9.zip
virtio_net: big mode skip the unmap check
The virtio-net big mode did not enable premapped mode, so we did not need to check the unmap. And the subsequent commit will remove the failover code for failing enable premapped for merge and small mode. So we need to remove the checking do_dma code in the big mode path. Signed-off-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com> Acked-by: Jason Wang <jasowang@redhat.com> Link: https://lore.kernel.org/r/20240511031404.30903-3-xuanzhuo@linux.alibaba.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/virtio_net.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index 42da535913ed..b53016c5e8df 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -963,7 +963,7 @@ static void virtnet_rq_unmap_free_buf(struct virtqueue *vq, void *buf)
rq = &vi->rq[i];
- if (rq->do_dma)
+ if (!vi->big_packets || vi->mergeable_rx_bufs)
virtnet_rq_unmap(rq, buf, 0);
virtnet_rq_free_buf(vi, rq, buf);
@@ -2277,7 +2277,7 @@ static int virtnet_receive(struct receive_queue *rq, int budget,
}
} else {
while (packets < budget &&
- (buf = virtnet_rq_get_buf(rq, &len, NULL)) != NULL) {
+ (buf = virtqueue_get_buf(rq->vq, &len)) != NULL) {
receive_buf(vi, rq, buf, len, NULL, xdp_xmit, &stats);
packets++;
}