summaryrefslogtreecommitdiff
path: root/ztd-eth.c
diff options
context:
space:
mode:
authortilghman <tilghman@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2006-06-22 17:28:56 +0000
committertilghman <tilghman@5390a7c7-147a-4af0-8ec9-7488f05a26cb>2006-06-22 17:28:56 +0000
commite7324ee365da30e9b7b18d6baaec5ae21de1894b (patch)
tree8df2074bbe7e472c159c576d83b7a627187ec910 /ztd-eth.c
parente24032b52a39309a73258d024c451726bee3cf84 (diff)
Bug 7284 - Properly lock ztdynamic modules under kernel 2.6
git-svn-id: http://svn.digium.com/svn/zaptel/trunk@1155 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'ztd-eth.c')
-rw-r--r--ztd-eth.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/ztd-eth.c b/ztd-eth.c
index c13a32d..41cc896 100644
--- a/ztd-eth.c
+++ b/ztd-eth.c
@@ -266,6 +266,8 @@ static void ztdeth_destroy(void *pvt)
kfree(z);
#ifndef LINUX26
MOD_DEC_USE_COUNT;
+#else
+ module_put(THIS_MODULE);
#endif
}
}
@@ -359,13 +361,16 @@ static void *ztdeth_create(struct zt_span *span, char *addr)
sprintf(src + strlen(src), "%02x:", z->dev->dev_addr[x]);
sprintf(src + strlen(src), "%02x", z->dev->dev_addr[5]);
printk("TDMoE: Added new interface for %s at %s (addr=%s, src=%s, subaddr=%d)\n", span->name, z->dev->name, addr, src, ntohs(z->subaddr));
-
+
spin_lock_irqsave(&zlock, flags);
z->next = zdevs;
zdevs = z;
spin_unlock_irqrestore(&zlock, flags);
#ifndef LINUX26
MOD_INC_USE_COUNT;
+#else
+ if(!try_module_get(THIS_MODULE))
+ printk("TDMoE: Unable to increment module use count\n");
#endif
}
return z;