aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/isdn/mISDN
diff options
context:
space:
mode:
authorKarsten Keil <isdn@linux-pingi.de>2012-04-25 16:54:48 -0400
committerDavid S. Miller <davem@davemloft.net>2012-04-26 03:10:45 -0400
commit9cf6ace5f5c7981f5df76af3e1b90d77cc3cdece (patch)
tree893417c150ee33709babe214087f0203c2e0377c /drivers/isdn/mISDN
parentefef50a59f5536b94953838b05472eb490f6be09 (diff)
mISDN: DSP scheduling fix (version 2)
dsp_spl_jiffies need to be the same datatype as jiffies (which is ulong). If not, on 64 bit systems it will fallback to schedule the DSP every jiffie tic as soon jiffies become > 2^32. Signed-off-by: Karsten Keil <kkeil@linux-pingi.de> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/isdn/mISDN')
-rw-r--r--drivers/isdn/mISDN/dsp.h4
-rw-r--r--drivers/isdn/mISDN/dsp_cmx.c2
2 files changed, 4 insertions, 2 deletions
diff --git a/drivers/isdn/mISDN/dsp.h b/drivers/isdn/mISDN/dsp.h
index afe4173ae007..fc1733a08845 100644
--- a/drivers/isdn/mISDN/dsp.h
+++ b/drivers/isdn/mISDN/dsp.h
@@ -76,7 +76,9 @@ extern u8 dsp_silence;
76#define MAX_SECONDS_JITTER_CHECK 5 76#define MAX_SECONDS_JITTER_CHECK 5
77 77
78extern struct timer_list dsp_spl_tl; 78extern struct timer_list dsp_spl_tl;
79extern u32 dsp_spl_jiffies; 79
80/* the datatype need to match jiffies datatype */
81extern unsigned long dsp_spl_jiffies;
80 82
81/* the structure of conferences: 83/* the structure of conferences:
82 * 84 *
diff --git a/drivers/isdn/mISDN/dsp_cmx.c b/drivers/isdn/mISDN/dsp_cmx.c
index 0c104b976835..a4f05c54c32b 100644
--- a/drivers/isdn/mISDN/dsp_cmx.c
+++ b/drivers/isdn/mISDN/dsp_cmx.c
@@ -1624,7 +1624,7 @@ send_packet:
1624 1624
1625static u32 jittercount; /* counter for jitter check */ 1625static u32 jittercount; /* counter for jitter check */
1626struct timer_list dsp_spl_tl; 1626struct timer_list dsp_spl_tl;
1627u32 dsp_spl_jiffies; /* calculate the next time to fire */ 1627unsigned long dsp_spl_jiffies; /* calculate the next time to fire */
1628static u16 dsp_count; /* last sample count */ 1628static u16 dsp_count; /* last sample count */
1629static int dsp_count_valid; /* if we have last sample count */ 1629static int dsp_count_valid; /* if we have last sample count */
1630 1630