All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Cc: virtualization@lists.linux-foundation.org,
	netdev@vger.kernel.org, Jason Wang <jasowang@redhat.com>,
	"David S. Miller" <davem@davemloft.net>,
	Jakub Kicinski <kuba@kernel.org>,
	Alexei Starovoitov <ast@kernel.org>,
	Daniel Borkmann <daniel@iogearbox.net>,
	Jesper Dangaard Brouer <hawk@kernel.org>,
	John Fastabend <john.fastabend@gmail.com>,
	bpf@vger.kernel.org
Subject: Re: [PATCH v2 0/9] virtio: support advance DMA
Date: Wed, 30 Mar 2022 02:33:51 -0400	[thread overview]
Message-ID: <20220330023258-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20220224110402.108161-1-xuanzhuo@linux.alibaba.com>

On Thu, Feb 24, 2022 at 07:03:53PM +0800, Xuan Zhuo wrote:
> virtqueue_add() only supports virtual addresses, dma is completed in
> virtqueue_add().
> 
> In some scenarios (such as the AF_XDP scenario), DMA is completed in advance, so
> it is necessary for us to support passing the DMA address to virtqueue_add().

I picked up a couple of patches. Others are waiting for some acks
(Jason?) and improved commit logs for documentation.

Thanks!

> v2:
>     1. rename predma -> premapped
>     2. virtio net xdp tx use virtio dma api
> 
> v1:
>    1. All sgs requested at one time are required to be unified PREDMA, and several
>       of them are not supported to be PREDMA
>    2. virtio_dma_map() is removed from this patch set and will be submitted
>       together with the next time AF_XDP supports virtio dma
>    3. Added patch #2 #3 to remove the check for flags when performing unmap
>       indirect desc
> 
> Xuan Zhuo (9):
>   virtio_ring: rename vring_unmap_state_packed() to
>     vring_unmap_extra_packed()
>   virtio_ring: remove flags check for unmap split indirect desc
>   virtio_ring: remove flags check for unmap packed indirect desc
>   virtio_ring: virtqueue_add() support premapped
>   virtio_ring: split: virtqueue_add_split() support premapped
>   virtio_ring: packed: virtqueue_add_packed() support premapped
>   virtio_ring: add api virtio_dma_map() for advance dma
>   virtio_ring: introduce virtqueue_add_outbuf_premapped()
>   virtio_net: xdp xmit use virtio dma api
> 
>  drivers/net/virtio_net.c     |  42 +++++-
>  drivers/virtio/virtio_ring.c | 280 ++++++++++++++++++++++++++---------
>  include/linux/virtio.h       |  12 ++
>  3 files changed, 254 insertions(+), 80 deletions(-)
> 
> --
> 2.31.0


WARNING: multiple messages have this Message-ID (diff)
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Cc: Jesper Dangaard Brouer <hawk@kernel.org>,
	Daniel Borkmann <daniel@iogearbox.net>,
	netdev@vger.kernel.org, John Fastabend <john.fastabend@gmail.com>,
	Alexei Starovoitov <ast@kernel.org>,
	virtualization@lists.linux-foundation.org,
	Jakub Kicinski <kuba@kernel.org>,
	bpf@vger.kernel.org, "David S. Miller" <davem@davemloft.net>
Subject: Re: [PATCH v2 0/9] virtio: support advance DMA
Date: Wed, 30 Mar 2022 02:33:51 -0400	[thread overview]
Message-ID: <20220330023258-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20220224110402.108161-1-xuanzhuo@linux.alibaba.com>

On Thu, Feb 24, 2022 at 07:03:53PM +0800, Xuan Zhuo wrote:
> virtqueue_add() only supports virtual addresses, dma is completed in
> virtqueue_add().
> 
> In some scenarios (such as the AF_XDP scenario), DMA is completed in advance, so
> it is necessary for us to support passing the DMA address to virtqueue_add().

I picked up a couple of patches. Others are waiting for some acks
(Jason?) and improved commit logs for documentation.

Thanks!

