summary refs log tree commit diff
diff options
context:
space:
mode:
authorTejun Heo <tj@kernel.org>2010-12-24 15:59:05 +0100
committerTejun Heo <tj@kernel.org>2010-12-24 15:59:05 +0100
commit7fa5e85a0ab9ed5d2d8b77eec7976c88a5911bda (patch)
tree7480cccdf124ad659ccd069af471c61deaff6d0f
parentc8efcc2589464ac70255bb83e10cad61c7c6d295 (diff)
downloadlinux-7fa5e85a0ab9ed5d2d8b77eec7976c88a5911bda.tar.gz
isdn/capi: unregister capictr notifier after init failure
capidrv_init() could leave capictr notifier dangling after init
failure.  Fix it.

Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Jan Kiszka <jan.kiszka@web.de>
-rw-r--r--drivers/isdn/capi/capidrv.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/isdn/capi/capidrv.c b/drivers/isdn/capi/capidrv.c
index e54e79d4e2c1..92607ed25e2e 100644
--- a/drivers/isdn/capi/capidrv.c
+++ b/drivers/isdn/capi/capidrv.c
@@ -2297,6 +2297,7 @@ static int __init capidrv_init(void)
 
 	errcode = capi20_get_profile(0, &profile);
 	if (errcode != CAPI_NOERROR) {
+		unregister_capictr_notifier(&capictr_nb);
 		capi20_release(&global.ap);
 		return -EIO;
 	}