mirror of
https://github.com/Dasharo/zephyr.git
synced 2026-03-06 14:57:20 -08:00
kernel: Fix negative mutex lock_count value
If you try to unlock an unlocked mutex, it will incorrectly succeeds and decreases the lock count to -1. Fixes #36572 Signed-off-by: Chih Hung Yu <chyu313@gmail.com>
This commit is contained in:
committed by
Anas Nashif
parent
4c38ca1625
commit
0ef77d4ea4
@@ -230,7 +230,7 @@ int z_impl_k_mutex_unlock(struct k_mutex *mutex)
|
||||
* If we are the owner and count is greater than 1, then decrement
|
||||
* the count and return and keep current thread as the owner.
|
||||
*/
|
||||
if (mutex->lock_count - 1U != 0U) {
|
||||
if (mutex->lock_count > 1U) {
|
||||
mutex->lock_count--;
|
||||
goto k_mutex_unlock_return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user