blob: 30ba23033f3390501794c7d326023fc94875ca6a [file] [log] [blame]
# Copyright 2021 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# A tmpfile.d config to set up the paths expected by vm_tools daemons.
# seneschal:
d= /run/seneschal 0700 seneschal seneschal
# vm_cicerone:
# Create the cicerone runtime directory.
d= /run/vm_cicerone 0755 vm_cicerone vm_cicerone
# Create the directory for UNIX socket communication with plugin VMs.
d= /run/vm_cicerone/client 0770 vm_cicerone crosvm
# Create directory for backing files for metrics.
d= /var/lib/vm_cicerone 0700 vm_cicerone vm_cicerone
d= /var/lib/vm_cicerone/metrics 0700 vm_cicerone vm_cicerone
d= /var/lib/vm_cicerone/metrics/daily 0700 vm_cicerone vm_cicerone
# vm_concierge:
# Create the VM device mapper directory for accessing user containers.
d= /dev/mapper/vm 0750 root crosvm
# Create the runtime directory.
d= /run/vm 0755 crosvm crosvm
# Delete /run/vm/dev_mode, which is created by init/vm_concierge.conf.
r /run/vm/dev_mode
# Create persistent mount namespace
f= /run/namespaces/mnt_concierge
# Create directory for history files for vmm-swap policy
d= /var/lib/vm_concierge 0700 crosvm crosvm
d= /var/lib/vm_concierge/vmm_swap_policy 0700 crosvm crosvm
# Create the runtime directory for ARCVM.
d= /run/arcvm 0755 crosvm crosvm
# Directories that need to exist but whose permissions are specified
# in other configurations that may or may not be installed based on
# features. These need to be kept in sync with the relevant modes and
# UID:GID pairs with the tmpfiles.d configuartions they belong to.
d= /run/arc/sdcard 0755 root root
# crosvm
# Termina
d= /sys/fs/cgroup/cpu/termina 0770 root crosvm
z= /sys/fs/cgroup/cpu/termina/cpu.cfs_period_us 0664 root crosvm
z= /sys/fs/cgroup/cpu/termina/cpu.cfs_quota_us 0664 root crosvm
z= /sys/fs/cgroup/cpu/termina/cpu.shares 0664 root crosvm
d= /sys/fs/cgroup/cpu/termina-vcpus 0770 root crosvm
z= /sys/fs/cgroup/cpu/termina-vcpus/cpu.cfs_period_us 0664 root crosvm
z= /sys/fs/cgroup/cpu/termina-vcpus/cpu.cfs_quota_us 0664 root crosvm
z= /sys/fs/cgroup/cpu/termina-vcpus/cpu.shares 0664 root crosvm
# crosvm
# Borealis vGPU (intended for vGPU threads housed in crosvm)
d= /sys/fs/cgroup/cpuset/borealis-vgpu 0770 root crosvm
z= /sys/fs/cgroup/cpuset/borealis-vgpu/cpus 0664 root crosvm
z= /sys/fs/cgroup/cpuset/borealis-vgpu/mems 0664 root crosvm
z= /sys/fs/cgroup/cpuset/borealis-vgpu/tasks 0664 root crosvm
z= /sys/fs/cgroup/cpuset/borealis-vgpu/cgroup.procs 0664 root crosvm
# crosvm
# Borealis vGPU server (intended for vGPU threads housed outside crosvm)
d= /sys/fs/cgroup/cpuset/borealis-vgpuserver 0770 root crosvm
z= /sys/fs/cgroup/cpuset/borealis-vgpuserver/cpus 0664 root crosvm
z= /sys/fs/cgroup/cpuset/borealis-vgpuserver/mems 0664 root crosvm
z= /sys/fs/cgroup/cpuset/borealis-vgpuserver/tasks 0664 root crosvm
z= /sys/fs/cgroup/cpuset/borealis-vgpuserver/cgroup.procs 0664 root crosvm
# crosvm needs write permission on cgroup tasks file to move the processes
# to termina cgroups(termina and termina-vcpus).
z= /sys/fs/cgroup/cpu/termina/tasks 0664 root crosvm
z= /sys/fs/cgroup/cpu/termina-vcpus/tasks 0664 root crosvm
# crosvm
# Plugin
d= /sys/fs/cgroup/cpu/plugin 0770 root crosvm
z= /sys/fs/cgroup/cpu/plugin/cpu.cfs_period_us 0664 root crosvm
z= /sys/fs/cgroup/cpu/plugin/cpu.cfs_quota_us 0664 root crosvm
z= /sys/fs/cgroup/cpu/plugin/cpu.shares 0664 root crosvm
d= /sys/fs/cgroup/cpu/plugin-vcpus 0770 root crosvm
z= /sys/fs/cgroup/cpu/plugin-vcpus/cpu.cfs_period_us 0664 root crosvm
z= /sys/fs/cgroup/cpu/plugin-vcpus/cpu.cfs_quota_us 0664 root crosvm
z= /sys/fs/cgroup/cpu/plugin-vcpus/cpu.shares 0664 root crosvm
# crosvm needs write permission on cgroup tasks file to move the processes
# to plugin cgroups(plugin and plugin-vcpus).
z= /sys/fs/cgroup/cpu/plugin/tasks 0664 root crosvm
z= /sys/fs/cgroup/cpu/plugin-vcpus/tasks 0664 root crosvm