projects
/
platform
/
kernel
/
linux-starfive.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
f111606
)
ethernet: tundra: free irq when alloc ring failed in tsi108_open()
author
Zhengchao Shao
<shaozhengchao@huawei.com>
Wed, 9 Nov 2022 04:40:16 +0000
(12:40 +0800)
committer
Paolo Abeni
<pabeni@redhat.com>
Thu, 10 Nov 2022 14:39:08 +0000
(15:39 +0100)
When alloc tx/rx ring failed in tsi108_open(), it doesn't free irq. Fix
it.
Fixes:
5e123b844a1c
("[PATCH] Add tsi108/9 On Chip Ethernet device driver support")
Signed-off-by: Zhengchao Shao <shaozhengchao@huawei.com>
Link:
https://lore.kernel.org/r/20221109044016.126866-1-shaozhengchao@huawei.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/tundra/tsi108_eth.c
patch
|
blob
|
history
diff --git
a/drivers/net/ethernet/tundra/tsi108_eth.c
b/drivers/net/ethernet/tundra/tsi108_eth.c
index
2cd2afc
..
d09d352
100644
(file)
--- a/
drivers/net/ethernet/tundra/tsi108_eth.c
+++ b/
drivers/net/ethernet/tundra/tsi108_eth.c
@@
-1290,12
+1290,15
@@
static int tsi108_open(struct net_device *dev)
data->rxring = dma_alloc_coherent(&data->pdev->dev, rxring_size,
&data->rxdma, GFP_KERNEL);
- if (!data->rxring)
+ if (!data->rxring) {
+ free_irq(data->irq_num, dev);
return -ENOMEM;
+ }
data->txring = dma_alloc_coherent(&data->pdev->dev, txring_size,
&data->txdma, GFP_KERNEL);
if (!data->txring) {
+ free_irq(data->irq_num, dev);
dma_free_coherent(&data->pdev->dev, rxring_size, data->rxring,
data->rxdma);
return -ENOMEM;