From: Pavel Begunkov Date: Sun, 30 Nov 2025 23:35:17 +0000 (+0000) Subject: net: page_pool: sanitise allocation order X-Git-Url: https://gentwo.org/gitweb/?a=commitdiff_plain;h=9954464d737dd12f12b274d3da46397e3656f079;p=linux%2F.git net: page_pool: sanitise allocation order We're going to give more control over rx buffer sizes to user space, and since we can't always rely on driver validation, let's sanitise it in page_pool_init() as well. Note that we only need to reject over MAX_PAGE_ORDER allocations for normal page pools, as current memory providers don't need to use the buddy allocator and must check the order on init.i Suggested-by: Stanislav Fomichev Reviewed-by: Mina Almasry Signed-off-by: Pavel Begunkov Link: https://patch.msgid.link/77ad83c1aec66cbd00e7b3952f74bc3b7a988150.1764542851.git.asml.silence@gmail.com Signed-off-by: Jakub Kicinski --- diff --git a/net/core/page_pool.c b/net/core/page_pool.c index a085fd199ff0..265a729431bb 100644 --- a/net/core/page_pool.c +++ b/net/core/page_pool.c @@ -301,6 +301,9 @@ static int page_pool_init(struct page_pool *pool, } static_branch_inc(&page_pool_mem_providers); + } else if (pool->p.order > MAX_PAGE_ORDER) { + err = -EINVAL; + goto free_ptr_ring; } return 0;