[Devel] [PATCH rh7 0/6] Support containers in machine.slice

Vladimir Davydov vdavydov at virtuozzo.com
Mon Jun 20 09:40:10 PDT 2016


The following problems have to be solved if we want to move containers
to machine.slice:

 - CPU stats reporting. Currently, we just open cgroup by name when we
   need stats corresponding to a VE. This is addressed by patch 3.

 - setdevperms ioctl. The same problem as in case 1. Addressed by patch
   3 as well.

 - cgroup path mangling (/proc/self/cgroup, mountinfo). This is fixed by
   patches 5 and 6.

With containers moved to machine.slice fairsched syscalls and
VZCTL_ENV_CREATE ioctl get broken and can't be easily fixed, so we just
drop them (patches 1, 2, 4). This should be fine, because libvctl
switched to cgroup interface long ago.

https://jira.sw.ru/browse/PSBM-48629

Vladimir Davydov (6):
  Drop vz_compat boot param
  Drop VZCTL_ENV_CREATE
  Use ve init task's css instead of opening cgroup via vfs
  Drop fairsched syscalls
  cgroup: use cgroup_path_ve helper in cgroup_show_path
  cgroup: fix path mangling for ve cgroups

 arch/powerpc/include/asm/systbl.h         |  16 +-
 arch/powerpc/include/uapi/asm/unistd.h    |   8 -
 arch/x86/syscalls/syscall_32.tbl          |   9 -
 arch/x86/syscalls/syscall_64.tbl          |   8 -
 configs/kernel-3.10.0-x86_64-debug.config |   1 -
 configs/kernel-3.10.0-x86_64.config       |   1 -
 fs/proc/loadavg.c                         |   3 +-
 fs/proc/stat.c                            |   3 +-
 fs/proc/uptime.c                          |  15 +-
 include/linux/cgroup.h                    |   3 +
 include/linux/cpuset.h                    |   5 -
 include/linux/device_cgroup.h             |   6 +-
 include/linux/fairsched.h                 |  88 ----
 include/linux/sched.h                     |  21 -
 include/linux/ve.h                        |  30 +-
 include/linux/ve_proto.h                  |   4 -
 include/uapi/linux/Kbuild                 |   1 -
 include/uapi/linux/fairsched.h            |   8 -
 init/Kconfig                              |  20 +-
 kernel/Makefile                           |   1 -
 kernel/bc/beancounter.c                   |   2 -
 kernel/cgroup.c                           |  66 ++-
 kernel/cpuset.c                           |  26 -
 kernel/fairsched.c                        | 829 ------------------------------
 kernel/sched/core.c                       |  69 +--
 kernel/sched/cpuacct.h                    |   2 +
 kernel/sys_ni.c                           |  10 -
 kernel/ve/ve.c                            | 104 +++-
 kernel/ve/vecalls.c                       | 505 +-----------------
 security/device_cgroup.c                  |  65 +--
 30 files changed, 191 insertions(+), 1738 deletions(-)
 delete mode 100644 include/linux/fairsched.h
 delete mode 100644 include/uapi/linux/fairsched.h
 delete mode 100644 kernel/fairsched.c

-- 
2.1.4



More information about the Devel mailing list