| From 9a5846bbcd170262d4c9a0e2602f7712b7644db0 Mon Sep 17 00:00:00 2001 |
| From: Ying Xue <ying.xue@windriver.com> |
| Date: Tue, 19 Nov 2013 18:09:27 +0800 |
| Subject: atm: idt77252: fix dev refcnt leak |
| |
| From: Ying Xue <ying.xue@windriver.com> |
| |
| [ Upstream commit b5de4a22f157ca345cdb3575207bf46402414bc1 ] |
| |
| init_card() calls dev_get_by_name() to get a network deceive. But it |
| doesn't decrease network device reference count after the device is |
| used. |
| |
| Signed-off-by: Ying Xue <ying.xue@windriver.com> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/atm/idt77252.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/atm/idt77252.c |
| +++ b/drivers/atm/idt77252.c |
| @@ -3511,7 +3511,7 @@ static int init_card(struct atm_dev *dev |
| tmp = dev_get_by_name(&init_net, tname); /* jhs: was "tmp = dev_get(tname);" */ |
| if (tmp) { |
| memcpy(card->atmdev->esi, tmp->dev_addr, 6); |
| - |
| + dev_put(tmp); |
| printk("%s: ESI %pM\n", card->name, card->atmdev->esi); |
| } |
| /* |