libprocessgroup: switch freezer to cgroup v2

remove cgroup v1 freezer entries from init.rc, add a new cgroup v2
controller and modify plists to properly interact with it.

Bug: 154548692
Test: manually verified the the cgroup v1 freezer controller isn't
created and a new controller for cgroup v2 is created under the correct
sysfs directory.

Change-Id: I1b811300ade486f88fdbd157255a7f37750cc54d
This commit is contained in:
Marco Ballesio 2020-06-02 15:35:30 -07:00
parent 76eca5b4c1
commit 1c755e22c8
3 changed files with 20 additions and 28 deletions

View file

@ -39,19 +39,21 @@
"Mode": "0755",
"UID": "system",
"GID": "system"
},
{
"Controller": "freezer",
"Path": "/dev/freezer",
"Mode": "0755",
"UID": "system",
"GID": "system"
}
],
"Cgroups2": {
"Path": "/dev/cg2_bpf",
"Mode": "0600",
"UID": "root",
"GID": "root"
"Path": "/sys/fs/cgroup",
"Mode": "0755",
"UID": "system",
"GID": "system",
"Controllers": [
{
"Controller": "freezer",
"Path": "freezer",
"Mode": "0755",
"UID": "system",
"GID": "system"
}
]
}
}

View file

@ -53,7 +53,7 @@
{
"Name": "FreezerState",
"Controller": "freezer",
"File": "frozen/freezer.state"
"File": "cgroup.freeze"
}
],
@ -79,7 +79,7 @@
"Params":
{
"Controller": "freezer",
"Path": "frozen"
"Path": ""
}
}
]
@ -92,7 +92,7 @@
"Params":
{
"Controller": "freezer",
"Path": ""
"Path": "../"
}
}
]
@ -538,27 +538,27 @@
]
},
{
"Name": "FreezerThawed",
"Name": "FreezerDisabled",
"Actions": [
{
"Name": "SetAttribute",
"Params":
{
"Name": "FreezerState",
"Value": "THAWED"
"Value": "0"
}
}
]
},
{
"Name": "FreezerFrozen",
"Name": "FreezerEnabled",
"Actions": [
{
"Name": "SetAttribute",
"Params":
{
"Name": "FreezerState",
"Value": "FROZEN"
"Value": "1"
}
}
]

View file

@ -324,16 +324,6 @@ on init
chmod 0664 /dev/cpuset/restricted/tasks
chmod 0664 /dev/cpuset/tasks
# freezer cgroup entries
mkdir /dev/freezer/frozen
write /dev/freezer/frozen/freezer.state FROZEN
chown system system /dev/freezer/cgroup.procs
chown system system /dev/freezer/frozen
chown system system /dev/freezer/frozen/freezer.state
chown system system /dev/freezer/frozen/cgroup.procs
chmod 0664 /dev/freezer/frozen/freezer.state
# make the PSI monitor accessible to others
chown system system /proc/pressure/memory
chmod 0664 /proc/pressure/memory