cgroups: add support for systemd cgroup hierarchy
The systemd cgroup hierarchy support is being added so we can run logind outside of systemd. This is needed because software that was using consolekit is now migrating to logind. We do not create this hierarchy, we just add services to it if it exists.
This commit is contained in:
@ -70,15 +70,17 @@ cgroup_set_values()
|
||||
return 0
|
||||
}
|
||||
|
||||
cgroup_set_limits()
|
||||
cgroup_add_service()
|
||||
{
|
||||
openrc_cgroup=/sys/fs/cgroup/openrc
|
||||
if [ -d "$openrc_cgroup" ]; then
|
||||
cgroup="$openrc_cgroup/$RC_SVCNAME"
|
||||
if [ -d "$1" ]; then
|
||||
cgroup="$1/$RC_SVCNAME"
|
||||
mkdir -p "$cgroup"
|
||||
[ -f "$cgroup/tasks" ] && echo 0 > "$cgroup/tasks"
|
||||
fi
|
||||
}
|
||||
|
||||
cgroup_set_limits()
|
||||
{
|
||||
local blkio="${rc_cgroup_blkio:-$RC_CGROUP_BLKIO}"
|
||||
[ -n "$blkio" ] && cgroup_set_values blkio "$blkio"
|
||||
|
||||
|
@ -209,6 +209,10 @@ sourcex -e "@SYSCONFDIR@/rc.conf"
|
||||
[ -n "${rc_ulimit:-$RC_ULIMIT}" ] && ulimit ${rc_ulimit:-$RC_ULIMIT}
|
||||
|
||||
# Apply cgroups settings if defined
|
||||
if [ "$(command -v cgroup_add_service)" = "cgroup_add_service" ]; then
|
||||
cgroup_add_service /sys/fs/cgroup/openrc
|
||||
cgroup_add_service /sys/fs/cgroup/systemd/system
|
||||
fi
|
||||
[ "$(command -v cgroup_set_limits)" = "cgroup_set_limits" ] && \
|
||||
cgroup_set_limits
|
||||
|
||||
|
Reference in New Issue
Block a user