android_system_core/libprocessgroup/profiles
Suren Baghdasaryan 35221b5338 libprocessgroup: Support per-API level task profiles
When task profiles changes happen, devices released under older API
levels might have to use the same profiles as before. This might be
due to for missing kernel features or some other reasons. Add support
for per-API task profiles to accommodate this scenario. With this
mechanism when ro.product.first_api_level is non-empty, the system
looks for /system/etc/profiles/task_profiles_<api level>.json file
and uses it if it exists. If ro.product.first_api_level is not defined
or per-API task profiles file does not exist the system falls back to
the default /system/etc/profiles/task_profiles.json file.
As before, these task profiles can be competely overwritten using
/vendor/etc/task_profiles.json if needed.

Bug: 172066799
Test: boot with per-API task profiles
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I1671b341b3a0fb5e99d0b0788315c61088326b09
2020-11-23 22:08:41 +00:00
..
Android.bp libprocessgroup: Support per-API level task profiles 2020-11-23 22:08:41 +00:00
cgroups.json libprocessgroup: Replace stune with utilclamp profiles 2020-10-29 16:21:09 +00:00
cgroups.proto libprocessgroup: json prototype for cgroups v2 2020-08-20 15:53:48 -07:00
cgroups.recovery.json
cgroups_28.json libprocessgroup: Support per-API level task profiles 2020-11-23 22:08:41 +00:00
cgroups_29.json libprocessgroup: Support per-API level task profiles 2020-11-23 22:08:41 +00:00
cgroups_30.json libprocessgroup: Support per-API level task profiles 2020-11-23 22:08:41 +00:00
cgroups_test.h libprocessgroup_proto_test split into multiple files 2019-03-15 12:34:42 -07:00
task_profiles.json task_profiles.json: use system subgroup for NormalPerformance 2020-11-20 10:54:55 -08:00
task_profiles.proto libprocessgroup: add support to set aggregate profiles 2019-09-30 08:35:28 +00:00
task_profiles_28.json libprocessgroup: Support per-API level task profiles 2020-11-23 22:08:41 +00:00
task_profiles_29.json libprocessgroup: Support per-API level task profiles 2020-11-23 22:08:41 +00:00
task_profiles_30.json libprocessgroup: Support per-API level task profiles 2020-11-23 22:08:41 +00:00
task_profiles_test.h libprocessgroup_proto_test split into multiple files 2019-03-15 12:34:42 -07:00
test.cpp Fix build with new googletest 2019-11-10 04:08:25 +00:00
TEST_MAPPING Add schema for task profiles 2019-02-19 13:26:46 -08:00
test_vendor.cpp libprocessgroup: Add VTS tests for vendor JSON files 2019-03-15 16:28:42 -07:00