On Wed, Jul 08, 2026 at 12:50:07PM +0200, Paolo Abeni wrote:
On 7/7/26 10:36 PM, Mina Almasry wrote:
On Wed, Jul 1, 2026 at 12:22 PM Bobby Eshleman bobbyeshleman@gmail.com wrote:
From: Bobby Eshleman bobbyeshleman@meta.com
Every devmem dmabuf binding today hands the page_pool PAGE_SIZE niovs. This caps a single RX descriptor at PAGE_SIZE, burning CPU on buffer churn for large flows.
Add a bind-time netlink attribute, NETDEV_A_DMABUF_RX_BUF_SIZE, that lets userspace request a larger niov size. The value must be a power of two >= PAGE_SIZE.
Measurements
Checkpatch complains about this separator usage:
ERROR: Invalid commit separator - some tools may have problems applying this
#15:
Please replace or remove it in the next revision
@@ -90,16 +90,17 @@ net_devmem_alloc_dmabuf(struct net_devmem_dmabuf_binding *binding) struct dmabuf_genpool_chunk_owner *owner; unsigned long dma_addr; struct net_iov *niov;
ssize_t offset;ssize_t index;
size_t offset;size_t index;nit: I would keep this signed. Some of the most frustrating issues I ran into is some of the underflowing and then passing a > check or something. Although if the LLM is not complaining about this particular case, there is probably no issue with it. I also notice a lot of existing code that deals with indexes and offsets goes for signed.
At very least the above change should go in a separate patch, as is quite unrelated from the rest.
/P
Sounds good, I'll drop the type change.
Thanks, Bobby