]> www.infradead.org Git - users/hch/dma-mapping.git/commitdiff
Revert "virtio_net: big mode skip the unmap check"
authorXuan Zhuo <xuanzhuo@linux.alibaba.com>
Fri, 6 Sep 2024 12:31:36 +0000 (20:31 +0800)
committerJakub Kicinski <kuba@kernel.org>
Tue, 10 Sep 2024 16:01:06 +0000 (09:01 -0700)
This reverts commit a377ae542d8d0a20a3173da3bbba72e045bea7a9.

Signed-off-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Tested-by: Takero Funaki <flintglass@gmail.com>
Link: https://patch.msgid.link/20240906123137.108741-3-xuanzhuo@linux.alibaba.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/virtio_net.c

index 6fa8aab18484e67cbd10e9dda4103d5810e67f44..1cf80648f82a49377d2a7429523f77c139c6194f 100644 (file)
@@ -1006,7 +1006,7 @@ static void virtnet_rq_unmap_free_buf(struct virtqueue *vq, void *buf)
                return;
        }
 
-       if (!vi->big_packets || vi->mergeable_rx_bufs)
+       if (rq->do_dma)
                virtnet_rq_unmap(rq, buf, 0);
 
        virtnet_rq_free_buf(vi, rq, buf);
@@ -2716,7 +2716,7 @@ static int virtnet_receive_packets(struct virtnet_info *vi,
                }
        } else {
                while (packets < budget &&
-                      (buf = virtqueue_get_buf(rq->vq, &len)) != NULL) {
+                      (buf = virtnet_rq_get_buf(rq, &len, NULL)) != NULL) {
                        receive_buf(vi, rq, buf, len, NULL, xdp_xmit, stats);
                        packets++;
                }