From: Bui Quang Minh Date: Thu, 22 May 2025 04:01:15 +0000 (+0700) Subject: xsk: add missing virtual address conversion for page X-Git-Tag: v6.16-rc1~132^2~24 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=28fcb4b56f929f4627f3c4c6c6dc61b292b8e55d;p=linux-block.git xsk: add missing virtual address conversion for page In commit 7ead4405e06f ("xsk: convert xdp_copy_frags_from_zc() to use page_pool_dev_alloc()"), when converting from netmem to page, I missed a call to page_address() around skb_frag_page(frag) to get the virtual address of the page. This commit uses skb_frag_address() helper to fix the issue. Fixes: 7ead4405e06f ("xsk: convert xdp_copy_frags_from_zc() to use page_pool_dev_alloc()") Reviewed-by: Alexander Lobakin Signed-off-by: Bui Quang Minh Link: https://patch.msgid.link/20250522040115.5057-1-minhquangbui99@gmail.com Signed-off-by: Paolo Abeni --- diff --git a/net/core/xdp.c b/net/core/xdp.c index e6f22ba61c1e..491334b9b8be 100644 --- a/net/core/xdp.c +++ b/net/core/xdp.c @@ -709,8 +709,7 @@ static noinline bool xdp_copy_frags_from_zc(struct sk_buff *skb, return false; } - memcpy(page_address(page) + offset, - skb_frag_page(frag) + skb_frag_off(frag), + memcpy(page_address(page) + offset, skb_frag_address(frag), LARGEST_ALIGN(len)); __skb_fill_page_desc_noacc(sinfo, i, page, offset, len);