mshv-ioctls: check capability before using extended property - #337
Merged
Conversation
russell-islam
requested review from
anirudhrb,
gamora12,
liuw,
praveen-pk and
weltling
as code owners
August 26, 2026 18:58
russell-islam
force-pushed
the
muislam/caps-check-syn
branch
from
August 26, 2026 19:12
dc37481 to
b3dd4ac
Compare
anirudhrb
requested changes
Aug 26, 2026
russell-islam
force-pushed
the
muislam/caps-check-syn
branch
from
August 26, 2026 19:21
b3dd4ac to
d36dce1
Compare
anirudhrb
approved these changes
Aug 26, 2026
praveen-pk
reviewed
Aug 26, 2026
The VMM capabilities extended property may return UnknownProperty on older MSHV versions that don't recognize the property code, in addition to AccessDenied. Handle both by returning a zeroed capabilities struct so callers can treat the query as unsupported. Signed-off-by: Muminul Islam <muislam@microsoft.com>
Recent hypervisor versions introduced a new class of hypercalls, HvGetPartitionPropertyEx / HvSetPartitionPropertyEx, that expose so-called "extended" partition properties which do not fit the fixed 64-bit layout of the classic HvGetPartitionProperty. One such property is AssignableSyntheticProcessorFeatures, which advertises the set of synthetic processor feature bits the hypervisor is willing to let the VMM configure on a guest partition. Whether the running hypervisor supports these extended properties (and the AssignableSyntheticProcessorFeatures property in particular) is itself surfaced through the VmmCapabilities partition property. Query that capability first and only fetch the extended property and set the matching synthetic feature bit when the hypervisor advertises support for it; otherwise fall back to the classic default mask. Signed-off-by: Muminul Islam <muislam@microsoft.com>
russell-islam
force-pushed
the
muislam/caps-check-syn
branch
from
August 26, 2026 22:23
d36dce1 to
a4c3599
Compare
russell-islam
enabled auto-merge (rebase)
August 27, 2026 01:35
liuw
approved these changes
Aug 27, 2026
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.
With new addressable synthetic feature check fails to boot the VM on older MSHV where the property is not available. This PR checks capability before checking such feature.