Thread (26 messages) 26 messages, 3 authors, 2022-01-11

Re: [PATCH 2/6] virtio: split: alloc indirect desc with extra

From: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Date: 2022-01-10 07:24:03

On Mon, 10 Jan 2022 14:43:39 +0800, Jason Wang [off-list ref] wrote:
在 2022/1/7 下午2:33, Xuan Zhuo 写道:
quoted
In the scenario where indirect is not used, each desc corresponds to an
extra, which is used to record information such as dma, flags, and
next.

In the scenario of using indirect, the assigned desc does not have the
corresponding extra record dma information, and the dma information must
be obtained from the desc when unmap.

This patch allocates the corresponding extra array when indirect desc is
allocated. This has these advantages:
1. Record the dma information of desc, no need to read desc when unmap
2. It will be more convenient and unified in processing
3. Some additional information can be recorded in extra, which will be
    used in subsequent patches.

Two questions:

1) Is there any performance number for this change? I guess it gives
more stress on the cache.
I will add performance test data in the next version.
2) Is there a requirement to mix the pre mapped sg with unmapped sg? If
not, a per virtqueue flag looks sufficient
There is this requirement. For example, in the case of AF_XDP, a patcket
contains two parts, one is virtio_net_hdr, and the other is the actual data
packet from AF_XDP. The former is unmapped sg, and the latter is pre mapped sg.

Thanks.
Thanks
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help