[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <739176c9-d889-0093-129c-25ff9c57b63b@gmail.com>
Date: Wed, 18 Dec 2019 20:51:42 +0800
From: Jia-Ju Bai <baijiaju1990@...il.com>
To: arnaud.pouliquen@...com, lgirdwood@...il.com, broonie@...nel.org,
perex@...ex.cz, tiwai@...e.com
Cc: alsa-devel@...a-project.org, LKML <linux-kernel@...r.kernel.org>
Subject: [BUG] ALSA: soc: sti: a possible sleep-in-atomic-context bug in
uni_player_ctl_iec958_put()
The driver may sleep while holding a spinlock.
The function call path (from bottom to top) in Linux 4.19 is:
sound/soc/sti/uniperif_player.c, 229:
mutex_lock in uni_player_set_channel_status
sound/soc/sti/uniperif_player.c, 608:
uni_player_set_channel_status in uni_player_ctl_iec958_put
sound/soc/sti/uniperif_player.c, 603:
_raw_spin_lock_irqsave in uni_player_ctl_iec958_put
mutex_lock() can sleep at runtime.
I am not sure how to properly fix this possible bug, so I only report it.
This bug is found by a static analysis tool STCheck written by myself.
Best wishes,
Jia-Ju Bai
Powered by blists - more mailing lists