This series improves VMware guest support on x86 by refactoring the hypercall infrastructure and adding better crash diagnostics, along with encrypted guest support for the steal time clock.
The first patch introduces a common vmware_hypercall() backend selected via static calls. It consolidates the existing hypercall mechanisms (backdoor, VMCALL/VMMCALL, and TDX) behind a single interface and selects the optimal implementation at boot. This reduces duplication and simplifies future extensions. Building on top of the new hypercall infrastructure, the next two patches improve post-mortem debugging of VMware guests. They export panic information to the hypervisor by dumping kernel messages to the VM vmware.log on the host and explicitly reporting guest crash event to the hypervisor. The final patch adds support for encrypted guests by ensuring that the shared memory used for the steal time clock is mapped as decrypted before being shared with the hypervisor. This enables steal time accounting to function correctly when guest memory encryption is enabled. Patch overview: 1. x86/vmware: Introduce common vmware_hypercall * Consolidate hypercall implementations behind a common API * Select backend via static_call at boot 2. x86/vmware: Log kmsg dump on panic * Register a kmsg dumper * Export panic logs to the host 3. x86/vmware: Report guest crash to the hypervisor * Register a panic notifier * Notify the hypervisor about guest crashes 4. x86/vmware: Support steal time clock for encrypted guests * Mark shared steal time memory as decrypted early in boot Alexey Makhalov (4): x86/vmware: Introduce common vmware_hypercall() x86/vmware: Log kmsg dump on panic x86/vmware: Report guest crash to the hypervisor x86/vmware: Support steal time clock for encrypted guests arch/x86/include/asm/vmware.h | 276 ++++++++------------ arch/x86/kernel/cpu/vmware.c | 470 +++++++++++++++++++++++++--------- 2 files changed, 463 insertions(+), 283 deletions(-) -- 2.43.7

