git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
vserver 1.9.5.x5
[linux-2.6.git]
/
sound
/
core
/
timer.c
diff --git
a/sound/core/timer.c
b/sound/core/timer.c
index
cee5f47
..
67baf1e
100644
(file)
--- a/
sound/core/timer.c
+++ b/
sound/core/timer.c
@@
-351,8
+351,7
@@
int snd_timer_close(snd_timer_instance_t * timeri)
}
if (timeri->private_free)
timeri->private_free(timeri);
}
if (timeri->private_free)
timeri->private_free(timeri);
- if (timeri->owner)
- kfree(timeri->owner);
+ kfree(timeri->owner);
kfree(timeri);
if (timer && timer->card)
module_put(timer->card->module);
kfree(timeri);
if (timer && timer->card)
module_put(timer->card->module);
@@
-1004,8
+1003,7
@@
static struct _snd_timer_hardware snd_timer_system =
static void snd_timer_free_system(snd_timer_t *timer)
{
static void snd_timer_free_system(snd_timer_t *timer)
{
- if (timer->private_data)
- kfree(timer->private_data);
+ kfree(timer->private_data);
}
static int snd_timer_register_system(void)
}
static int snd_timer_register_system(void)
@@
-1119,7
+1117,8
@@
static void snd_timer_user_append_to_tqueue(snd_timer_user_t *tu, snd_timer_trea
if (tu->qused >= tu->queue_size) {
tu->overrun++;
} else {
if (tu->qused >= tu->queue_size) {
tu->overrun++;
} else {
- memcpy(&tu->queue[tu->qtail++], tread, sizeof(*tread));
+ memcpy(&tu->tqueue[tu->qtail++], tread, sizeof(*tread));
+ tu->qtail %= tu->queue_size;
tu->qused++;
}
}
tu->qused++;
}
}
@@
-1142,6
+1141,8
@@
static void snd_timer_user_ccallback(snd_timer_instance_t *timeri,
spin_lock(&tu->qlock);
snd_timer_user_append_to_tqueue(tu, &r1);
spin_unlock(&tu->qlock);
spin_lock(&tu->qlock);
snd_timer_user_append_to_tqueue(tu, &r1);
spin_unlock(&tu->qlock);
+ kill_fasync(&tu->fasync, SIGIO, POLL_IN);
+ wake_up(&tu->qchange_sleep);
}
static void snd_timer_user_tinterrupt(snd_timer_instance_t *timeri,
}
static void snd_timer_user_tinterrupt(snd_timer_instance_t *timeri,
@@
-1226,10
+1227,8
@@
static int snd_timer_user_release(struct inode *inode, struct file *file)
fasync_helper(-1, file, 0, &tu->fasync);
if (tu->timeri)
snd_timer_close(tu->timeri);
fasync_helper(-1, file, 0, &tu->fasync);
if (tu->timeri)
snd_timer_close(tu->timeri);
- if (tu->queue)
- kfree(tu->queue);
- if (tu->tqueue)
- kfree(tu->tqueue);
+ kfree(tu->queue);
+ kfree(tu->tqueue);
kfree(tu);
}
return 0;
kfree(tu);
}
return 0;