aboutsummaryrefslogtreecommitdiffstats
path: root/sound/core/pcm.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2010-03-16 07:50:49 +0100
committerTakashi Iwai <tiwai@suse.de>2010-03-16 07:50:49 +0100
commita9104f989916aac5d92bfa2c51915d5985fb2e6c (patch)
tree17bef4eac561e3ac90d98d68190978e686712b67 /sound/core/pcm.c
parentMerge remote branch 'alsa/fixes' into fix/misc (diff)
parentsound: fix opti92x-ad1848 build (diff)
downloadlinux-dev-a9104f989916aac5d92bfa2c51915d5985fb2e6c.tar.xz
linux-dev-a9104f989916aac5d92bfa2c51915d5985fb2e6c.zip
Merge branch 'topic/misc' into fix/misc
Diffstat (limited to 'sound/core/pcm.c')
-rw-r--r--sound/core/pcm.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sound/core/pcm.c b/sound/core/pcm.c
index 6884ae031f6f..0d428d0896db 100644
--- a/sound/core/pcm.c
+++ b/sound/core/pcm.c
@@ -894,6 +894,7 @@ int snd_pcm_attach_substream(struct snd_pcm *pcm, int stream,
memset((void*)runtime->control, 0, size);
init_waitqueue_head(&runtime->sleep);
+ init_waitqueue_head(&runtime->tsleep);
runtime->status->state = SNDRV_PCM_STATE_OPEN;
@@ -921,6 +922,10 @@ void snd_pcm_detach_substream(struct snd_pcm_substream *substream)
snd_free_pages((void*)runtime->control,
PAGE_ALIGN(sizeof(struct snd_pcm_mmap_control)));
kfree(runtime->hw_constraints.rules);
+#ifdef CONFIG_SND_PCM_XRUN_DEBUG
+ if (runtime->hwptr_log)
+ kfree(runtime->hwptr_log);
+#endif
kfree(runtime);
substream->runtime = NULL;
put_pid(substream->pid);