This series fixes the handling for optional directives, that are defined
by the igvm spec. Currently, because the optional bit is not masked,
any directive is rejected as unrecognized.
I opened a PR to export the optional bit in the igvm repository and it
has been merged. (https://github.com/microsoft/igvm/pull/121)
I'm picking up `igvm: replace raw uint32_t with igvm library types` [1]
as there is a conflict on the `qigvm_handler` signature between the two patches.
[1] https://lore.kernel.org/qemu-devel/20260525-igvm_types-v1-1-df2907c1815a@redhat.com
Signed-off-by: Luigi Leonardi <leonardi@redhat.com>
---
Changes in v2:
- Introduced two helpers: one to mask and one to check if the optional
bit is set
- Protected `IGVM_VHT_OPTIONAL_BIT` using ifndef as it has been defined
in the IGVM repo https://github.com/microsoft/igvm/pull/121
- Rebased to latest upstream
- Link to v1: https://lore.kernel.org/qemu-devel/20260525-igvm_optional-v1-1-28edc607acfd@redhat.com
---
Luigi Leonardi (2):
igvm: replace raw uint32_t with igvm library types
igvm: fix handling of optional variable header types
backends/igvm.c | 41 +++++++++++++++++++++++++++++++++++------
1 file changed, 35 insertions(+), 6 deletions(-)
---
base-commit: cc329c491768b2d91eb0b0984f3baa0bf805776d
change-id: 20260525-igvm_optional-ca1592b613be
Best regards,
--
Luigi Leonardi <leonardi@redhat.com>