[dahdi-commits] dahdi/linux.git branch "master" updated.
SVN commits to the DAHDI project
dahdi-commits at lists.digium.com
Tue Jan 20 08:44:31 CST 2015
branch "master" has been updated
via 4d86a8f3f690ee9bb9429e17cc03856c6c2dc760 (commit)
via e005030995d5942a91095add9b8dee9390c96dd1 (commit)
from ee691c23f4069a1097cab8066c9787c68ee03ea8 (commit)
Summary of changes:
drivers/dahdi/dahdi-base.c | 4 ++++
drivers/dahdi/dahdi_dynamic_eth.c | 5 ++++-
2 files changed, 8 insertions(+), 1 deletion(-)
- Log -----------------------------------------------------------------
commit 4d86a8f3f690ee9bb9429e17cc03856c6c2dc760
Author: Shaun Ruffell <sruffell at digium.com>
Date: Mon Dec 22 11:21:28 2014 -0600
dahdi: struct file.f_dentry macro was removed in kernel 3.19
This is necessary to build against kernel version 3.19 since commit
(78d28e651f97866d608d9b41 "kill f_dentry macro") [1]
[1] https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=78d28e651
Signed-off-by: Shaun Ruffell <sruffell at digium.com>
Signed-off-by: Russ Meyerriecks <rmeyerriecks at digium.com>
diff --git a/drivers/dahdi/dahdi-base.c b/drivers/dahdi/dahdi-base.c
index 0892734..f2caad0 100644
--- a/drivers/dahdi/dahdi-base.c
+++ b/drivers/dahdi/dahdi-base.c
@@ -98,7 +98,11 @@
#define chan_to_netdev(h) ((h)->hdlcnetdev->netdev)
/* macro-oni for determining a unit (channel) number */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20)
#define UNIT(file) MINOR(file->f_dentry->d_inode->i_rdev)
+#else
+#define UNIT(file) MINOR(file->f_path.dentry->d_inode->i_rdev)
+#endif
EXPORT_SYMBOL(dahdi_transcode_fops);
EXPORT_SYMBOL(dahdi_init_tone_state);
commit e005030995d5942a91095add9b8dee9390c96dd1
Author: Shaun Ruffell <sruffell at digium.com>
Date: Wed Dec 10 08:39:39 2014 -0600
dahdi_dynamic: Release reference count on network device when destroying dynamic spans.
It was reported that for VLAN interfaces, failing to release this reference
count will prevent a system from rebooting properly, resulting in the need to
power cycle.
Reported-by: Assen Totin
Internal-Issue-ID: DAHLIN-343
Signed-off-by: Shaun Ruffell <sruffell at digium.com>
Signed-off-by: Russ Meyerriecks <rmeyerriecks at digium.com>
diff --git a/drivers/dahdi/dahdi_dynamic_eth.c b/drivers/dahdi/dahdi_dynamic_eth.c
index e92ba30..ab63d71 100644
--- a/drivers/dahdi/dahdi_dynamic_eth.c
+++ b/drivers/dahdi/dahdi_dynamic_eth.c
@@ -266,6 +266,7 @@ static void ztdeth_destroy(struct dahdi_dynamic *dyn)
struct ztdeth *z = dyn->pvt;
unsigned long flags;
struct ztdeth *prev=NULL, *cur;
+
spin_lock_irqsave(&zlock, flags);
cur = zdevs;
while(cur) {
@@ -279,12 +280,14 @@ static void ztdeth_destroy(struct dahdi_dynamic *dyn)
prev = cur;
cur = cur->next;
}
+ spin_unlock_irqrestore(&zlock, flags);
+
if (cur == z) { /* Successfully removed */
dyn->pvt = NULL;
+ dev_put(z->dev);
printk(KERN_INFO "TDMoE: Removed interface for %s\n", z->span->name);
kfree(z);
}
- spin_unlock_irqrestore(&zlock, flags);
}
static int ztdeth_create(struct dahdi_dynamic *dyn, const char *addr)
-----------------------------------------------------------------------
--
dahdi/linux.git
More information about the dahdi-commits
mailing list