[Devel] [PATCH VZ10 v4 00/44] Fix !CONFIG_VE build
Vasileios Almpanis
vasileios.almpanis at virtuozzo.com
Fri Jun 5 16:12:28 MSK 2026
Apart from from fixup for put_userns (patch 41) that is duplicate LGTM.
Reviewed-by: Vasileios Almpanis <vasileios.almpanis at virtuozzo.com>
On 6/2/26 11:10 PM, Vladimir Riabchun wrote:
> 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(-)
>
--
Best regards, Vasileios Almpanis
Software Developer, Virtuozzo.
More information about the Devel
mailing list