*参照元 [#l878bcce]
#backlinks
*説明 [#j04ced8b]
-パス: [[linux-2.6.33/sound/core/pcm.c]]
-FIXME: これは何?
--説明
**引数 [#y60410bb]
-struct snd_pcm_substream *substream
--
--[[linux-2.6.33/snd_pcm_substream]]
**返り値 [#le78555f]
-なし
**参考 [#m21282ff]
*実装 [#r239fcf0]
void snd_pcm_detach_substream(struct snd_pcm_substream *substream)
{
struct snd_pcm_runtime *runtime;
-
--[[linux-2.6.33/snd_pcm_runtime]]
if (PCM_RUNTIME_CHECK(substream))
return;
runtime = substream->runtime;
-
--[[linux-2.6.33/PCM_RUNTIME_CHECK()]]
if (runtime->private_free != NULL)
runtime->private_free(runtime);
snd_free_pages((void*)runtime->status,
PAGE_ALIGN(sizeof(struct snd_pcm_mmap_status)));
snd_free_pages((void*)runtime->control,
PAGE_ALIGN(sizeof(struct snd_pcm_mmap_control)));
-
--[[linux-2.6.33/snd_free_pages()]]
kfree(runtime->hw_constraints.rules);
kfree(runtime);
-
--[[linux-2.6.33/kfree()]]
substream->runtime = NULL;
put_pid(substream->pid);
substream->pid = NULL;
substream->pstr->substream_opened--;
-
--[[linux-2.6.33/put_pid()]]
}
*コメント [#pfe72c03]