Remove obsolete OpenVZ and VServer support#2010
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughRemoval of OpenVZ and VServer supportThis PR removes dormant OpenVZ and legacy Linux VServer support across configuration, CI, docs, and Linux runtime code. The removed code targeted ancient kernel‑patch–based virtualization and has been unused for years. Key changes
Implementation quality
Commit structure and scope
Notes
Assisted-By: Claude Haiku 4.5 WalkthroughThis PR removes OpenVZ, VServer, and ancient‑VServer support: configure options and AC_DEFINEs were deleted; CI, CodeQL, and DISTCHECK ./configure flags were updated; CTID/VPID/VXID were removed from field enums, struct members, parsing, rendering, sorting, and deletion logic; PROCESS_FLAG_LINUX_CGROUP was added; README and man page adjusted; cppcheck target no longer defines HAVE_OPENVZ. Poem
Comment |
|
FYI: Archlinux builds htop with openvz enabled: https://gitlab.archlinux.org/archlinux/packaging/packages/htop/-/blob/main/PKGBUILD?ref_type=heads#L62 |
|
AFAIT that's basically Arch's packaging default. Maybe a quick breakdown:
Given that Arch only ships mainline kernels as far as I'm aware, this means that having these features active on Arch is mostly a no-op. All the code removed in this PR requires ancient kernel-patch based virtualization stuff, that will simply not work with any recent kernel. |
natoscott
left a comment
There was a problem hiding this comment.
Looks good - there's a spurious left-over CTID definition in pcp/ProcessField.h (never used) - could you remove that as well before merging? Thanks!
There was a problem hiding this comment.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
.github/workflows/ci.yml (1)
57-76:⚠️ Potential issue | 🟠 Major | ⚡ Quick winSet explicit minimal GitHub token permissions
These jobs run with implicit default token permissions. Please set explicit least-privilege permissions (for these build-only jobs,
contents: readis typically enough) to avoid over-scopedGITHUB_TOKENaccess.Suggested change
name: CI on: [ push, pull_request ] +permissions: + contents: readAlso applies to: 78-100, 102-121
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: b496e1a7-e8d7-4b1e-b23b-96002eefa38f
📒 Files selected for processing (10)
.github/workflows/ci.ymlMakefile.amREADME.mdconfigure.achtop.1.inlinux/LinuxProcess.clinux/LinuxProcess.hlinux/LinuxProcessTable.clinux/ProcessField.hpcp/ProcessField.h
💤 Files with no reviewable changes (8)
- htop.1.in
- linux/ProcessField.h
- linux/LinuxProcess.h
- pcp/ProcessField.h
- configure.ac
- linux/LinuxProcess.c
- linux/LinuxProcessTable.c
- README.md
This commit fully removes all of the OpenVZ and Linux VServer legacy that has been dormant and unused for the past few years. The code has been disabled by default for several releases now and has not been in use for quite some time. Assisted-By: Claude Haiku 4.5
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
.github/workflows/ci.yml (1)
57-76:⚠️ Potential issue | 🟠 Major | ⚡ Quick winAdd explicit minimal GitHub token permissions for this workflow.
These jobs still inherit default token permissions because no
permissions:block is set. Please declare least-privilege permissions at workflow level (and override per job only when needed).Proposed hardening patch
name: CI on: [ push, pull_request ] +permissions: + contents: read + env: # Enable format attributes in ncurses headers # Enable fortified memory/string handling CPPFLAGS: -DGCC_PRINTF -DGCC_SCANF -D_FORTIFY_SOURCE=2Also applies to: 78-100, 102-121
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 0b6a92e6-0021-4a2a-abb5-c7ef1f3b6b56
📒 Files selected for processing (10)
.github/workflows/ci.ymlMakefile.amREADME.mdconfigure.achtop.1.inlinux/LinuxProcess.clinux/LinuxProcess.hlinux/LinuxProcessTable.clinux/ProcessField.hpcp/ProcessField.h
💤 Files with no reviewable changes (8)
- README.md
- pcp/ProcessField.h
- htop.1.in
- linux/LinuxProcessTable.c
- linux/LinuxProcess.c
- linux/ProcessField.h
- configure.ac
- linux/LinuxProcess.h
This PR fully removes all of the OpenVZ and Linux VServer legacy that has been dormant and unused for the past few years.
The code has been disabled by default for several releases now and has not been in use for quite some time.
Assisted-By: Claude Haiku 4.5