[PATCH] ALSA: firewire-lib: fix return value on fail in amdtp_tscm_init()

Murad Masimov posted 1 patch 3 weeks, 1 day ago
sound/firewire/tascam/amdtp-tascam.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] ALSA: firewire-lib: fix return value on fail in amdtp_tscm_init()
Posted by Murad Masimov 3 weeks, 1 day ago
If amdtp_stream_init() fails in amdtp_tscm_init(), the latter returns zero,
though it's supposed to return error code, which is checked inside
init_stream() in file tascam-stream.c.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Fixes: 47faeea25ef3 ("ALSA: firewire-tascam: add data block processing layer")
Signed-off-by: Murad Masimov <m.masimov@maxima.ru>
---
 sound/firewire/tascam/amdtp-tascam.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/firewire/tascam/amdtp-tascam.c b/sound/firewire/tascam/amdtp-tascam.c
index 0b42d6559008..079afa4bd381 100644
--- a/sound/firewire/tascam/amdtp-tascam.c
+++ b/sound/firewire/tascam/amdtp-tascam.c
@@ -238,7 +238,7 @@ int amdtp_tscm_init(struct amdtp_stream *s, struct fw_unit *unit,
 	err = amdtp_stream_init(s, unit, dir, flags, fmt,
 			process_ctx_payloads, sizeof(struct amdtp_tscm));
 	if (err < 0)
-		return 0;
+		return err;

 	if (dir == AMDTP_OUT_STREAM) {
 		// Use fixed value for FDF field.
--
2.39.2
Re: [PATCH] ALSA: firewire-lib: fix return value on fail in amdtp_tscm_init()
Posted by Takashi Iwai 2 weeks, 6 days ago
On Fri, 01 Nov 2024 19:55:13 +0100,
Murad Masimov wrote:
> 
> If amdtp_stream_init() fails in amdtp_tscm_init(), the latter returns zero,
> though it's supposed to return error code, which is checked inside
> init_stream() in file tascam-stream.c.
> 
> Found by Linux Verification Center (linuxtesting.org) with SVACE.
> 
> Fixes: 47faeea25ef3 ("ALSA: firewire-tascam: add data block processing layer")
> Signed-off-by: Murad Masimov <m.masimov@maxima.ru>

Applied now.  Thanks.


Takashi