Re: [PATCH vhost v13 05/12] virtio_ring: introduce virtqueue_dma_dev()
From: Jason Wang <jasowang@redhat.com>
Date: 2023-08-16 01:14:06
Also in:
bpf, virtualization
On Tue, Aug 15, 2023 at 5:40 PM Xuan Zhuo [off-list ref] wrote:
On Tue, 15 Aug 2023 15:50:23 +0800, Jason Wang [off-list ref] wrote:quoted
On Tue, Aug 15, 2023 at 2:32 PM Xuan Zhuo [off-list ref] wrote:quoted
Hi, Jason Could you skip this patch?I'm fine with either merging or dropping this.quoted
Let we review other patches firstly?I will be on vacation soon, and won't have time to do this until next week.Have a happly vacation.quoted
But I spot two possible "issues": 1) the DMA metadata were stored in the headroom of the page, this breaks frags coalescing, we need to benchmark it's impactNot every page, just the first page of the COMP pages. So I think there is no impact.
Nope, see this:
if (SKB_FRAG_PAGE_ORDER &&
!static_branch_unlikely(&net_high_order_alloc_disable_key)) {
/* Avoid direct reclaim but allow kswapd to wake */
pfrag->page = alloc_pages((gfp & ~__GFP_DIRECT_RECLAIM) |
__GFP_COMP | __GFP_NOWARN |
__GFP_NORETRY,
SKB_FRAG_PAGE_ORDER);
if (likely(pfrag->page)) {
pfrag->size = PAGE_SIZE << SKB_FRAG_PAGE_ORDER;
return true;
}
}
The comp page might be disabled due to the SKB_FRAG_PAGE_ORDER and
net_high_order_alloc_disable_key.
quoted
2) pre mapped DMA addresses were not reused in the case of XDP_TX/XDP_REDIRECTBecause that the tx is not the premapped mode.
Yes, we can optimize this on top. Thanks
Thanks.quoted
I see Michael has merge this series so I'm fine to let it go first. Thanksquoted
Thanks.