Repository navigation
feat: add huge pages check - #26
Merged
Merged
Conversation
Verify hugepagesz/hugepages are set in GRUB_CMDLINE_LINUX_DEFAULT and that the running kernel has allocated the pages. Size (default 2M) and minimum count (default 256) are configurable under systemChecks.memory. Also fix get_config only scanning 20 lines of checksToRun, which made requiredPackages and grubCmdline impossible to disable. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
🤖 Codex ReviewNo findings. |
Print pages in use alongside the agave-validator process's share (matched by exact name so solana-validator-ha is not counted). Usage is informational only since a stopped validator, or one without XDP, legitimately uses none; a warning is shown if no pages are free. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Validators reserve explicit huge pages instead of relying on THP; fleet hosts already set this, but nothing checked it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
🤖 Codex ReviewMedium: health_check.sh:2062: The new |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
hugepagescheck verifies huge pages are both configured and active:GRUB_CMDLINE_LINUX_DEFAULTcontainshugepagesz=<size>(exact) andhugepages=<count>(minimum), matched as whole tokens sohugepages=2560isn't mistaken for256/sys/kernel/mm/hugepages/hugepages-<size>kB/nr_hugepageson the running kernel meets the minimum (catches GRUB edited but not applied / not rebooted). sysfs is used instead of/proc/meminfobecause meminfo only reports the default page size.agave-validator's share (informational, never fails), e.g.INFO: 2M huge pages in use: 32/256 (agave-validator: 64 MB). Warns (does not fail) if the pool is fully used. The process is matched by exact name sosolana-validator-haisn't counted.systemChecks.memory.hugepageSize(default2M) andhugepageCount(default256); toggle withchecksToRun.hugepagesgrubCmdlinenow also requirestransparent_hugepage=never(separate commit d7b01a5, easy to drop)get_configonly scanned 20 lines after"checksToRun", sorequiredPackagesandgrubCmdlinesilently ignoredfalse. It now scans to the block's closing brace.Field data behind the thresholds
--xdp-interfacerunning): 256 reserved, 32 in use, all byagave-validator(64 MB)transparent_hugepage=never, so the reserved pool is the only source of huge pagesTesting
shellcheck -S warningclean;config.jsonvalidates withjqcheck_hugepagesagainst stubbed grub/sysfs/proc files: correct values, lowercase2m, count too low,hugepages=2560, wrong size (1G), params missing, GRUB set but 0 allocated, val-62's real numbers (32/256), pool exhausted, Agave stoppedgrubCmdline: falseis now honored (was ignored before)🤖 Generated with Claude Code