From: Takashi Sakamoto Date: Fri, 8 May 2020 04:36:26 +0000 (+0900) Subject: ALSA: firewire-lib: fix invalid assignment to union data for directional parameter X-Git-Tag: v5.8-rc1~151^2~43 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=8304cf77c92038cd1c50c27b69d30be695cc8003;p=users%2Fjedix%2Flinux-maple.git ALSA: firewire-lib: fix invalid assignment to union data for directional parameter Although the value of FDF is used just for outgoing stream, the assignment to union member is done for both directions of stream. At present this causes no issue because the value of same position is reassigned later for opposite stream. However, it's better to add if statement. Fixes: d3d10a4a1b19 ("ALSA: firewire-lib: use union for directional parameters") Signed-off-by: Takashi Sakamoto Link: https://lore.kernel.org/r/20200508043635.349339-2-o-takashi@sakamocchi.jp Signed-off-by: Takashi Iwai --- diff --git a/sound/firewire/amdtp-am824.c b/sound/firewire/amdtp-am824.c index 67d735e9a6a4c..fea92e148790f 100644 --- a/sound/firewire/amdtp-am824.c +++ b/sound/firewire/amdtp-am824.c @@ -82,7 +82,8 @@ int amdtp_am824_set_parameters(struct amdtp_stream *s, unsigned int rate, if (err < 0) return err; - s->ctx_data.rx.fdf = AMDTP_FDF_AM824 | s->sfc; + if (s->direction == AMDTP_OUT_STREAM) + s->ctx_data.rx.fdf = AMDTP_FDF_AM824 | s->sfc; p->pcm_channels = pcm_channels; p->midi_ports = midi_ports;