diff options
author | Andreas Eversberg <andreas@eversberg.eu> | 2008-12-28 10:31:26 -0500 |
---|---|---|
committer | Karsten Keil <kkeil@suse.de> | 2009-01-09 16:44:29 -0500 |
commit | c6a2e587e5b28177eabfc2db4d5abd25b87604f2 (patch) | |
tree | 2d13c714581a4915e3277665a8e0dcd6f500c2ba /drivers/isdn/mISDN | |
parent | c3b3cdeba5a671ce5d0064c52c8a85f5b1e72e92 (diff) |
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>
Diffstat (limited to 'drivers/isdn/mISDN')
-rw-r--r-- | drivers/isdn/mISDN/dsp_cmx.c | 7 | ||||
-rw-r--r-- | drivers/isdn/mISDN/dsp_core.c | 5 |
2 files changed, 6 insertions, 6 deletions
diff --git a/drivers/isdn/mISDN/dsp_cmx.c b/drivers/isdn/mISDN/dsp_cmx.c index 02f643456b16..0ac67bff303a 100644 --- a/drivers/isdn/mISDN/dsp_cmx.c +++ b/drivers/isdn/mISDN/dsp_cmx.c | |||
@@ -927,10 +927,6 @@ conf_software: | |||
927 | 927 | ||
928 | /* for more than two members.. */ | 928 | /* for more than two members.. */ |
929 | 929 | ||
930 | /* in case of hdlc, we change to software */ | ||
931 | if (dsp->hdlc) | ||
932 | goto conf_software; | ||
933 | |||
934 | /* if all members already have the same conference */ | 930 | /* if all members already have the same conference */ |
935 | if (all_conf) | 931 | if (all_conf) |
936 | return; | 932 | return; |
@@ -941,6 +937,9 @@ conf_software: | |||
941 | if (current_conf >= 0) { | 937 | if (current_conf >= 0) { |
942 | join_members: | 938 | join_members: |
943 | list_for_each_entry(member, &conf->mlist, list) { | 939 | list_for_each_entry(member, &conf->mlist, list) { |
940 | /* in case of hdlc, change to software */ | ||
941 | if (member->dsp->hdlc) | ||
942 | goto conf_software; | ||
944 | /* join to current conference */ | 943 | /* join to current conference */ |
945 | if (member->dsp->hfc_conf == current_conf) | 944 | if (member->dsp->hfc_conf == current_conf) |
946 | continue; | 945 | continue; |
diff --git a/drivers/isdn/mISDN/dsp_core.c b/drivers/isdn/mISDN/dsp_core.c index 7e60cb94b5c0..3083338716b2 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) | |||
301 | if (dsp_debug & DEBUG_DSP_CORE) | 301 | if (dsp_debug & DEBUG_DSP_CORE) |
302 | printk(KERN_DEBUG "%s: start dtmf\n", __func__); | 302 | printk(KERN_DEBUG "%s: start dtmf\n", __func__); |
303 | if (len == sizeof(int)) { | 303 | if (len == sizeof(int)) { |
304 | printk(KERN_NOTICE "changing DTMF Threshold " | 304 | if (dsp_debug & DEBUG_DSP_CORE) |
305 | "to %d\n", *((int *)data)); | 305 | printk(KERN_NOTICE "changing DTMF Threshold " |
306 | "to %d\n", *((int *)data)); | ||
306 | dsp->dtmf.treshold = (*(int *)data) * 10000; | 307 | dsp->dtmf.treshold = (*(int *)data) * 10000; |
307 | } | 308 | } |
308 | /* init goertzel */ | 309 | /* init goertzel */ |