[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250617210950.1338107-1-almasrymina@google.com>
Date: Tue, 17 Jun 2025 21:09:50 +0000
From: Mina Almasry <almasrymina@...gle.com>
To: netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: Mina Almasry <almasrymina@...gle.com>, "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Simon Horman <horms@...nel.org>, ap420073@...il.com
Subject: [PATCH net v1] netmem: fix skb_frag_address_safe with unreadable skbs
skb_frag_address_safe() needs a check that the
skb_frag_page exists check similar to skb_frag_address().
Cc: ap420073@...il.com
Signed-off-by: Mina Almasry <almasrymina@...gle.com>
---
include/linux/skbuff.h | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 5520524c93bf..9d551845e517 100644
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -3665,7 +3665,12 @@ 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));
+ void *ptr;
+
+ if (!skb_frag_page(frag))
+ return NULL;
+
+ ptr = page_address(skb_frag_page(frag));
if (unlikely(!ptr))
return NULL;
base-commit: 7b4ac12cc929e281cf7edc22203e0533790ebc2b
--
2.50.0.rc2.696.g1fc2a0284f-goog
Powered by blists - more mailing lists