From 76eca5b4c1be997a93a4febf3d74098c83d9f149 Mon Sep 17 00:00:00 2001 From: Marco Ballesio Date: Wed, 11 Mar 2020 19:21:20 -0700 Subject: [PATCH] freezer: allow dynamic changes to freezer.state create new profiles to allowing thawing and freezing back the freezer cgroup Bug: 151225245 Test: Manually verified that using the SetTaskProfiles method on the profiles thaws and freezes back the freezer cgroup. Change-Id: I7f3e193ebe79b49c1f6ac52b6138ff4ec26fc570 --- libprocessgroup/profiles/task_profiles.json | 31 +++++++++++++++++++++ rootdir/init.rc | 2 +- 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/libprocessgroup/profiles/task_profiles.json b/libprocessgroup/profiles/task_profiles.json index a515e58c6..bc6bc7c25 100644 --- a/libprocessgroup/profiles/task_profiles.json +++ b/libprocessgroup/profiles/task_profiles.json @@ -49,6 +49,11 @@ "Name": "UClampMax", "Controller": "cpu", "File": "cpu.uclamp.max" + }, + { + "Name": "FreezerState", + "Controller": "freezer", + "File": "frozen/freezer.state" } ], @@ -531,6 +536,32 @@ } } ] + }, + { + "Name": "FreezerThawed", + "Actions": [ + { + "Name": "SetAttribute", + "Params": + { + "Name": "FreezerState", + "Value": "THAWED" + } + } + ] + }, + { + "Name": "FreezerFrozen", + "Actions": [ + { + "Name": "SetAttribute", + "Params": + { + "Name": "FreezerState", + "Value": "FROZEN" + } + } + ] } ], diff --git a/rootdir/init.rc b/rootdir/init.rc index 6ef3bdca6..6fab57250 100644 --- a/rootdir/init.rc +++ b/rootdir/init.rc @@ -332,7 +332,7 @@ on init chown system system /dev/freezer/frozen/freezer.state chown system system /dev/freezer/frozen/cgroup.procs - chmod 0444 /dev/freezer/frozen/freezer.state + chmod 0664 /dev/freezer/frozen/freezer.state # make the PSI monitor accessible to others chown system system /proc/pressure/memory