Re: [PATCH 1/3] mseal sysmap: Add mseal_system_mappings= boot parameter
From: Chris Down
Date: Wed Oct 28 2026 - 01:53:00 EST
Hi Jeff,
Thanks for the review!
Jeff Xu writes:
Could we please keep the test coverage for the unsealed [vdso] case and
avoid unconditionally skipping whenever [vdso] is unsealed?
There are two regressions I'd love for us to still be able to catch:
1. Kernel or config regressions when sealing is expected to be on:
Yeah agreed. With the cleanup it matters even more I think because when sealing is set in one place the most likely regression is probably one that unseals everything at once.
2. Regressions in the new `no_mseal_sys_mappings` boot parameter itself:
In v2 I can check /proc/cmdline for no_mseal_sys_mappings to do that.
Lorenzo, I think that also may inform your question about whether checking for the disabled case is redundant, right?
When booted with `no_mseal_sys_mappings` (or when unsealed), running
the assertions in Patch 3 (verifying system mappings have no `sl` flag
and that `munmap()` / `mremap()` -- and ideally `mprotect(PROT_READ |
PROT_WRITE)` -- on [vdso] succeed) directly verifies that the boot
parameter works and doesn't regress.
Sounds good.
or keep strict failure as an option (e.g. `./sysmap_is_sealed` fails if
unsealed without the boot param, while `run_vmtests.sh` passes a flag
like `--allow-disabled` when `CONFIG_MSEAL_SYSTEM_MAPPINGS` may not be
enabled), so CI environments that expect sealing still catch a broken
seal.
I like this and I think we can do it without adding some of the complexity that Lorenzo was not so happy about:
- Have check_sealed skip as usual when [vdso] isn't sealed and param is not set
- A new test, say expect_sealed, fails in the same case
- run_vmtests runs with -T expect_sealed when CONFIG_MSEAL_SYSTEM_MAPPINGS=y
That should be pretty minimal. Lorenzo, Jeff, how does that sound?