summaryrefslogtreecommitdiff
path: root/sound/hda
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2016-04-26 19:25:14 +0100
committerMark Brown <broonie@kernel.org>2016-04-26 19:25:14 +0100
commite408057767973e13d72bf52604957925720b7142 (patch)
treea634a347b8efc01238f5aa4a7a1bc3589aa8ed57 /sound/hda
parentf179f3f8a9bc86c43a1016c6d0ef87b7bb5ced86 (diff)
parentf0c8e1d9c4f473dfc771a613b602f1841afe8f8b (diff)
Merge remote-tracking branch 'asoc/fix/intel' into asoc-linus
Diffstat (limited to 'sound/hda')
-rw-r--r--sound/hda/ext/hdac_ext_stream.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/sound/hda/ext/hdac_ext_stream.c b/sound/hda/ext/hdac_ext_stream.c
index 023cc4cad5c1..626f3bb24c55 100644
--- a/sound/hda/ext/hdac_ext_stream.c
+++ b/sound/hda/ext/hdac_ext_stream.c
@@ -104,12 +104,11 @@ EXPORT_SYMBOL_GPL(snd_hdac_ext_stream_init_all);
*/
void snd_hdac_stream_free_all(struct hdac_ext_bus *ebus)
{
- struct hdac_stream *s;
+ struct hdac_stream *s, *_s;
struct hdac_ext_stream *stream;
struct hdac_bus *bus = ebus_to_hbus(ebus);
- while (!list_empty(&bus->stream_list)) {
- s = list_first_entry(&bus->stream_list, struct hdac_stream, list);
+ list_for_each_entry_safe(s, _s, &bus->stream_list, list) {
stream = stream_to_hdac_ext_stream(s);
snd_hdac_ext_stream_decouple(ebus, stream, false);
list_del(&s->list);