]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
gve: add missing NULL check for gve_alloc_pending_packet() in TX DQO
authorAlok Tiwari <alok.a.tiwari@oracle.com>
Mon, 2 Jun 2025 10:34:29 +0000 (03:34 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 27 Jun 2025 10:05:17 +0000 (11:05 +0100)
[ Upstream commit 12c331b29c7397ac3b03584e12902990693bc248 ]

gve_alloc_pending_packet() can return NULL, but gve_tx_add_skb_dqo()
did not check for this case before dereferencing the returned pointer.

Add a missing NULL check to prevent a potential NULL pointer
dereference when allocation fails.

This improves robustness in low-memory scenarios.

Fixes: a57e5de476be ("gve: DQO: Add TX path")
Signed-off-by: Alok Tiwari <alok.a.tiwari@oracle.com>
Reviewed-by: Mina Almasry <almasrymina@google.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/google/gve/gve_tx_dqo.c

index dfbb524bf7392b84120443b2481a0c4a2059a9d1..c6f1f4fddf8a74e4057eca75a8ff6f21206f5eab 100644 (file)
@@ -462,6 +462,9 @@ static int gve_tx_add_skb_no_copy_dqo(struct gve_tx_ring *tx,
        int i;
 
        pkt = gve_alloc_pending_packet(tx);
+       if (!pkt)
+               return -ENOMEM;
+
        pkt->skb = skb;
        pkt->num_bufs = 0;
        completion_tag = pkt - tx->dqo.pending_packets;