Page MenuHomeFreeBSD

vmm: Rework snapshotting of CPU-specific per-vCPU data.
ClosedPublic

Authored by jhb on Oct 27 2022, 3:03 PM.
Tags
None
Referenced Files
Unknown Object (File)
Oct 2 2024, 7:31 PM
Unknown Object (File)
Oct 2 2024, 8:18 AM
Unknown Object (File)
Oct 2 2024, 7:23 AM
Unknown Object (File)
Oct 2 2024, 3:47 AM
Unknown Object (File)
Oct 2 2024, 12:33 AM
Unknown Object (File)
Sep 22 2024, 6:43 PM
Unknown Object (File)
Sep 19 2024, 3:06 PM
Unknown Object (File)
Sep 18 2024, 4:58 PM
Subscribers

Details

Summary

Previously some per-vCPU state was saved in vmmops_snapshot and other
state was saved in vmmops_vcmx_snapshot. Consolidate all per-vCPU
state into the latter routine and rename the hook to the more generic
'vcpu_snapshot'. Note that the CPU-independent per-vCPU data is still
stored in a separate blob as well as the per-vCPU local APIC data.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 48022
Build 44909: arc lint + arc unit

Event Timeline

markj added inline comments.
sys/amd64/vmm/amd/svm.c
2597

"i" is gone.

2642

Elsewhere this is done with svm_set_dirty(svm_sc, vcpu, 0xffffffff);. This code is missing VMCB_CACHE_LBR.

This revision is now accepted and ready to land.Nov 2 2022, 2:43 PM
sys/amd64/vmm/amd/svm.c
2642

I might fix that in a separate commit I'll add to the series. This is just a copy/paste of the old code.

This revision now requires review to proceed.Nov 3 2022, 11:48 PM
corvink added a reviewer: manu.
This revision is now accepted and ready to land.Nov 4 2022, 7:20 AM