netmem: fix skb_frag_address_safe with unreadable skbs
[ Upstream commit 4672aec56d2e8edabcb74c3e2320301d106a377e ] skb_frag_address_safe() needs a check that the skb_frag_page exists check similar to skb_frag_address(). Cc: ap420073@gmail.com Signed-off-by: Mina Almasry <almasrymina@google.com> Acked-by: Stanislav Fomichev <sdf@fomichev.me> Link: https://patch.msgid.link/20250619175239.3039329-1-almasrymina@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
cca5b9c51c
commit
467e5c00ce
@@ -3104,7 +3104,13 @@ static inline void *skb_frag_address(const skb_frag_t *frag)
|
||||
*/
|
||||
static inline void *skb_frag_address_safe(const skb_frag_t *frag)
|
||||
{
|
||||
void *ptr = page_address(skb_frag_page(frag));
|
||||
struct page *page = skb_frag_page(frag);
|
||||
void *ptr;
|
||||
|
||||
if (!page)
|
||||
return NULL;
|
||||
|
||||
ptr = page_address(page);
|
||||
if (unlikely(!ptr))
|
||||
return NULL;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user