No description
Find a file
Mark Salyzyn 00b2ce7005 llkd: Add cma_alloc stack symbol checking
Add ro.llk.stack to list a set of symbols that should rarely happen
but if persistent in multiple checks, indicates a live lock condition.
At ro.llk.stack.timeout_ms the process is sent a kill, if it remains,
then panic the kernel.

There is no ABA detection in the paths, the condition for the
stack symbol being present instantaneously must be its rarity of
being caught.  If a livelock occurs in the path of the symbol, then
it is possible more than one path could be stuck in the state, but
the best candidate symbols are found underneath a lock resulting in
only one process being the culprit, and the best aim.  There may be
processes that induce a look of persistence, if so the symbol is not
a candidate for checking.

Adding cma_alloc to the default list.  It is not behind a lock, so
multiple references can happen.  The hope is the first one to spin or
wait gets the kill, but there is the possibility that both will get
the kill.  It is unknown if this will escalate to a kernel panic at
this time.  It is also suspect that a RT task could cause this by
starving the background worker, and llkd could suffer a similar fate
as it is SCHED_BATCH policy.

Test: compile
Bug: 33808187
Bug: 111910505
Bug: 80502612
Change-Id: I49c9f0646d627869144c5c1ca32272515ed60f7b
2018-08-30 13:53:28 -07:00
adb adb: don't try to reconnect emulators. 2018-08-30 11:37:00 -07:00
adf Make libadf, libsync_recovery recovery_available. 2018-08-07 10:53:07 -07:00
base Set errno for all error return cases. 2018-08-29 10:47:06 -07:00
bootstat bootstat: duplicate boot reason entries 2018-08-07 09:57:32 -07:00
cpio
debuggerd libdebuggerd: decode fdsan owner tags. 2018-08-28 13:48:08 -07:00
demangle Build adbd for recovery 2018-05-24 14:11:11 +09:00
diagnose_usb Build adbd for recovery 2018-05-24 14:11:11 +09:00
fastboot Merge "fastboot: Use a single codepath for flashall and update." 2018-08-30 20:12:16 +00:00
fs_mgr Fix bug in fs_mgr with calling vdc 2018-08-29 12:56:53 -07:00
gatekeeperd Add OWNERS file to gatekeeperd 2018-07-25 15:02:38 -07:00
healthd charger: screen blank on disconnect and 0% not displayed 2018-08-17 03:58:19 +00:00
include Move android_filesystem_config.h => fs_config.h 2017-08-02 16:31:19 -07:00
init Merge "Switch root to /system in first stage mount" 2018-08-29 17:05:40 +00:00
libappfuse Stop using SO_SNDBUFFORCE 2018-03-15 14:22:27 +09:00
libasyncio Build adbd for recovery 2018-05-24 14:11:11 +09:00
libbacktrace bionic supplies PR_SET_VMA now. 2018-08-22 12:06:20 -07:00
libbinderwrapper Make libbinderwrapper available in /vendor partition 2018-04-06 08:41:21 +09:00
libcrypto_utils Build adbd for recovery 2018-05-24 14:11:11 +09:00
libcutils libcutils test: make set_sched_policy optional 2018-08-28 13:26:04 -07:00
libdiskconfig Rename target.linux[_x86[_64]] to target.linux_glibc[_x86[_64]] 2017-10-02 10:44:29 -07:00
libgrallocusage Use -Werror in system/core 2017-11-01 11:32:55 -07:00
libion libion: cleanup logging 2018-03-07 10:56:06 -08:00
libkeyutils Build adbd for recovery 2018-05-24 14:11:11 +09:00
liblog liblog: Add functions to reset log context 2018-08-02 00:55:01 +00:00
libmemtrack Add OWNERS. 2017-12-07 13:30:03 -08:00
libmemunreachable Remove ashmem from system/core 2018-08-24 12:30:09 -07:00
libmetricslogger Merge "Add cwren to libmetricslogger OWNERS" into pi-dev 2018-05-24 01:30:58 +00:00
libnativebridge bpfmt. 2018-02-16 17:58:14 -08:00
libnativeloader Separate namespace acquisition from library loading 2018-07-12 15:44:35 +02:00
libnetutils Merge "Add OWNERS." am: 3289b9c928 2017-12-07 23:51:13 +00:00
libpackagelistparser Mark as recovery_available: true 2018-05-15 09:47:04 +09:00
libpixelflinger Merge "libpixelflinger: Avoid using x18 register in blend implementation." 2018-08-30 01:20:34 +00:00
libprocessgroup Add recovery_available: true to init dependencies 2018-07-24 13:45:50 -07:00
libprocinfo Remove ashmem from system/core 2018-08-24 12:30:09 -07:00
libqtaguid Redirect qtaguid native call to netd fwmark client 2017-11-09 18:02:22 -08:00
libsparse Revert "libsparse: Add sparse typed callback" 2018-07-26 05:23:45 +00:00
libstats Remove a redundant check in statsd socket code. 2018-05-22 16:06:21 -07:00
libsuspend Remove libsuspend from VNDK. 2018-08-14 13:39:55 -07:00
libsync Merge libsync_recovery rules into libsync. 2018-08-07 11:00:50 -07:00
libsystem Camera: add DISABLE error code 2018-05-31 15:12:19 -07:00
libsysutils Merge "Use multiple patterns and emails in per-file syntax." 2018-08-28 17:03:44 +00:00
libunwindstack Merge "Allow to get raw register data on all platforms." 2018-08-08 21:37:46 +00:00
libusbhost Merge "Remove urb request size maximum." am: 1cb765c867 am: 1ab6e9d018 2018-02-13 09:02:38 +00:00
libutils Move off safe-iop. 2018-08-28 13:40:04 -07:00
libvndksupport bpfmt. 2018-02-16 17:58:14 -08:00
libziparchive Open zips using _wopen on windows. 2018-08-28 09:31:26 -07:00
llkd llkd: Add cma_alloc stack symbol checking 2018-08-30 13:53:28 -07:00
lmkd Merge "lmkd: Do not downgrade/ignore events when swap is full" 2018-08-14 21:31:56 +00:00
logcat add event log range for audioserver 2018-07-10 14:21:38 -07:00
logd logd: crash dumps on userdebug only 2018-08-22 20:09:34 +00:00
logwrapper Build adbd for recovery 2018-05-24 14:11:11 +09:00
mkbootimg Add recovery_available: true to init dependencies 2018-07-24 13:45:50 -07:00
property_service Add recovery_available: true to init dependencies 2018-07-24 13:45:50 -07:00
qemu_pipe Build adbd for recovery 2018-05-24 14:11:11 +09:00
reboot reboot: only pause indefinitely for non-shutdown operations 2017-09-29 16:29:52 +00:00
rootdir Show bootanimation after decrypt 2018-08-30 16:44:34 +00:00
run-as run-as: Migrate to blueprint 2018-06-27 11:15:23 -07:00
sdcard Add support for esdfs mounting 2018-01-19 12:58:42 -08:00
shell_and_utilities Move back to BSD grep, and make it available for recovery too. 2018-08-01 10:35:46 -07:00
storaged storaged: Cap io_history when loading stats from disk. 2018-08-21 09:20:40 -07:00
toolbox getevent: O_RDWR -> O_RDONLY | O_CLOEXEC 2018-08-24 12:16:17 -07:00
trusty trusty_keymaster_ipc: Use ALOGV instead of ALOGE for info/debug message 2018-08-23 15:56:09 -07:00
usbd bpfmt. 2018-02-16 17:58:14 -08:00
watchdogd Move watchdogd out of init 2018-08-02 12:25:58 -07:00
.clang-format
.clang-format-2 Remove PenaltyExcessCharacter from clang-formats. 2018-07-19 13:50:41 -07:00
.clang-format-4 Remove PenaltyExcessCharacter from clang-formats. 2018-07-19 13:50:41 -07:00
.gitignore
Android.bp
Android.mk
CleanSpec.mk Shared libs are supported in recovery mode 2018-06-10 08:32:24 +09:00
MODULE_LICENSE_APACHE2
NOTICE
OWNERS Move per-file OWNERS directives to their directories. 2018-06-06 11:49:40 +09:00
platform_tools_tool_version.mk
PREUPLOAD.cfg