summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShaun Ruffell <sruffell@digium.com>2012-06-22 17:59:34 +0000
committerShaun Ruffell <sruffell@digium.com>2012-06-22 17:59:34 +0000
commit94ef90ea980e6aec0d6f7843d7555ed5d9bf7c5e (patch)
treed647800347bcda496e9f356206ec2a12d815c09b
parent514f71287171bd37fadab3a4be7b1faf2635fc30 (diff)
wcte12xp: Destroy the cache if the linemode is not recognized.
Fixes the following errors when running: # modprobe wcte12xp default_linemode=blah; modprobe wcte12xp default_linemode=blah 'blah' is an unknown span type.kmem_cache_create: duplicate cache wcte12xp Call Trace: [<ffffffff800394cf>] kmem_cache_create+0x572/0x5ac [<ffffffff800a926e>] __link_module+0x0/0x18 [<ffffffff80064624>] __down_read+0x12/0x92 [<ffffffff8002224d>] __up_read+0x19/0x7f [<ffffffff8818b01f>] :wcte12xp:te12xp_init+0x1f/0xde [<ffffffff800a9e37>] sys_init_module+0xbd/0x206 [<ffffffff8005d28d>] tracesys+0xd5/0xe0 Reported-by: James Brown <jbrown@digium.com> Signed-off-by: Shaun Ruffell <sruffell@digium.com> git-svn-id: http://svn.asterisk.org/svn/dahdi/linux/trunk@10695 a0bf4364-ded3-4de4-8d8a-66a801d63aff
-rw-r--r--drivers/dahdi/wcte12xp/base.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/dahdi/wcte12xp/base.c b/drivers/dahdi/wcte12xp/base.c
index 2cd7d0b..09aabae 100644
--- a/drivers/dahdi/wcte12xp/base.c
+++ b/drivers/dahdi/wcte12xp/base.c
@@ -2933,6 +2933,7 @@ static int __init te12xp_init(void)
strcasecmp(default_linemode, "e1")) {
pr_err("'%s' is an unknown span type.", default_linemode);
default_linemode = "auto";
+ kmem_cache_destroy(cmd_cache);
return -EINVAL;
}
res = dahdi_pci_module(&te12xp_driver);