diff options
author | sruffell <sruffell@5390a7c7-147a-4af0-8ec9-7488f05a26cb> | 2008-12-04 23:09:28 +0000 |
---|---|---|
committer | sruffell <sruffell@5390a7c7-147a-4af0-8ec9-7488f05a26cb> | 2008-12-04 23:09:28 +0000 |
commit | 7b37d36938b44708e642dae2286826f6c3b5e8ac (patch) | |
tree | df78681a3e795d87d0554a903030263065ba7935 /kernel/zttranscode.c | |
parent | ef7bbab6bcc4cef87bfa733964113262cc53b545 (diff) |
Service the transmit descriptor ring before the receive descriptor ring so
that commands that are still sitting on the transmit descriptor ring are not
completed twice.
git-svn-id: http://svn.digium.com/svn/zaptel/branches/1.4@4593 5390a7c7-147a-4af0-8ec9-7488f05a26cb
Diffstat (limited to 'kernel/zttranscode.c')
-rw-r--r-- | kernel/zttranscode.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/kernel/zttranscode.c b/kernel/zttranscode.c index 5462da8..70ba2e1 100644 --- a/kernel/zttranscode.c +++ b/kernel/zttranscode.c @@ -179,8 +179,7 @@ static int zt_tc_release(struct inode *inode, struct file *file) /* Find a free channel on the transcoder and mark it busy. */ static inline struct zt_transcoder_channel * -get_free_channel(struct zt_transcoder *tc) - +get_free_channel(struct zt_transcoder *tc, const struct zt_transcoder_formats *fmts) { struct zt_transcoder_channel *chan; int i; @@ -225,7 +224,7 @@ __find_free_channel(struct list_head *list, const struct zt_transcoder_formats * /* We found a transcoder that can handle our formats. * Now look for an available channel. */ match = 1; - if ((chan = get_free_channel(tc))) { + if ((chan = get_free_channel(tc, fmts))) { /* transcoder tc has a free channel. In order * to spread the load among available * transcoders (when there are more than one |