> v2:
>     1. rename predma -> premapped
>     2. virtio net xdp tx use virtio dma api
> 
> v1:
>    1. All sgs requested at one time are required to be unified PREDMA, and several
>       of them are not supported to be PREDMA
>    2. virtio_dma_map() is removed from this patch set and will be submitted
>       together with the next time AF_XDP supports virtio dma
>    3. Added patch #2 #3 to remove the check for flags when performing unmap
>       indirect desc
> 
> Xuan Zhuo (9):
>   virtio_ring: rename vring_unmap_state_packed() to
>     vring_unmap_extra_packed()
>   virtio_ring: remove flags check for unmap split indirect desc
>   virtio_ring: remove flags check for unmap packed indirect desc
>   virtio_ring: virtqueue_add() support premapped
>   virtio_ring: split: virtqueue_add_split() support premapped
>   virtio_ring: packed: virtqueue_add_packed() support premapped
>   virtio_ring: add api virtio_dma_map() for advance dma
>   virtio_ring: introduce virtqueue_add_outbuf_premapped()
>   virtio_net: xdp xmit use virtio dma api
> 
>  drivers/net/virtio_net.c     |  42 +++++-
>  drivers/virtio/virtio_ring.c | 280 ++++++++++++++++++++++++++---------
>  include/linux/virtio.h       |  12 ++
>  3 files changed, 254 insertions(+), 80 deletions(-)
> 
> --
> 2.31.0

_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

  parent reply	other threads:[~2022-03-30  6:34 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-24 11:03 [PATCH v2 0/9] virtio: support advance DMA Xuan Zhuo
2022-02-24 11:03 ` Xuan Zhuo
2022-02-24 11:03 ` [PATCH v2 1/9] virtio_ring: rename vring_unmap_state_packed() to vring_unmap_extra_packed() Xuan Zhuo
2022-02-24 11:03   ` Xuan Zhuo
2022-02-24 11:03 ` [PATCH v2 2/9] virtio_ring: remove flags check for unmap split indirect desc Xuan Zhuo
2022-02-24 11:03   ` Xuan Zhuo
2022-02-24 11:03 ` [PATCH v2 3/9] virtio_ring: remove flags check for unmap packed " Xuan Zhuo
2022-02-24 11:03   ` Xuan Zhuo
2022-02-24 11:03 ` [PATCH v2 4/9] virtio_ring: virtqueue_add() support premapped Xuan Zhuo
2022-02-24 11:03   ` Xuan Zhuo
2022-02-24 11:03 ` [PATCH v2 5/9] virtio_ring: split: virtqueue_add_split() " Xuan Zhuo
2022-02-24 11:03   ` Xuan Zhuo
2022-02-24 11:03 ` [PATCH v2 6/9] virtio_ring: packed: virtqueue_add_packed() " Xuan Zhuo
2022-02-24 11:03   ` Xuan Zhuo
2022-02-24 11:04 ` [PATCH v2 7/9] virtio_ring: add api virtio_dma_map() for advance dma Xuan Zhuo
2022-02-24 11:04   ` Xuan Zhuo
2022-02-24 11:04 ` [PATCH v2 8/9] virtio_ring: introduce virtqueue_add_outbuf_premapped() Xuan Zhuo
2022-02-24 11:04   ` Xuan Zhuo
2022-02-24 11:04 ` [PATCH v2 9/9] virtio_net: xdp xmit use virtio dma api Xuan Zhuo
2022-02-24 11:04   ` Xuan Zhuo
2022-03-04 16:38   ` Michael S. Tsirkin
2022-03-04 16:38     ` Michael S. Tsirkin
2022-03-30  6:33 ` Michael S. Tsirkin [this message]
2022-03-30  6:33   ` [PATCH v2 0/9] virtio: support advance DMA Michael S. Tsirkin
2022-03-30  6:56   ` Jason Wang
2022-03-30  6:56     ` Jason Wang
2022-03-30  6:58     ` Xuan Zhuo
2022-03-30  6:58       ` Xuan Zhuo
2022-03-30  8:38       ` Jason Wang
2022-03-30  8:38         ` Jason Wang
2022-03-30  9:03         ` Xuan Zhuo
2022-03-30  9:03           ` Xuan Zhuo
2022-03-30 10:51           ` Michael S. Tsirkin
2022-03-30 10:51             ` Michael S. Tsirkin
2022-03-30 10:51             ` Xuan Zhuo
2022-03-30 10:51               ` Xuan Zhuo
2022-03-30 10:58               ` Michael S. Tsirkin
2022-03-30 10:58                 ` Michael S. Tsirkin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220330023258-mutt-send-email-mst@kernel.org \
    --to=mst@redhat.com \
    --cc=ast@kernel.org \
    --cc=bpf@vger.kernel.org \
    --cc=daniel@iogearbox.net \
    --cc=davem@davemloft.net \
    --cc=hawk@kernel.org \
    --cc=jasowang@redhat.com \
    --cc=john.fastabend@gmail.com \
    --cc=kuba@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=virtualization@lists.linux-foundation.org \
    --cc=xuanzhuo@linux.alibaba.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.