kernel-fxtec-pro1x/drivers/atm
Xin Xiong fea1298d57 atm: fix atm_dev refcnt leaks in atmtcp_remove_persistent
[ Upstream commit 51875dad43b44241b46a569493f1e4bfa0386d86 ]

atmtcp_remove_persistent() invokes atm_dev_lookup(), which returns a
reference of atm_dev with increased refcount or NULL if fails.

The refcount leaks issues occur in two error handling paths. If
dev_data->persist is zero or PRIV(dev)->vcc isn't NULL, the function
returns 0 without decreasing the refcount kept by a local variable,
resulting in refcount leaks.

Fix the issue by adding atm_dev_put() before returning 0 both when
dev_data->persist is zero or PRIV(dev)->vcc isn't NULL.

Signed-off-by: Xin Xiong <xiongx18@fudan.edu.cn>
Signed-off-by: Xiyu Yang <xiyuyang19@fudan.edu.cn>
Signed-off-by: Xin Tan <tanxin.ctf@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-08-11 15:32:33 +02:00
..
.gitignore
adummy.c
ambassador.c
ambassador.h
atmtcp.c
eni.c
eni.h
firestream.c
firestream.h
fore200e.c
fore200e.h
he.c
he.h
horizon.c
horizon.h
idt77105.c
idt77105.h
idt77252.c
idt77252.h
idt77252_tables.h
iphase.c
iphase.h
Kconfig
lanai.c
Makefile
midway.h
nicstar.c
nicstar.h
nicstarmac.c
nicstarmac.copyright
solos-attrlist.c
solos-pci.c
suni.c
suni.h
tonga.h
uPD98401.h
uPD98402.c
uPD98402.h
zatm.c
zatm.h
zeprom.h