summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiu Jian <liujian56@huawei.com>2022-12-03 17:42:39 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-12-14 11:28:30 +0100
commitaceec8ab752428d8e151321479e82cc1a40fee2e (patch)
treed31556f0f56c7d708d96ff0a1c87cb3b33d701a6
parentb835d4161bd2ae4c2e4e36ed7ed223e70fdba8da (diff)
downloadomap-aceec8ab752428d8e151321479e82cc1a40fee2e.tar.gz
net: hisilicon: Fix potential use-after-free in hisi_femac_rx()
[ Upstream commit 4640177049549de1a43e9bc49265f0cdfce08cfd ] The skb is delivered to napi_gro_receive() which may free it, after calling this, dereferencing skb may trigger use-after-free. Fixes: 542ae60af24f ("net: hisilicon: Add Fast Ethernet MAC driver") Signed-off-by: Liu Jian <liujian56@huawei.com> Link: https://lore.kernel.org/r/20221203094240.1240211-1-liujian56@huawei.com Signed-off-by: Paolo Abeni <pabeni@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/net/ethernet/hisilicon/hisi_femac.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/hisilicon/hisi_femac.c b/drivers/net/ethernet/hisilicon/hisi_femac.c
index 2c2808830e95..f29040520ca0 100644
--- a/drivers/net/ethernet/hisilicon/hisi_femac.c
+++ b/drivers/net/ethernet/hisilicon/hisi_femac.c
@@ -295,7 +295,7 @@ static int hisi_femac_rx(struct net_device *dev, int limit)
skb->protocol = eth_type_trans(skb, dev);
napi_gro_receive(&priv->napi, skb);
dev->stats.rx_packets++;
- dev->stats.rx_bytes += skb->len;
+ dev->stats.rx_bytes += len;
next:
pos = (pos + 1) % rxq->num;
if (rx_pkts_num >= limit)