* [BUG] sound/soc/samsung: a possible sleep-in-atomic bugs in s3c_pcm_hw_params
@ 2017-12-12 1:24 Jia-Ju Bai
2017-12-14 10:11 ` Krzysztof Kozlowski
0 siblings, 1 reply; 2+ messages in thread
From: Jia-Ju Bai @ 2017-12-12 1:24 UTC (permalink / raw)
To: krzk, sbkim73, s.nawrocki, lgirdwood, broonie, perex, tiwai
Cc: alsa-devel, Linux Kernel Mailing List
According to sound/soc/samsung/pcm.c, the kernel module may sleep under
a spinlock.
The function call path is:
s3c_pcm_hw_params (acquire the spinlock)
clk_get_rate
clk_core_get_rate
clk_prepare_lock
mutex_lock --> may sleep
I do not find a good way to fix it, so I only report.
This possible bug is found by my static analysis tool (DSAC) and my code
review.
Thanks,
Jia-Ju Bai
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [BUG] sound/soc/samsung: a possible sleep-in-atomic bugs in s3c_pcm_hw_params
2017-12-12 1:24 [BUG] sound/soc/samsung: a possible sleep-in-atomic bugs in s3c_pcm_hw_params Jia-Ju Bai
@ 2017-12-14 10:11 ` Krzysztof Kozlowski
0 siblings, 0 replies; 2+ messages in thread
From: Krzysztof Kozlowski @ 2017-12-14 10:11 UTC (permalink / raw)
To: Jia-Ju Bai
Cc: sbkim73, Sylwester Nawrocki, lgirdwood, broonie, perex, tiwai,
alsa-devel, Linux Kernel Mailing List
On Tue, Dec 12, 2017 at 2:24 AM, Jia-Ju Bai <baijiaju1990@163.com> wrote:
> According to sound/soc/samsung/pcm.c, the kernel module may sleep under a
> spinlock.
> The function call path is:
> s3c_pcm_hw_params (acquire the spinlock)
> clk_get_rate
> clk_core_get_rate
> clk_prepare_lock
> mutex_lock --> may sleep
>
> I do not find a good way to fix it, so I only report.
> This possible bug is found by my static analysis tool (DSAC) and my code
> review.
Thanks for the report. Your finding looks correct, the code might
sleep under spinlock.
I do not see easy solution. Maybe the readl(regs + S3C_PCM_CLKCTL) and
clk_get_rate() could be moved before spinlock. The second path
modifying it - s3c_pcm_set_sysclk() - is not protected by it. The
spinlock is not effective around it.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2017-12-14 10:11 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-12-12 1:24 [BUG] sound/soc/samsung: a possible sleep-in-atomic bugs in s3c_pcm_hw_params Jia-Ju Bai
2017-12-14 10:11 ` Krzysztof Kozlowski
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®