platform_system_core/libprocessgroup
Tom Cherry d89ed132a0 init: always kill oneshot services' process groups.
~2007 a change was added that would allow oneshot services to
daemonize by not killing their process group.  This was a hack at the
time, and should certainly not be needed now.  I've resisted removing
the behavior however, as it hadn't caused any issues.

Recently, it was detected that the cgroups that these processes belong
to, would exist forever and therefore leak memory.  Instead of simply
removing the cgroups when empty, this provides a good opportunity to
do the right thing and fix this behavior once and for all.

The new (correct) behavior only happens for devices with vendor images
built for Android R or later.  Init will log a warning to dmesg when
it detects this difference in behavior has occurred.

Bug: 144545923
Test: boot CF/Coral and see no difference in behavior.
Test: boot CF with a service that daemonizes and see the warning.
Change-Id: I333a2e25a541ec0114ac50ab8ae7f1ea3f055447
2019-11-19 15:13:17 -08:00
..
cgrouprc Remove ACgroupController_getFlags to fix API breakage 2019-06-17 16:46:23 +00:00
cgrouprc_format libprocessgroup: add flags to indicate when a controller failed to mount 2019-05-21 10:03:21 -07:00
include/processgroup init: always kill oneshot services' process groups. 2019-11-19 15:13:17 -08:00
profiles Add support for freezer cgroup 2019-11-13 20:21:07 +00:00
setup libprocessgroup: add flags to indicate when a controller failed to mount 2019-05-21 10:03:21 -07:00
Android.bp libprocessgroup: move native_bridge_support 2019-06-17 12:48:06 -07:00
cgroup_map.cpp Fix IsUsable to check for each controller separately 2019-06-26 11:35:11 -07:00
cgroup_map.h Fix IsUsable to check for each controller separately 2019-06-26 11:35:11 -07:00
OWNERS Add surenb@ to libprocessgroup OWNERS 2019-09-17 08:50:04 -07:00
processgroup.cpp init: always kill oneshot services' process groups. 2019-11-19 15:13:17 -08:00
sched_policy.cpp sched_policy: add get_cpuset/sched_policy_profile_name 2019-10-14 20:03:06 -07:00
task_profiles.cpp libprocessgroup: add support to set aggregate profiles 2019-09-30 08:35:28 +00:00
task_profiles.h libprocessgroup: add support to set aggregate profiles 2019-09-30 08:35:28 +00:00