/* Returns zero if successful, or a negative error code on failure.  */
int snd_pcm_lib_preallocate_free_for_all(struct snd_pcm *pcm)
/* Returns zero if successful, or a negative error code on failure.  */
int snd_pcm_lib_preallocate_free_for_all(struct snd_pcm *pcm)
{
	struct snd_pcm_substream *substream;
	int stream;
	for (stream = 0; stream < 2; stream++)
		for (substream = pcm->streams[stream].substream; substream; substream = substream->next)
			snd_pcm_lib_preallocate_free(substream);
	return 0;
}