ALSA: firewire-motu: fix unreleased lock warning in hwdep device
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Mon, 30 Jan 2023 14:15:40 +0000 (23:15 +0900)
committerTakashi Iwai <tiwai@suse.de>
Tue, 31 Jan 2023 08:34:04 +0000 (09:34 +0100)
Smatch static analysis tool detects that acquired lock is not released
in hwdep device when condition branch is passed due to no event. It is
unlikely to occur, while fulfilling is preferable for better coding.

Reported-by: Dan Carpenter <error27@gmail.com>
Fixes: 634ec0b2906e ("ALSA: firewire-motu: notify event for parameter change in register DSP model")
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Link: https://lore.kernel.org/r/20230130141540.102854-1-o-takashi@sakamocchi.jp
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/firewire/motu/motu-hwdep.c

index a900fc0e76440cb73a7eeff3dd747ee7a85e0427..88d1f4b56e4be401d1cb45db2eba4875a1d4b712 100644 (file)
@@ -87,6 +87,10 @@ static long hwdep_read(struct snd_hwdep *hwdep, char __user *buf, long count,
                        return -EFAULT;
 
                count = consumed;
+       } else {
+               spin_unlock_irq(&motu->lock);
+
+               count = 0;
        }
 
        return count;