]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.14.124/net-mvneta-fix-err-code-path-of-probe.patch
Linux 4.14.124
[thirdparty/kernel/stable-queue.git] / releases / 4.14.124 / net-mvneta-fix-err-code-path-of-probe.patch
1 From foo@baz Fri 31 May 2019 03:24:14 PM PDT
2 From: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
3 Date: Mon, 27 May 2019 11:04:17 +0000
4 Subject: net: mvneta: Fix err code path of probe
5
6 From: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
7
8 [ Upstream commit d484e06e25ebb937d841dac02ac1fe76ec7d4ddd ]
9
10 Fix below issues in err code path of probe:
11 1. we don't need to unregister_netdev() because the netdev isn't
12 registered.
13 2. when register_netdev() fails, we also need to destroy bm pool for
14 HWBM case.
15
16 Fixes: dc35a10f68d3 ("net: mvneta: bm: add support for hardware buffer management")
17 Signed-off-by: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
18 Signed-off-by: David S. Miller <davem@davemloft.net>
19 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
20 ---
21 drivers/net/ethernet/marvell/mvneta.c | 4 +---
22 1 file changed, 1 insertion(+), 3 deletions(-)
23
24 --- a/drivers/net/ethernet/marvell/mvneta.c
25 +++ b/drivers/net/ethernet/marvell/mvneta.c
26 @@ -4350,7 +4350,7 @@ static int mvneta_probe(struct platform_
27 err = register_netdev(dev);
28 if (err < 0) {
29 dev_err(&pdev->dev, "failed to register\n");
30 - goto err_free_stats;
31 + goto err_netdev;
32 }
33
34 netdev_info(dev, "Using %s mac address %pM\n", mac_from,
35 @@ -4369,13 +4369,11 @@ static int mvneta_probe(struct platform_
36 return 0;
37
38 err_netdev:
39 - unregister_netdev(dev);
40 if (pp->bm_priv) {
41 mvneta_bm_pool_destroy(pp->bm_priv, pp->pool_long, 1 << pp->id);
42 mvneta_bm_pool_destroy(pp->bm_priv, pp->pool_short,
43 1 << pp->id);
44 }
45 -err_free_stats:
46 free_percpu(pp->stats);
47 err_free_ports:
48 free_percpu(pp->ports);