Thread (5 messages) flat view 5 messages, 4 authors, 2021-09-24

Re: [PATCH 1/1] drivers: net: mhi: fix error path in mhi_net_newlink

From: Daniele Palmas <hidden>
Date: 2021-09-24 11:12:04

Hi Mani,

Il giorno ven 24 set 2021 alle ore 11:49 Manivannan Sadhasivam
[off-list ref] ha scritto:
On Fri, Sep 24, 2021 at 11:26:52AM +0200, Daniele Palmas wrote:
quoted
Fix double free_netdev when mhi_prepare_for_transfer fails.

Fixes: 3ffec6a14f24 ("net: Add mhi-net driver")
Signed-off-by: Daniele Palmas <redacted>
I guess this patch should be backported to stable kernels. So please CC stable
list.
Just v5.14.x seems to be affected by the same issue, but it requires a
slightly different patch: I'll try to take care of that.

Thanks,
Daniele
Reviewed-by: Manivannan Sadhasivam <mani@kernel.org>

Thanks,
Mani
quoted
---
 drivers/net/mhi_net.c | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/drivers/net/mhi_net.c b/drivers/net/mhi_net.c
index d127eb6e9257..aaa628f859fd 100644
--- a/drivers/net/mhi_net.c
+++ b/drivers/net/mhi_net.c
@@ -321,7 +321,7 @@ static int mhi_net_newlink(struct mhi_device *mhi_dev, struct net_device *ndev)
      /* Start MHI channels */
      err = mhi_prepare_for_transfer(mhi_dev);
      if (err)
-             goto out_err;
+             return err;

      /* Number of transfer descriptors determines size of the queue */
      mhi_netdev->rx_queue_sz = mhi_get_free_desc_count(mhi_dev, DMA_FROM_DEVICE);
@@ -331,10 +331,6 @@ static int mhi_net_newlink(struct mhi_device *mhi_dev, struct net_device *ndev)
              return err;

      return 0;
-
-out_err:
-     free_netdev(ndev);
-     return err;
 }

 static void mhi_net_dellink(struct mhi_device *mhi_dev, struct net_device *ndev)
--
2.30.2
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help