llkd: check stack for wait_on_page_bit_killable
User process in S state blocked by deadlock in I/O system wait_on_page_bit is covered by regular D state tracking. Bug: 120776455 Test: long term stability on multiple devices Change-Id: Icdb99b8095f384cb440f0f2bdeba86c5991b9ef4
This commit is contained in:
parent
22e05fb5a4
commit
b658ffa2f3
|
@ -135,8 +135,9 @@ Only active on userdebug or eng builds.
|
|||
default 2 minutes samples of threads for D or Z.
|
||||
|
||||
#### ro.llk.stack
|
||||
default cma_alloc,__get_user_pages,bit_wait_io comma separated list of kernel
|
||||
symbols. The string "*false*" is the equivalent to an *empty* list.
|
||||
default cma_alloc,__get_user_pages,bit_wait_io,wait_on_page_bit_killable
|
||||
comma separated list of kernel symbols.
|
||||
The string "*false*" is the equivalent to an *empty* list.
|
||||
Look for kernel stack symbols that if ever persistently present can
|
||||
indicate a subsystem is locked up.
|
||||
Beware, check does not on purpose do forward scheduling ABA except by polling
|
||||
|
|
|
@ -50,7 +50,8 @@ unsigned llkCheckMilliseconds(void);
|
|||
/* LLK_CHECK_MS_DEFAULT = actual timeout_ms / LLK_CHECKS_PER_TIMEOUT_DEFAULT */
|
||||
#define LLK_CHECKS_PER_TIMEOUT_DEFAULT 5
|
||||
#define LLK_CHECK_STACK_PROPERTY "ro.llk.stack"
|
||||
#define LLK_CHECK_STACK_DEFAULT "cma_alloc,__get_user_pages,bit_wait_io"
|
||||
#define LLK_CHECK_STACK_DEFAULT \
|
||||
"cma_alloc,__get_user_pages,bit_wait_io,wait_on_page_bit_killable"
|
||||
#define LLK_BLACKLIST_PROCESS_PROPERTY "ro.llk.blacklist.process"
|
||||
#define LLK_BLACKLIST_PROCESS_DEFAULT \
|
||||
"0,1,2,init,[kthreadd],[khungtaskd],lmkd,llkd,watchdogd,[watchdogd],[watchdogd/0]"
|
||||
|
|
Loading…
Reference in New Issue