Clamp to 32k instead of returning error. Please find discussion at https://lore.kernel.org/lkml/ CY4PR1801MB1911E15D518A77535F6E51E2D308A@CY4PR1801MB1911. namprd18.prod.outlook.com/T/ Fixes: ff7d6b27f894 ("page_pool: refurbish version of page_pool code") Signed-off-by: Ratheesh Kannoth <rkannoth@xxxxxxxxxxx> --- ChangeLog: v0 -> v1: Rebase && commit message changes --- net/core/page_pool.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/net/core/page_pool.c b/net/core/page_pool.c index a3e12a61d456..e9dc8d8966ad 100644 --- a/net/core/page_pool.c +++ b/net/core/page_pool.c @@ -171,9 +171,10 @@ static int page_pool_init(struct page_pool *pool, if (pool->p.pool_size) ring_qsize = pool->p.pool_size; - /* Sanity limit mem that can be pinned down */ + /* Cap queue size to 32k */ if (ring_qsize > 32768) - return -E2BIG; + ring_qsize = 32768; + /* DMA direction is either DMA_FROM_DEVICE or DMA_BIDIRECTIONAL. * DMA_BIDIRECTIONAL is for allowing page used for DMA sending, -- 2.25.1