[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <s5hk17r22zh.wl-tiwai@suse.de>
Date: Fri, 22 Nov 2019 19:13:54 +0100
From: Takashi Iwai <tiwai@...e.de>
To: Andrew Gabbasov <andrew_gabbasov@...tor.com>
Cc: <alsa-devel@...a-project.org>, <linux-kernel@...r.kernel.org>,
"Jaroslav Kysela" <perex@...ex.cz>, Takashi Iwai <tiwai@...e.com>,
Timo Wischer <twischer@...adit-jv.com>
Subject: Re: [PATCH 1/2] ALSA: aloop: Remove redundant locking in timer open function
On Fri, 22 Nov 2019 18:52:17 +0100,
Andrew Gabbasov wrote:
>
> loopback_parse_timer_id() uses snd_card_ref(), that can lock on mutex,
> also snd_timer_instance_new() uses non-atomic allocation, that can sleep.
> So, both functions can not be called from loopback_snd_timer_open()
> with cable->lock spinlock locked.
>
> Moreover, most part of loopback_snd_timer_open() function body works
> when the opposite stream of the same cable does not yet exist, and
> the current stream is not yet completely open and can't be running,
> so existing locking of loopback->cable_lock mutex is enough to protect
> from conflicts with simultaneous opening or closing.
> Locking of cable->lock spinlock is not needed in this case.
>
> Fixes: 26c53379f98d ("ALSA: aloop: Support selection of snd_timer instead of jiffies")
> Signed-off-by: Andrew Gabbasov <andrew_gabbasov@...tor.com>
Applied, thanks.
Takashi
Powered by blists - more mailing lists