summaryrefslogtreecommitdiff
path: root/wcfxs.c
diff options
context:
space:
mode:
authorrussell <russell@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2005-03-31 22:57:19 +0000
committerrussell <russell@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2005-03-31 22:57:19 +0000
commit5fe0a866899dbafdc294eedb33671f603997627c (patch)
tree6fe3c1c367d3642d1affcc5d1d414c7ad5914a4c /wcfxs.c
parentf8130503936dbdc1e1d837f0cefa26ab8d7e7710 (diff)
add use counts to prevent kernel panics (bug #3773)
git-svn-id: http://svn.digium.com/svn/zaptel/branches/v1-0@610 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'wcfxs.c')
-rwxr-xr-xwcfxs.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/wcfxs.c b/wcfxs.c
index 4377298..8a21d9b 100755
--- a/wcfxs.c
+++ b/wcfxs.c
@@ -1660,7 +1660,9 @@ static int wcfxs_open(struct zt_chan *chan)
wc->usecount++;
#ifndef LINUX26
MOD_INC_USE_COUNT;
-#endif
+#else
+ try_module_get(THIS_MODULE);
+#endif
return 0;
}
@@ -1678,6 +1680,8 @@ static int wcfxs_close(struct zt_chan *chan)
wc->usecount--;
#ifndef LINUX26
MOD_DEC_USE_COUNT;
+#else
+ module_put(THIS_MODULE);
#endif
for (x=0;x<wc->cards;x++)
wc->mod.fxs.idletxhookstate[x] = 1;