mirror of
https://github.com/apache/nuttx.git
synced 2026-06-02 17:48:54 +08:00
fix deadlock about set_nonwakeup. Signed-off-by: dongjiuzhu1 <dongjiuzhu1@xiaomi.com>
This commit is contained in:
@@ -467,13 +467,16 @@ static void sensor_update_nonwakeup(FAR struct file *filep,
|
|||||||
if (nonwakeup != upper->state.nonwakeup)
|
if (nonwakeup != upper->state.nonwakeup)
|
||||||
{
|
{
|
||||||
upper->state.nonwakeup = nonwakeup;
|
upper->state.nonwakeup = nonwakeup;
|
||||||
|
nxrmutex_unlock(&upper->lock);
|
||||||
if (lower->ops->set_nonwakeup)
|
if (lower->ops->set_nonwakeup)
|
||||||
{
|
{
|
||||||
lower->ops->set_nonwakeup(lower, filep, nonwakeup);
|
lower->ops->set_nonwakeup(lower, filep, nonwakeup);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
nxrmutex_unlock(&upper->lock);
|
nxrmutex_unlock(&upper->lock);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void sensor_generate_timing(FAR struct sensor_upperhalf_s *upper,
|
static void sensor_generate_timing(FAR struct sensor_upperhalf_s *upper,
|
||||||
|
|||||||
Reference in New Issue
Block a user