There is a lot of CONFIG_VE logic, that is not covered by CONFIG_VE.
This is an attempt to make the kernel compile with minimal
useless code changes - thus it is not expected to boot now.

Some ve_struct fields were made unconditional, because the other
option is changing all the code that touches this field.

ve0 is absent and all ve objects are NULLs with !CONFIG_VE.
This is intentional - while it makes kernel less bootable (it will
probably never be), this is a movement away from having ve0 and
all the CONFIG_VE logic when this config is disabled.

Most of the patches are fixups except the last 3 - changes in
headers happened next to each other and required some code
reordering. This may cause pain with merge conflicts while
reabasing and it will add even more fixups.
One change is not related to our code, so nothing to fix up.

v4:
 - Drop fixup! ve/fs/files: Shrink big fdtable on close in is_pseudosuper mode.
 - Fix various problems with style and code order.
 - Added a fixup with missing inline (patch 13).
 - Added two more fixups (patches 40 & 41) for newer commits.
v3: in vzlin-dev list
v2: https://lists.openvz.org/pipermail/devel/2026-May/083626.html
v1: https://lists.openvz.org/pipermail/devel/2026-May/083544.html

Vladimir Riabchun (44):
  fixup! ve: Link net and ve_struct
  fixup! ve/net: thread owning ve through copy_net_ns
  fixup! ve, x86_64: add per-ve vdso mapping.
  fixup! ia32: add 32-bit vdso virtualization.
  fixup! ve/fs/nfs: NFS containerization
  fixup! ve: Rename ve_ns to ve_nsproxy
  fixup! ve/fs/nfsd: NFSd containerization
  fixup! fs: allow init Container user_ns to mount filesystems with
    FS_VE_MOUNT
  fixup! ve/cgroup: Allow to write to several safe cgroup files from CT
  fixup! ve/sunrpc: Prohibit mounting rpc_pipefs in CT without nfsd
    feature
  fixup! arch/x86: introduce cpuid override
  fixup! ve/proc/stat: Wire virtualized /proc/stat handler
  fixup! sched: show CPU stats for a cgroup in cpu.proc.stat file
  fixup! ve/module: export sysfs dentries in containers
  fixup! ve/fs/aio: aio_nr & aio_max_nr variables virtualization
  fixup! ve/coredump: virtualize kernel.core_pattern sysctl
  fixup! ve/vfs: introduce "fs.odirect_enable" sysctl and disable it by
    default
  fixup! ve/sysctl: virtualize printk, hotplug and randomize_va_space
    sysctls
  fixup! ve/sysctl: implement virtualized methods
  fixup! ve/cgroup: Set release_agent_path for root cgroups separately
  fixup! ve/cgroup: Move release_agent from system_wq to per-ve
    workqueues
  fixup! ve/umh: introduce per-container user mode helper macroses and
    functions
  fixup! ve/cgroup: hide non-virtualized cgroups in container
  fixup! ve/cgroup: Set release_agent_path for root cgroups separately
  fixup! ve/cgroup: Add ve_owner field to cgroup
  fixup! cgroup-v2: Add a new API to hide cgroup files per controller
  fixup! /proc/<pid>/vz_latency: Show maximal allocation latency in the
    last 2min.
  fixup! ve/aio: Add a handle to checkpoint/restore AIO context
  fixup! ve/sysfs: relax sanity check for ns equality in
    kernfs_find_ns()
  fixup! ve/kernfs: implement ve-based permissions
  fixup! ve/cred: add ve_capable to check capabilities relative to the
    current VE (v2)
  fixup! net/ip6ip: Consider VE_FEATURE_IPIP on new net creation
  fixup! ve/kthreadd: add per-ve kthreads creation interface
  fixup! ve/fs: support per-CT disable of filesystem sync operations
  fixup! vtty: fix slave peer lockdep annotation
  fixup! connector: add VE SS hook
  fixup! fsopen/devmnt/fs_context: Add vz devmnt feature support to
    fs_context
  fixup! ve: Implement per ve randomize_va_space
  fixup! ve/sunrpc/nfsd: containerize kthreads
  fixup! ve: Add ve cgroup and ve_hook subsys
  fixup! ve/net: thread owning ve through copy_net_ns
  ve: Fix ve.h when !CONFIG_VE
  ve/sched.h: Reorder ve-related functions and ifdef guards
  vmalloc: Rename module parameter variable

 arch/x86/entry/vdso/vma.c     |  6 +--
 arch/x86/kernel/cpuid_fault.c | 64 ++++++++++++++++++-----------
 arch/x86/kernel/process_64.c  |  4 +-
 drivers/connector/connector.c |  5 +++
 drivers/tty/pty.c             |  3 ++
 drivers/tty/tty_io.c          |  2 +-
 fs/aio.c                      |  8 ++++
 fs/binfmt_elf.c               |  2 +
 fs/coredump.c                 |  2 +
 fs/fsopen.c                   |  3 +-
 fs/kernfs/dir.c               |  3 +-
 fs/kernfs/kernfs-internal.h   |  3 +-
 fs/kernfs/kernfs-ve.h         | 10 ++---
 fs/nfs/fs_context.c           |  2 +-
 fs/nfsd/nfs4recover.c         |  4 ++
 fs/nfsd/nfsctl.c              |  2 +-
 fs/proc/base.c                |  2 +-
 fs/super.c                    |  4 ++
 fs/sync.c                     |  2 +
 fs/sysctls.c                  |  2 +
 include/linux/sched.h         | 32 ++++++++++-----
 include/linux/sysctl.h        |  3 +-
 include/linux/umh.h           |  4 +-
 include/linux/ve.h            | 77 ++++++++++++++++++++++++++++++++++-
 include/linux/ve_proto.h      |  2 +-
 include/linux/vzstat.h        |  4 +-
 include/net/net_namespace.h   |  2 -
 kernel/capability.c           |  2 +-
 kernel/cgroup/cgroup-v1.c     | 10 +++--
 kernel/cgroup/cgroup.c        | 12 ++++--
 kernel/kthread.c              |  3 +-
 kernel/module/sysfs.c         |  5 ++-
 kernel/sysctl.c               |  4 ++
 lib/test_vmalloc.c            | 12 +++---
 net/core/net_namespace.c      |  5 ++-
 net/ipv6/ip6_tunnel.c         |  2 +-
 net/sunrpc/rpc_pipe.c         |  2 +-
 net/sunrpc/svc.c              |  6 +++
 38 files changed, 238 insertions(+), 82 deletions(-)

-- 
2.47.1

_______________________________________________
Devel mailing list
[email protected]
https://lists.openvz.org/mailman/listinfo/devel

Reply via email to