mirror of
https://github.com/torvalds/linux.git
synced 2026-06-09 15:12:59 +02:00
ANDROID: Restore a line removed accidentally during a revert
When reverting commit9ad8ff902ein android-mainline (commit31c9ccb138), a call to __mutex_remove_waiter() was accidentally removed. That results in a mutex waiter being left in the wait_list of the mutex in the error handling path of __mutex_lock_common(). The issue was reproduced by running controllers.memcg ltp tests and results in a kernel crash that looks like this: [ 306.207016] list_del corruption. next->prev should be ffffa5f983a479d0, but was ffffa5f983a6f9e8 [ 306.207271] ------------[ cut here ]------------ [ 306.207328] kernel BUG at lib/list_debug.c:56! Fix this by restoring the removed line. Fixes:31c9ccb138("Revert "ANDROID: vendor_hooks: add waiting information for blocked tasks"") Bug: 199506772 Signed-off-by: Suren Baghdasaryan <surenb@google.com> Change-Id: I49ac82b20405fda0ea7d10fae68402279ad751fa
This commit is contained in:
parent
8d3bbb3575
commit
e5e5f587d9
|
|
@ -713,6 +713,7 @@ __mutex_lock_common(struct mutex *lock, unsigned int state, unsigned int subclas
|
|||
|
||||
err:
|
||||
__set_current_state(TASK_RUNNING);
|
||||
__mutex_remove_waiter(lock, &waiter);
|
||||
err_early_kill:
|
||||
raw_spin_unlock(&lock->wait_lock);
|
||||
debug_mutex_free_waiter(&waiter);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user