aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Eversberg <andreas@eversberg.eu>2008-12-28 16:31:26 +0100
committerKarsten Keil <kkeil@suse.de>2009-01-09 22:44:29 +0100
commitc6a2e587e5b28177eabfc2db4d5abd25b87604f2 (patch)
tree2d13c714581a4915e3277665a8e0dcd6f500c2ba
parentc3b3cdeba5a671ce5d0064c52c8a85f5b1e72e92 (diff)
downloadkernel_samsung_aries-c6a2e587e5b28177eabfc2db4d5abd25b87604f2.zip
kernel_samsung_aries-c6a2e587e5b28177eabfc2db4d5abd25b87604f2.tar.gz
kernel_samsung_aries-c6a2e587e5b28177eabfc2db4d5abd25b87604f2.tar.bz2
mISDN: Fix kernel crash when doing hardware conference with more than two members
Fix kernel crash when doing hardware conference with more than two members. Removed DTMF threshold notice when debugging is disabled. Signed-off-by: Andreas Eversberg <andreas@eversberg.eu> Signed-off-by: Karsten Keil <kkeil@suse.de>
-rw-r--r--drivers/isdn/mISDN/dsp_cmx.c7
-rw-r--r--drivers/isdn/mISDN/dsp_core.c5
2 files changed, 6 insertions, 6 deletions
diff --git a/drivers/isdn/mISDN/dsp_cmx.c b/drivers/isdn/mISDN/dsp_cmx.c
index 02f6434..0ac67bf 100644
--- a/drivers/isdn/mISDN/dsp_cmx.c
+++ b/drivers/isdn/mISDN/dsp_cmx.c
@@ -927,10 +927,6 @@ conf_software:
/* for more than two members.. */
- /* in case of hdlc, we change to software */
- if (dsp->hdlc)
- goto conf_software;
-
/* if all members already have the same conference */
if (all_conf)
return;
@@ -941,6 +937,9 @@ conf_software:
if (current_conf >= 0) {
join_members:
list_for_each_entry(member, &conf->mlist, list) {
+ /* in case of hdlc, change to software */
+ if (member->dsp->hdlc)
+ goto conf_software;
/* join to current conference */
if (member->dsp->hfc_conf == current_conf)
continue;
diff --git a/drivers/isdn/mISDN/dsp_core.c b/drivers/isdn/mISDN/dsp_core.c
index 7e60cb9..3083338 100644
--- a/drivers/isdn/mISDN/dsp_core.c
+++ b/drivers/isdn/mISDN/dsp_core.c
@@ -301,8 +301,9 @@ dsp_control_req(struct dsp *dsp, struct mISDNhead *hh, struct sk_buff *skb)
if (dsp_debug & DEBUG_DSP_CORE)
printk(KERN_DEBUG "%s: start dtmf\n", __func__);
if (len == sizeof(int)) {
- printk(KERN_NOTICE "changing DTMF Threshold "
- "to %d\n", *((int *)data));
+ if (dsp_debug & DEBUG_DSP_CORE)
+ printk(KERN_NOTICE "changing DTMF Threshold "
+ "to %d\n", *((int *)data));
dsp->dtmf.treshold = (*(int *)data) * 10000;
}
/* init goertzel */