From c1e763a95b3c7b5eab5b1dbbb7638e8debbc1c9c 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 3f085357e..0cee6bbfd 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" } ], @@ -518,6 +523,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 201fb128d..324fa19e0 100644 --- a/rootdir/init.rc +++ b/rootdir/init.rc @@ -324,7 +324,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