From: Takashi Sakamoto Date: Mon, 26 Aug 2019 13:54:15 +0000 (+0900) Subject: ALSA: oxfw: fix NULL pointer dereference to unused stream structure X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=4c098dab121a4164e9daa4d1ddbc59e93054e79e;p=linux.git ALSA: oxfw: fix NULL pointer dereference to unused stream structure ALSA oxfw driver supports Griffin FireWave. This device supports one isochronous stream for PCM playback. Current driver executes code to wait event for stream structure of opposite direction. This causes NULL pointer dereference. This commit fixes the bug. Fixes: ac5d77864cfc ("ALSA: oxfw: support AMDTP domain") Signed-off-by: Takashi Sakamoto Signed-off-by: Takashi Iwai --- diff --git a/sound/firewire/oxfw/oxfw-stream.c b/sound/firewire/oxfw/oxfw-stream.c index 0318dc4dcc55f..3c9a796b65269 100644 --- a/sound/firewire/oxfw/oxfw-stream.c +++ b/sound/firewire/oxfw/oxfw-stream.c @@ -350,13 +350,18 @@ int snd_oxfw_stream_start_duplex(struct snd_oxfw *oxfw) // Wait first packet. if (!amdtp_stream_wait_callback(&oxfw->rx_stream, - CALLBACK_TIMEOUT) || - !amdtp_stream_wait_callback(&oxfw->tx_stream, CALLBACK_TIMEOUT)) { err = -ETIMEDOUT; goto error; } + if (oxfw->has_output) { + if (!amdtp_stream_wait_callback(&oxfw->tx_stream, + CALLBACK_TIMEOUT)) { + err = -ETIMEDOUT; + goto error; + } + } } return 0;